Models#
在许多情况下,代理需要访问模型服务,例如 OpenAI、Azure OpenAI 和本地模型。AgentChat 使用由 autogen-ext
包提供的模型客户端。
OpenAI#
要访问 OpenAI 模型,您需要安装 openai
扩展以使用 OpenAIChatCompletionClient
.
pip install 'autogen-ext[openai]==0.4.0.dev6'
您还需要从 OpenAI 获取一个API key。
from autogen_ext.models import OpenAIChatCompletionClient
opneai_model_client = OpenAIChatCompletionClient(
model="gpt-4o-latest",
api_key="sk-...", # Optional if you have an OPENAI_API_KEY environment variable set.
)
要测试模型客户端,您可以使用以下代码:
from autogen_core.components.models import UserMessage
result = await opneai_model_client.create([UserMessage(content="What is the capital of France?", source="user")])
print(result)
CreateResult(finish_reason='stop', content='The capital of France is Paris.', usage=RequestUsage(prompt_tokens=15, completion_tokens=7), cached=False, logprobs=None)
备注
您可以将此客户端与托管在 OpenAI 兼容端点上的模型一起使用,但是我们尚未测试此功能。
查看 OpenAIChatCompletionClient
了解更多信息。
Azure OpenAI#
安装 azure
和 openai
扩展以使用 AzureOpenAIChatCompletionClient
.
pip install 'autogen-ext[openai,azure]==0.4.0.dev6'
要使用此客户端,您需要提供部署 ID、Azure 认知服务端点、API 版本和模型功能。 对于身份验证,您可以提供 API 密钥或 Azure Active Directory (AAD) 令牌凭据。
以下代码片段展示了如何使用 AAD 身份验证。 使用的身份必须被分配 认知服务 OpenAI 用户 角色。
from autogen_ext.models import AzureOpenAIChatCompletionClient
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
# Create the token provider
token_provider = get_bearer_token_provider(DefaultAzureCredential(), "https://cognitiveservices.azure.com/.default")
az_model_client = AzureOpenAIChatCompletionClient(
model="{your-azure-deployment}",
api_version="2024-06-01",
azure_endpoint="https://{your-custom-endpoint}.openai.azure.com/",
azure_ad_token_provider=token_provider, # Optional if you choose key-based authentication.
api_key="sk-...", # For key-based authentication.
model_capabilities={
"vision": True,
"function_calling": True,
"json_output": True,
},
)
查看 here 了解如何直接使用 Azure 客户端或更多信息。
本地模型#
我们正在开发中。敬请期待!