资讯动态

OpenAI Agents SDK 如何用 run_demo_loop 在终端交互式测试智能体

发布时间:2026/9/13 18:09:19 来源:尧图企业网站定制
OpenAI Agents SDK 如何用 run_demo_loop 在终端交互式测试智能体【免费下载链接】openai-agents-pythonA lightweight, powerful framework for multi-agent workflows项目地址: https://gitcode.com/GitHub_Trending/op/openai-agents-python写好一个Agent后最常见的验证方式是逐轮输入、观察它的回复是否符合预期。OpenAI Agents SDK 内置了run_demo_loop这个 REPL 工具专门用于在终端中快速、交互式地测试智能体的行为不需要自己拼装Runner.run_streamed和输入循环。前提是本地已安装openai-agents包并且配置了 OpenAI API key。准备工作按 Quickstart 的说法只需做一次环境搭建之后每个终端会话激活虚拟环境并确认 API key 即可。创建项目和虚拟环境只需一次mkdir my_project cd my_project python -m venv .venv在 macOS 或 Linux 上激活source .venv/bin/activateWindows 上则使用.venv\Scripts\activate。安装 SDKpip install openai-agents设置 API keysk-...替换为你自己的 key该设置只对当前终端会话生效export OPENAI_API_KEYsk-...Windows PowerShell 中对应$env:OPENAI_API_KEY sk-...Windows 命令提示符中对应set OPENAI_API_KEYsk-...。编写并运行交互式测试脚本新建一个脚本内容如下来自 docs/repl.md 的官方示例import asyncio from agents import Agent, run_demo_loop async def main() - None: agent Agent(nameAssistant, instructionsYou are a helpful assistant.) await run_demo_loop(agent) if __name__ __main__: asyncio.run(main())用python 脚本名.py运行后run_demo_loop会启动一个交互式聊天会话持续提示你输入提示符为空行直接跳过在多轮之间保留完整的对话历史智能体知道之前讨论过什么默认以流式方式实时输出模型响应。结束会话有三种方式输入quit或exit后按 Enter或者使用Ctrl-D快捷键。判断会话是否工作正常文档没有给出固定的成功日志可以按run_demo_loop描述的行为逐项对照运行脚本后终端出现输入提示输入一句话能收到回复回复是边生成边打印的流式而不是一次性整段输出换一轮再提问时智能体仍能引用上一轮的上下文说明对话历史在轮次之间被保留了输入quit、exit或按Ctrl-D后循环正常退出程序结束。按需调整 run_demo_loop 的参数run_demo_loop的完整签名见 src/agents/repl.pyasync def run_demo_loop( agent: Agent[Any], *, stream: bool True, context: TContext | None None, max_turns: int | None DEFAULT_MAX_TURNS, ) - None:各参数的用途和适用条件参数说明agent要运行的起始智能体stream是否流式输出智能体响应默认Truecontext传给 runner 的额外上下文信息max_turnsrunner 允许迭代的最大轮数默认为DEFAULT_MAX_TURNS即10定义见 src/agents/run_config.py传None表示禁用轮数限制如果调试的是带工具的智能体建议保持默认streamTrue这样可以在响应流中直接看到工具调用的过程。观察工具调用和 handoff流式模式下除了文本增量run_demo_loop还会打印几个便于观察的控制台标记见 src/agents/repl.py智能体发起工具调用时打印[tool called]工具返回结果时打印[tool output: ...]发生 handoff、当前智能体被切换时打印[Agent updated: ...]。发生 handoff 后会话会以切换后的智能体result.last_agent继续并把已有消息转成下一轮的输入所以多智能体路由的行为也能在同一个终端会话里连续观察到。适用范围run_demo_loop的定位是快速手动测试和调试对话历史只在当前进程内保留退出后不会持久化。它不用于生产运行需要把历史交给 SDK 持久保存时应改用 sessions 相关机制本文不涉及。【免费下载链接】openai-agents-pythonA lightweight, powerful framework for multi-agent workflows项目地址: https://gitcode.com/GitHub_Trending/op/openai-agents-python创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价