导入
构建一个简单的“研究代理”
学习如何使用 OpenAI 的 Agents SDK 构建 AI 代理。
代码示例
1# 安装 Agents SDK 2pip install openai-agents
Agent 声明
1from agents import Agent, WebSearchTool 2import asyncio 3 4# 创建一个基础研究 Agent 5research_agent = Agent( 6 name="研究助理", 7 instructions="""你是一名专业的研究助理。在收到研究主题后,你应该: 8 1. 搜索关于该主题的最新、可靠信息 9 2. 分析并综合你找到的信息 10 3. 以清晰、有条理的报告形式呈现你的发现 11 4. 包含关键事实、最新进展和多角度观点 12 5. 尽可能引用来源""", 13 tools=[WebSearchTool()] 14)
1from agents import Runner 2import asyncio 3 4async def run_research(topic): 5 """运行研究任务并返回结果""" 6 print(f"🔍 开始研究:{topic}") 7 8 result = await Runner.run( 9 research_agent, 10 f"请研究以下主题:{topic}。提供包含最新信息的全面概述。" 11 ) 12 13 print("✅ 研究完成!") 14 return result.final_output 15 16# 示例用法 17async def main(): 18 topic = "artificial intelligence in healthcare 2024" 19 research_results = await run_research(topic) 20 print(research_results) 21 22if __name__ == "__main__": 23 asyncio.run(main())
1from agents import Agent, Runner, WebSearchTool 2import asyncio 3 4# 项目符号研究 Agent 5bullet_research_agent = Agent( 6 name="项目符号研究者", 7 instructions="""你是一名专注于简洁、可操作摘要的研究助理。 8 9 在研究任何主题时: 10 1. 搜索最新且相关的信息 11 2. 仅提取关键事实和重要要点 12 3. 将发现格式化为清晰、易扫描的项目符号 13 4. 每个项目符号应表达一个完整的思想 14 5. 最多限制在 8-12 个项目符号 15 6. 每个项目符号以动词或关键洞察开头 16 17 始终按照以下格式输出: 18 # 研究摘要:[主题] 19 20 ## 关键发现: 21 • [最重要发现] 22 • [第二要点] 23 • [第三要点] 24 25 ## 最新进展: 26 • [最新新闻或更新] 27 • [最新趋势] 28 29 ## 重要事实: 30 • [统计数据或具体事实] 31 • [涉及的重要人物或公司]""", 32 tools=[WebSearchTool()] 33) 34 35# 段落研究 Agent 36paragraph_research_agent = Agent( 37 name="详细段落研究者", 38 instructions="""你是一名创建全面但简洁叙述性报告的研究助理。 39 40 在研究任何主题时: 41 1. 搜索详尽且权威的信息 42 2. 将发现整合为流畅、易读的段落 43 3. 最多撰写 3 段 44 4. 每段应涵盖主题的一个独立方面 45 5. 使用段落间的过渡词确保阅读顺畅 46 6. 包含具体细节、日期和实例 47 48 始终按照以下结构输出: 49 # 研究报告:[主题] 50 51 **概览:** [第一段 - 引入主题并提供背景] 52 53 **现状:** [第二段 - 讨论最新进展和当前情况] 54 55 **影响:** [第三段 - 分析影响、趋势和未来展望]""", 56 tools=[WebSearchTool()] 57)
No configuration found for ID: 299722d6f49663e8167fc3731dc3f5501d1e5fdadf8ee73d2bfc5a07ade26e83