国产强奸视频网站|浮力草草影院91|亚洲一区欧美二区|国产精品美女一区|超碰人人操97碰|丁香婷婷电影网址|亚洲伊人av在线|亚州一线在线观看|日韩超清无码69|无码人妻九十九区

400-8166108
行業(yè)動(dòng)態(tài)
在這里,聆聽大咖的聲音
OpenAI定義Agent新范式:構(gòu)建自動(dòng)化系統(tǒng)的模板
由 辰智信息 發(fā)布于2025-03-17

隨著人工智能技術(shù)的飛速發(fā)展,AI已經(jīng)從簡(jiǎn)單的文本生成和圖像識(shí)別,逐漸走向更復(fù)雜的任務(wù)自動(dòng)化。今天,我們來(lái)聊聊一個(gè)令人興奮的新進(jìn)展——OpenAI推出的一系列新工具和API,旨在幫助開發(fā)者和企業(yè)更輕松地構(gòu)建高效、可靠的智能代理(Agents)。

Agent新工具

■  https://openai.com/index/new-tools-for-building-agents/   智能代理是一種能夠獨(dú)立完成用戶任務(wù)的系統(tǒng)。它們可以在沒有人工干預(yù)的情況下,自動(dòng)執(zhí)行復(fù)雜的多步驟任務(wù),比如處理客戶支持請(qǐng)求、自動(dòng)化數(shù)據(jù)輸入,甚至是進(jìn)行市場(chǎng)研究。然而,將AI模型的能力轉(zhuǎn)化為實(shí)際可用的代理系統(tǒng)并非易事,這往往需要大量的提示迭代和自定義邏輯,而且缺乏足夠的可視化支持和內(nèi)置功能。

為了解決這些挑戰(zhàn),OpenAI推出了一系列新的API和工具,專門用于簡(jiǎn)化智能代理的開發(fā)過程。這些工具不僅優(yōu)化了代理的核心邏輯和交互方式,還顯著降低了開發(fā)門檻。

(一)新工具的核心:Responses API Responses API是OpenAI為構(gòu)建智能代理推出的新API基礎(chǔ)。它結(jié)合了Chat Completions API的簡(jiǎn)潔性和Assistants API的工具使用能力,能夠讓開發(fā)者更靈活地利用OpenAI的內(nèi)置工具來(lái)構(gòu)建代理。 這個(gè)API的核心優(yōu)勢(shì)在于其簡(jiǎn)潔性和多功能性。開發(fā)者可以通過一個(gè)API調(diào)用,解決復(fù)雜的任務(wù),同時(shí)結(jié)合多種工具和模型的能力。例如,開發(fā)者可以使用Responses API中的Web搜索工具,快速獲取最新的網(wǎng)絡(luò)信息,或者利用文件搜索工具從大量文檔中提取相關(guān)信息。 此外,Responses API還引入了許多改進(jìn),比如統(tǒng)一的項(xiàng)目化設(shè)計(jì)、更簡(jiǎn)單的多態(tài)性、直觀的流式事件,以及SDK助手(如response.output_text)來(lái)輕松訪問模型的文本輸出。

(二)為開發(fā)者設(shè)計(jì)的內(nèi)置工具 為了進(jìn)一步簡(jiǎn)化開發(fā)過程,OpenAI在Responses API中引入了多種內(nèi)置工具,包括Web搜索、文件搜索和計(jì)算機(jī)使用工具。 1、Web搜索工具 Web搜索工具能夠讓開發(fā)者快速獲取最新、最相關(guān)的網(wǎng)絡(luò)信息。它支持清晰的引用鏈接,方便用戶深入了解信息來(lái)源。例如,Hebbia利用這一工具幫助金融和法律專業(yè)人士從海量數(shù)據(jù)中提取有價(jià)值的信息,顯著提升了分析的準(zhǔn)確性和相關(guān)性。 2、文件搜索工具 文件搜索工具則專注于從大量文檔中提取相關(guān)信息。它支持多種文件類型,優(yōu)化查詢結(jié)果,并提供自定義排序功能。例如,Navan利用這一工具在其AI驅(qū)動(dòng)的旅行代理中快速提供精確答案,顯著提升了客戶支持的效率。 3、計(jì)算機(jī)使用工具 計(jì)算機(jī)使用工具則更進(jìn)一步,它允許開發(fā)者通過API直接操作計(jì)算機(jī)任務(wù),比如自動(dòng)化瀏覽器工作流或在遺留系統(tǒng)中執(zhí)行數(shù)據(jù)輸入任務(wù)。這一工具基于OpenAI的Computer-Using Agent(CUA)模型,能夠在沒有API支持的情況下操作復(fù)雜的軟件系統(tǒng)

Agents SDK:簡(jiǎn)化工作流

■  https://platform.openai.com/docs/guides/agents   除了核心API,OpenAI還推出了Agents SDK,這是一個(gè)開源的開發(fā)工具包,用于簡(jiǎn)化多代理工作流的編排。 OpenAI為構(gòu)建智能代理提供了一套豐富的組件,這些組件涵蓋了模型、工具、知識(shí)與記憶、安全防護(hù)(Guardrails)和編排(Orchestration)等多個(gè)領(lǐng)域。通過這些組件,開發(fā)者可以輕松構(gòu)建出功能強(qiáng)大的智能代理。

(一)模型(Models) 模型是智能代理的核心,負(fù)責(zé)推理、決策和處理多種模態(tài)的數(shù)據(jù)。OpenAI提供了多種模型,每種都有其獨(dú)特的優(yōu)勢(shì): o1和o3-mini:適合長(zhǎng)期規(guī)劃、復(fù)雜任務(wù)和推理。 GPT-4.5:適合執(zhí)行代理任務(wù)。 GPT-4o:在代理能力和延遲之間取得了良好的平衡。 GPT-4o-mini:適合低延遲任務(wù)。 這些模型不僅具備高智能,還能調(diào)用工具、理解多種模態(tài)數(shù)據(jù),并支持實(shí)時(shí)對(duì)話。

(二)工具(Tools) 工具是智能代理與世界交互的接口。OpenAI提供了多種工具,幫助代理完成任務(wù): 函數(shù)調(diào)用(Function calling):與開發(fā)者定義的代碼交互。 Web搜索:從網(wǎng)絡(luò)獲取最新信息。 文件搜索:在文檔中進(jìn)行語(yǔ)義搜索。 計(jì)算機(jī)使用:理解和控制計(jì)算機(jī)或?yàn)g覽器。 這些工具讓智能代理能夠更高效地完成任務(wù)。

(三)知識(shí)與記憶(Knowledge & Memory) 知識(shí)和記憶讓智能代理能夠存儲(chǔ)、檢索和利用超出其初始訓(xùn)練數(shù)據(jù)的信息。OpenAI的向量存儲(chǔ)(Vector stores)和嵌入(Embeddings)技術(shù),讓代理能夠語(yǔ)義化搜索文檔,并在運(yùn)行時(shí)檢索相關(guān)信息。這些技術(shù)不僅支持動(dòng)態(tài)知識(shí)解決方案,還為代理提供了長(zhǎng)期記憶。

(四)安全防護(hù)(Guardrails) 安全防護(hù)是智能代理在生產(chǎn)環(huán)境中安全運(yùn)行的關(guān)鍵。OpenAI提供了多種工具來(lái)確保代理的行為安全、一致且符合預(yù)期: 輸入防護(hù)(Input Guardrails):在用戶輸入階段進(jìn)行檢查和驗(yàn)證。 輸出防護(hù)(Output Guardrails):在代理輸出階段進(jìn)行檢查和驗(yàn)證。 內(nèi)容過濾(Moderation API):自動(dòng)過濾不安全內(nèi)容。 指令優(yōu)先級(jí)(Instruction Hierarchy):優(yōu)先執(zhí)行開發(fā)者定義的提示,防止代理行為失控。

(五)編排(Orchestration) 編排是構(gòu)建智能代理的全過程。OpenAI提供了以下工具來(lái)幫助開發(fā)者構(gòu)建、部署、監(jiān)控和優(yōu)化智能代理: Agents SDK:快速構(gòu)建代理,處理對(duì)話流,并強(qiáng)制執(zhí)行安全防護(hù)。 追蹤(Tracing):實(shí)時(shí)觀察代理行為,調(diào)試問題并獲取洞察。 評(píng)估與優(yōu)化(Evaluations & Fine-tuning):測(cè)量代理性能,識(shí)別改進(jìn)點(diǎn)并優(yōu)化。

(六)為什么選擇OpenAI Agents SDK? OpenAI Agents SDK的設(shè)計(jì)遵循兩個(gè)核心原則: 1、功能強(qiáng)大但易于學(xué)習(xí):提供足夠的功能來(lái)滿足實(shí)際需求,同時(shí)保持簡(jiǎn)潔,易于快速上手。 2、高度可定制:雖然開箱即用,但開發(fā)者可以根據(jù)需要對(duì)每個(gè)環(huán)節(jié)進(jìn)行定制。

OpenAI Agents SDK 特性

■  https://openai.github.io/openai-agents-python/agents/   pip install openai-agents

from agents import Agent, Runner

# 創(chuàng)建一個(gè)代理
agent = Agent(name="Assistant", instructions="You are a helpful assistant")

# 運(yùn)行代理并獲取結(jié)果
result = Runner.run_sync(agent, "Write a haiku about recursion in programming.")
print(result.final_output)

SDK的主要特性包括:

1、Agent循環(huán):內(nèi)置的循環(huán)機(jī)制,自動(dòng)處理工具調(diào)用、將結(jié)果發(fā)送給LLM(大型語(yǔ)言模型),并在LLM完成任務(wù)后結(jié)束循環(huán)。

2、Python優(yōu)先:利用Python的內(nèi)置語(yǔ)言特性來(lái)編排和連接代理,無(wú)需學(xué)習(xí)新的抽象概念。

3、任務(wù)交接(Handoffs):允許代理將特定任務(wù)委托給其他代理,實(shí)現(xiàn)復(fù)雜的任務(wù)協(xié)調(diào)。

4、安全防護(hù)(Guardrails):在代理運(yùn)行時(shí)并行執(zhí)行輸入驗(yàn)證和檢查,如果檢查失敗,可以提前終止任務(wù)。

5、函數(shù)工具(Function Tools):將任何Python函數(shù)轉(zhuǎn)換為工具,自動(dòng)生成JSON模式,并通過Pydantic進(jìn)行驗(yàn)證。

6、追蹤(Tracing):內(nèi)置的追蹤功能,可以可視化、調(diào)試和監(jiān)控工作流,同時(shí)支持OpenAI的評(píng)估、微調(diào)和蒸餾工具。 工具是代理可以調(diào)用的功能,用于完成任務(wù)。例如,一個(gè)代理可以調(diào)用一個(gè)函數(shù)來(lái)獲取天氣信息。

上下文(Context)

代理的上下文是一個(gè)依賴注入工具,它允許你在代理運(yùn)行時(shí)傳遞任何Python對(duì)象。上下文可以包含用戶信息、狀態(tài)或其他依賴項(xiàng)。例如:

Python復(fù)制

from dataclasses import dataclass


@dataclass
class UserContext:
uid: str
is_pro_user: bool

agent = Agent[UserContext](
name="User-specific agent",
instructions="Help the user with their questions",
)

輸出類型(Output Types)

默認(rèn)情況下,代理的輸出是純文本。如果你希望代理輸出特定類型的數(shù)據(jù),可以使用output_type參數(shù)。例如,你可以使用Pydantic對(duì)象來(lái)定義輸出類型:

from pydantic import BaseModel

from agents import Agent

class CalendarEvent(BaseModel):
name: str
date: str
participants: list[str]

agent = Agent(
name="Calendar extractor",
instructions="Extract calendar events from text",
output_type=CalendarEvent,
)

任務(wù)交接(Handoffs) 任務(wù)交接允許代理將任務(wù)委托給其他代理。這在不同代理專注于不同任務(wù)的場(chǎng)景中非常有用。例如,一個(gè)客戶支持應(yīng)用可以有多個(gè)代理,分別處理訂單狀態(tài)、退款和常見問題等。你可以通過handoffs參數(shù)指定這些代理:

from agents import Agent


booking_agent = Agent(name="Booking agent")
refund_agent = Agent(name="Refund agent")

triage_agent = Agent(
name="Triage agent",
instructions="Help the user with their questions. If they ask about booking, handoff to the booking agent. If they ask about refunds, handoff to the refund agent.",
handoffs=[booking_agent, refund_agent],
)

動(dòng)態(tài)指令(Dynamic Instructions) 在某些情況下,你可能需要根據(jù)上下文動(dòng)態(tài)生成指令。你可以通過一個(gè)函數(shù)來(lái)實(shí)現(xiàn)這一點(diǎn)。例如:


def dynamic_instructions(context, agent):

return f"The user's name is {context.context.name}. Help them with their questions."

agent = Agent(
name="Triage agent",
instructions=dynamic_instructions,
)

生命周期事件(Lifecycle Events) 你可以在代理的生命周期中插入自定義邏輯。例如,你可以在代理開始運(yùn)行時(shí)記錄日志,或者在代理結(jié)束時(shí)清理資源。通過繼承AgentHooks類并重寫相關(guān)方法,你可以實(shí)現(xiàn)這些功能:

from agents.lifecycle import AgentHooks


class MyAgentHooks(AgentHooks):
async def on_start(self):
print("Agent is starting")

async def on_end(self):
print("Agent has finished")

安全防護(hù)(Guardrails) 安全防護(hù)是代理運(yùn)行時(shí)并行執(zhí)行的檢查和驗(yàn)證機(jī)制。你可以通過安全防護(hù)來(lái)過濾用戶輸入,確保代理不會(huì)執(zhí)行惡意任務(wù)。例如,你可以設(shè)置一個(gè)安全防護(hù)來(lái)檢測(cè)用戶是否在請(qǐng)求代理幫助他們做數(shù)學(xué)作業(yè):

from agents import Agent, input_guardrail

from pydantic import BaseModel

class MathHomeworkOutput(BaseModel):
is_math_homework: bool
reasoning: str

@input_guardrail
asyncdef math_guardrail(ctx, agent, input):
result = await Runner.run(guardrail_agent, input, context=ctx.context)
return GuardrailFunctionOutput(
output_info=result.final_output,
tripwire_triggered=result.final_output.is_math_homework,
)

agent = Agent(
name="Customer support agent",
instructions="Help customers with their questions",
input_guardrails=[math_guardrail],
)

克隆代理(Cloning Agents) 你可以通過clone()方法復(fù)制一個(gè)代理,并根據(jù)需要修改其屬性。例如:

pirate_agent = Agent(

name="Pirate",
instructions="Write like a pirate",
model="o3-mini",
)

robot_agent = pirate_agent.clone(
name="Robot",
instructions="Write like a robot",
)


請(qǐng)?zhí)峁┱鎸?shí)信息以便我們與您聯(lián)系
公司信息
聯(lián)系人信息
留言及疑問