import json import openai class ContentAgent: def __init__(self, api_key=None): if api_key: openai.api_key = api_key def generate_content(self, outline): if not openai.api_key: return self._mock_content(outline) try: response = openai.ChatCompletion.create( model="gpt-4", messages=[ {"role": "system", "content": "You create detailed workshop content from outlines"}, {"role": "user", "content": ( f"Create workshop content from this outline: {json.dumps(outline)}. " "Include: 1) Detailed scripts, 2) Speaker notes, 3) 3 quiz questions per module, " "4) Hands-on exercises. Output as JSON." )} ] ) return json.loads(response.choices[0].message.content) except: return self._mock_content(outline) def _mock_content(self, outline): return { "workshop_title": f"Mastering {outline['topic']}", "modules": [ { "title": module["title"], "script": f"Comprehensive script for {module['title']}...", "speaker_notes": f"Key talking points: {', '.join(module['learning_points'])}", "exercises": [f"Exercise about {point}" for point in module["learning_points"]], "quiz": [ { "question": f"Question about {module['title']}", "options": ["A", "B", "C", "D"], "answer": "A" } ] } for module in outline["modules"] ] }