3.4 K Start OpenAI 开源Agent

B站影视 欧美电影 2025-03-19 10:06 1

摘要:OpenAI Agents是一个用于构建智能代理应用程序的软件开发工具包(SDK),它基于OpenAI的大型语言模型(LLM),旨在通过简单的抽象和强大的功能,使开发者能够轻松创建复杂的智能代理应用。

OpenAI Agents是一个用于构建智能代理应用程序的软件开发工具包(SDK),它基于OpenAI的大型语言模型(LLM),旨在通过简单的抽象和强大的功能,使开发者能够轻松创建复杂的智能代理应用。

核心概念

智能代理(Agents):配备有指令和工具的大型语言模型,能够执行特定的任务。
交接(Handoffs):允许智能代理将特定任务委托给其他智能代理的功能。
护栏(Guardrails):用于验证输入到智能代理中的数据,确保其符合预期的格式和内容。

主要功能

智能代理循环(agent Loop):内置的循环机制,负责调用工具、将结果发送到LLM,并持续运行直到LLM完成任务。
Python优先(Python-first):利用Python的内置语言特性来编排和链接智能代理,无需学习新的抽象概念。
交接(Handoffs):用于协调和委托多个智能代理之间的任务。
护栏(Guardrails):在智能代理运行的同时并行执行输入验证和检查,如果检查失败会提前中断流程。
函数工具(Function Tools):将任何Python函数转换为工具,具有自动模式生成和使用Pydantic进行验证的功能。
追踪(Tracing):内置的追踪功能,允许可视化、调试和监控工作流,以及使用OpenAI的一套评估、微调和蒸馏工具。

优势

易用性:具有足够的功能使其值得使用,但抽象层次足够少,使得学习曲线平缓,能够快速上手。
灵活性:开箱即用的效果很好,但用户可以根据需要自定义每个环节,满足特定的应用需求。
可视化与调试:内置的追踪功能为开发者提供了直观的工作流可视化,便于调试和优化智能代理的行为。
OpenAI-Agent实战一个简单的运行Agent的例子from agents import Agent, Runneragent = Agent(name="Assistant", instructions="You are a helpful assistant")result = Runner.run_sync(agent, "Write a haiku about recursion in programming.")Handoffs:一次性将说不同语言的任务委托给两个Agentfrom agents import Agent, Runnerimport asynciospanish_agent = Agent( name="Spanish agent", instructions="You only speak Spanish.",)english_agent = Agent( name="English agent", instructions="You only speak English",)triage_agent = Agent( name="Triage agent", instructions="Handoff to the appropriate agent based on the language of the request.", handoffs=[spanish_agent, english_agent],)async def main: result = await Runner.run(triage_agent, input="Hola, ¿cómo estás?") print(result.final_output)if __name__ == "__main__": asyncio.run(main) with my outfit so far?",)调用工具import asynciofrom agents import Agent, Runner, function_tool@function_tooldef get_weather(city: str) -> str: return f"The weather in {city} is sunny."agent = Agent( name="Hello world", instructions="You are a helpful agent.", tools=[get_weather],)async def main: result = await Runner.run(agent, input="What's the weather in Tokyo?") print(result.final_output) # The weather in Tokyo is sunny.if __name__ == "__main__": asyncio.run(main)

来源:莱娜探长

相关推荐