GPT 模型是业内顶级的 LLM,并且被 Agents 用作默认 LLM。OpenAI 支持各种世界一流的模型。在此处查看其模型:https://platform.openai.com/docs/models

我们建议进行实验以找到最适合您用例的模型。以下是一些通用建议:

  • gpt-4o 适用于大多数通用用例。
  • gpt-4o-mini 模型适用于较小的任务和更快的推理。
  • o1 模型适用于复杂的推理和多步任务。
  • o3-mini 是一款强大的推理模型,支持工具调用和结构化输出,但成本低得多。

OpenAI 有基于层级的速率限制。有关更多信息,请参阅文档

身份验证

设置您的 OPENAI_API_KEY 环境变量。您可以在此处从 OpenAI 获取

export OPENAI_API_KEY=sk-***

示例

在您的 Agent 中使用 OpenAIChat


from agno.agent import Agent, RunResponse
from agno.models.openai import OpenAIChat

agent = Agent(
    model=OpenAIChat(id="gpt-4o"),
    markdown=True
)

# 在终端中打印响应
agent.print_response("写一个两句话的恐怖故事。")

在此处查看更多示例:../examples/models/openai

参数

有关更多信息,请参阅OpenAI 文档

名称类型默认值描述
idstr"gpt-4o"要使用的 OpenAI 模型 ID。
namestr"OpenAIChat"此聊天模型实例的名称。
providerstr"OpenAI " + id模型的提供商。
storeOptional[bool]None是否存储此聊天完成请求的输出,用于模型蒸馏或评估产品。
metadataOptional[Dict[str, Any]]None要包含在请求中的其他元数据。
frequency_penaltyOptional[float]None根据新标记在文本中的频率对其进行惩罚。
logit_biasOptional[Any]None修改指定标记在完成中出现的可能性。
logprobsOptional[bool]None在概率最高的标记中包含 log 概率。
max_tokensOptional[int]None聊天完成中要生成的最大标记数。
max_completion_tokensOptional[int]None完成中要生成的最大标记数。
modalitiesOptional[List[str]]None模型支持的模态列表。
audioOptional[Dict[str, Any]]None模型特定于音频的参数。
presence_penaltyOptional[float]None根据新标记在文本中是否出现对其进行惩罚。
response_formatOptional[Any]None指定模型必须输出格式的对象。
seedOptional[int]None用于确定性采样的种子。
stopOptional[Union[str, List[str]]]None最多 4 个序列,API 将停止生成更多标记。
temperatureOptional[float]None控制模型输出的随机性。
top_logprobsOptional[int]None每个标记要返回的 log 概率结果的数量。
userOptional[str]None代表您的最终用户的唯一标识符。
top_pOptional[float]None通过原子核采样控制多样性。
extra_headersOptional[Any]None要随请求发送的其他标头。
extra_queryOptional[Any]None要随请求发送的其他查询参数。
request_paramsOptional[Dict[str, Any]]None要包含在请求中的其他参数。
api_keyOptional[str]None用于与 OpenAI 进行身份验证的 API 密钥。
organizationOptional[str]None用于 API 请求的组织。
base_urlOptional[Union[str, httpx.URL]]NoneAPI 请求的基本 URL。
timeoutOptional[float]NoneAPI 请求的超时时间。
max_retriesOptional[int]None失败请求的最大重试次数。
default_headersOptional[Any]None将包含在所有请求中的默认标头。
default_queryOptional[Any]None将包含在所有请求中的默认查询参数。
http_clientOptional[httpx.Client]None一个可选的预配置 HTTP 客户端。
client_paramsOptional[Dict[str, Any]]None客户端配置的附加参数。
clientOptional[OpenAIClient]NoneOpenAI 客户端实例。
async_clientOptional[AsyncOpenAIClient]None异步 OpenAI 客户端实例。
structured_outputsboolFalse是否使用模型的结构化输出。
supports_structured_outputsboolTrue模型是否支持结构化输出。
add_images_to_message_contentboolTrue是否将图像添加到消息内容。
override_system_roleboolTrue是否覆盖系统角色。
system_message_rolestr"developer"要映射系统消息到的角色。

OpenAIChatModel 类的子类,可以访问相同的参数。