OpenAI Agents SDK 的追蹤系統可讓 AI 工作流程一目了然,擷取重要事件,協助開發人員有效監控與除錯應用程式。
什麼是 OpenAI Agents SDK?
OpenAI Agents SDK 是一套 Python 工具組,可簡化 AI 代理程式的開發。這是 OpenAI SWARM 專案進化而來的生產就緒版本,提供建構智慧、協作且安全的 AI 系統所需的功能。其核心是基於 LLM 的代理程式,可透過特定指令與工具進行設定,支援自訂角色,並相容於 OpenAI 模型(o1、o3-mini、gpt-4o)以及採用 OpenAI 相容 API 的第三方模型。
OpenAI Agents SDK 的主要功能
工具與功能擴充:
- 函式呼叫:使用
@function_tool裝飾器將 Python 函式轉換為工具,並自動產生 schema 與進行 Pydantic 驗證。 - 內建代理程式迴圈:處理工具呼叫、結果反饋與任務迴圈,實現代理程式與 LLM 之間的無縫互動。
- 任務交接:允許代理程式將任務委派給其他專門的代理程式,實現多代理協作。
安全與監控機制:
- 護欄:輸入篩選可防止有害內容,輸出驗證則確保回應品質與適當性。
- 追蹤工具:內建追蹤功能可視化並監控整個代理流程,有助於除錯與最佳化。
開發人員友善功能:
- Python 原生方法:利用 Python 語言特性進行代理程式編排與鏈接,減少學習新抽象概念的負擔。
- 高度可自訂:提供自訂工具、結構化輸出類型以及外部 LLM 提供者整合能力。
- 輕量設計:簡單但功能強大的基本元素,學習曲線極低。
OpenAI Agents SDK 的優勢
開發效率
- 簡化設定流程,加速代理應用程式開發,降低 AI 代理開發門檻。
強化系統能力:
- 支援複雜任務執行與高效多代理協作。
- 建立專門的協作系統以解決複雜問題。
- 整合外部 LLM 模型以獲得更大彈性。
安全性與可靠性:
- 護欄確保 AI 互動安全。
- 提升 AI 代理系統的可靠性與行為適當性。
- 簡化 AI 代理應用程式進入生產環境的準備工作。
分析與最佳化:
- 追蹤系統深入洞察代理行為。
- 改善使用者模式分析與瓶頸識別。
- 強化除錯與工作流程最佳化能力。
OpenAI Agents SDK 範例
步驟 1:設定代理程式
建立名為 AccountingAssistant 的虛擬助理,並提供清楚的功能說明來初始化代理程式。
步驟 2:整合工具
整合必要的工具,包括:
- 網路搜尋工具:擷取稅務更新。
- API 呼叫:分析財務報表。
- 檔案搜尋工具:尋找相關文件。
步驟 3:定義任務
將工作流程分解為特定任務:
- 任務 1:擷取最新的稅務更新。
- 任務 2:使用 API 分析財務資料。
- 任務 3:根據最新資料產生報告。
步驟 4:執行任務
依序或平行執行任務。例如:
Runner.run_sync(agent, "Generate a report based on the latest tax laws and financial data.")
步驟 5:監控與除錯
使用追蹤工具監控任務執行情況,識別潛在問題以進行除錯。
如何將 Novita AI 與 OpenAI Agents SDK 整合?
1. 設定 Python 環境並安裝 Agents SDK。
python -m venv env
source env/bin/activate
pip install openai-agents
2. 設定您的 Novita API 金鑰。

3. 交接範例
import os
from openai import AsyncOpenAI
from agents import (
Agent,
Runner,
set_default_openai_api,
set_default_openai_client,
set_tracing_disabled,
)
BASE_URL = "https://api.novita.ai/v3/openai"
API_KEY = os.getenv("NOVITA_API_KEY")
MODEL_NAME = os.getenv("MODEL_NAME")
# Because Novita not support the responses API so we use the chat completions API instead.
set_default_openai_api("chat_completions")
set_default_openai_client(AsyncOpenAI(base_url=BASE_URL, api_key=API_KEY))
# Disable tracing for this example
# Refer to https://openai.github.io/openai-agents-python/tracing/#external-tracing-processors-list to use the custom spans.
set_tracing_disabled(disabled=True)
agent = Agent(name="Assistant",
instructions="You are a helpful assistant", model=MODEL_NAME)
result = Runner.run_sync(
agent, "Write a haiku about recursion in programming.")
print(result.final_output)
# Code within the code,
# Functions calling themselves,
# Infinite loop's dance.
憑藉靈活的追蹤能力,開發人員可透過內建功能與第三方整合來追蹤代理程式行為,確保更佳的效能與可靠性。
常見問題
OpenAI Agents SDK 可以使用哪些 LLM 模型?
相容於 OpenAI 模型(o1、o3-mini、gpt-4o)以及採用 OpenAI 相容 API 的第三方模型,例如 Novita AI。
OpenAI Agents SDK 如何處理工具整合?
使用 @function_tool 裝飾器將 Python 函式轉換為工具,並自動產生 schema 與進行 Pydantic 驗證。
OpenAI Agents SDK 是否適合用於生產環境?
是的,它包含護欄等安全功能,以及全面的追蹤與監控能力。
Novita AI 是一個 AI 雲端平台,為開發人員提供使用簡單 API 部署 AI 模型的便捷方式,同時提供經濟且可靠的 GPU 雲端用於建構與擴展。
