Build multi-agent AI systems with OpenAI Agents SDK. Create, orchestrate, and manage AI agents with tools, handoffs, guardrails, and tracing. Supports 100+ LLMs via LiteLLM.
使用 OpenAI Agents SDK 构建多 Agent AI 系统。轻量级但强大的框架,支持 Agent 协作、工具调用、交接机制和追踪调试。
当用户需要:
python
from agents import Agent
agent = Agent(
name=Assistant,
instructions=You are a helpful assistant,
tools=[...], # 可选:工具列表
handoffs=[...], # 可选:可交接的其他 agent
model=gpt-4, # 可选:模型选择
)
python
from agents import function_tool
from typing import Annotated
@function_tool
def get_weather(city: Annotated[str, 城市名称]) -> str:
获取指定城市的天气信息
return f{city}:晴朗,20°C
agent = Agent(tools=[get_weather])
python
from agents import Runner
python
french_agent = Agent(name=French, instructions=只说法语)
spanish_agent = Agent(name=Spanish, instructions=只说西班牙语)
triage_agent = Agent(
name=Triage,
instructions=根据语言分配给合适的 agent,
handoffs=[frenchagent, spanishagent],
)
python
translator = Agent(name=Translator, ...)
orchestrator = Agent(
name=Orchestrator,
tools=[
translator.as_tool(
tool_name=translate,
tool_description=翻译文本
)
],
)
python
from agents import input_guardrail, GuardrailFunctionOutput
@input_guardrail
def check_input(ctx, agent, input):
if 敏感词 in input:
return GuardrailFunctionOutput(
output_info=包含敏感内容,
tripwire_triggered=True
)
return GuardrailFunctionOutput(
output_info=验证通过,
tripwire_triggered=False
)
agent = Agent(inputguardrails=[checkinput])
python
from agents import trace
with trace(我的工作流):
result = await Runner.run(agent, 任务)
python
from agents import Session
session = Session()
result1 = await Runner.run(agent, 问题1, session=session)
result2 = await Runner.run(agent, 问题2, session=session) # 记住问题1的上下文
bash
bash
export OPENAIAPIKEY=sk-your-api-key-here
python
import asyncio
from agents import Agent, Runner
async def main():
agent = Agent(
name=Assistant,
instructions=You are a helpful assistant,
)
result = await Runner.run(agent, Write a haiku about programming.)
print(result.final_output)
if name == main:
asyncio.run(main())
python
sales_agent = Agent(name=Sales, instructions=处理销售相关咨询)
support_agent = Agent(name=Support, instructions=处理技术支持)
technical_agent = Agent(name=Technical, instructions=处理技术问题)
triage_agent = Agent(
name=Triage,
instructions=根据用户请求类型分配给合适的 agent,
handoffs=[salesagent, supportagent, technical_agent],
)
python
researcher = Agent(name=Researcher, instructions=搜索和收集信息)
analyst = Agent(name=Analyst, instructions=分析数据)
writer = Agent(name=Writer, instructions=撰写报告)
orchestrator = Agent(
name=Orchestrator,
instructions=协调各个专业 agent 完成复杂任务,
tools=[
researcher.astool(toolname=research, tool_description=搜索信息),
analyst.astool(toolname=analyze, tool_description=分析数据),
writer.astool(toolname=write, tool_description=撰写内容),
],
)
python
import asyncio
async def parallel_workflow():
results = await asyncio.gather(
Runner.run(agent1, input),
Runner.run(agent2, input),
Runner.run(agent3, input),
)
return results
python
from agents import Agent, Runner
agent = Agent(
name=Assistant,
instructions=帮助用户做决策,在重要决策前请求确认,
)
SDK 支持通过 LiteLLM 接入 100+ LLM。
python
from agents import Agent
from openai import AsyncOpenAI
agent = Agent(
name=ClaudeAgent,
model=claude-3-opus-20240229,
modelsettings={client: claudeclient}
)
python
from agents import Agent, Runner
from agents.voice import VoiceAgent
voice_agent = VoiceAgent(
name=VoiceAssistant,
instructions=You are a helpful voice assistant,
)
python
from agents import Agent
from agents.mcp import MCPServer
mcp_server = MCPServer(path/to/mcp/config)
agent = Agent(
name=MCPAgent,
mcpservers=[mcpserver],
)
python
from pydantic import BaseModel, Field
class WeatherOutput(BaseModel):
city: str = Field(description=城市名称)
temperature: int = Field(description=温度(摄氏度))
conditions: str = Field(description=天气状况)
@function_tool
def get_weather(city: str) -> WeatherOutput:
return WeatherOutput(city=city, temperature=20, conditions=晴朗)
python
@function_tool
def calculate(
expression: Annotated[str, 数学表达式,如 2+2 或 sqrt(16)]
) -> float:
计算数学表达式的结果。
支持基本运算、三角函数、对数等。
return eval(expression)
python
from agents import trace
with trace(客户服务流程):
result = await Runner.run(customerserviceagent, user
该技能支持在以下平台通过对话安装:
帮我安装 SkillHub 和 openai-agent-sdk-1776204969 技能
设置 SkillHub 为我的优先技能安装源,然后帮我安装 openai-agent-sdk-1776204969 技能
skillhub install openai-agent-sdk-1776204969
文件大小: 10.64 KB | 发布时间: 2026-4-17 15:36