Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O Microsoft Agent Framework dá suporte à criação de agentes que usam o serviço OpenAI ChatCompletion .
Introdução
Adicione os pacotes NuGet necessários ao seu projeto.
dotnet add package Microsoft.Agents.AI.OpenAI --prerelease
Criando um Agente de ChatCompletion do OpenAI
Como primeira etapa, você precisa criar um cliente para se conectar ao serviço OpenAI.
using System;
using Microsoft.Agents.AI;
using OpenAI;
OpenAIClient client = new OpenAIClient("<your_api_key>");
O OpenAI dá suporte a vários serviços que fornecem recursos de chamada de modelo. Precisamos escolher o serviço ChatCompletion para criar um agente baseado em ChatCompletion.
var chatCompletionClient = client.GetChatClient("gpt-4o-mini");
Por fim, crie o agente usando o CreateAIAgent método de extensão no ChatCompletionClient.
AIAgent agent = chatCompletionClient.CreateAIAgent(
instructions: "You are good at telling jokes.",
name: "Joker");
// Invoke the agent and output the text result.
Console.WriteLine(await agent.RunAsync("Tell me a joke about a pirate."));
Usando o agente
O agente é um AIAgent padrão e oferece suporte a todas as operações padrão AIAgent.
Consulte os tutoriais de introdução do Agente para obter mais informações sobre como executar e interagir com agentes.
Pré-requisitos
Instale o pacote do Microsoft Agent Framework.
pip install agent-framework --pre
Configuração
Variáveis de ambiente
Configure as variáveis de ambiente necessárias para autenticação OpenAI:
# Required for OpenAI API access
OPENAI_API_KEY="your-openai-api-key"
OPENAI_CHAT_MODEL_ID="gpt-4o-mini" # or your preferred model
Como alternativa, você pode usar um .env arquivo na raiz do projeto:
OPENAI_API_KEY=your-openai-api-key
OPENAI_CHAT_MODEL_ID=gpt-4o-mini
Introdução
Importe as classes necessárias do Agent Framework:
import asyncio
from agent_framework import ChatAgent
from agent_framework.openai import OpenAIChatClient
Criando um Agente de ChatCompletion do OpenAI
Criação básica de agente
A maneira mais simples de criar um agente de conclusão de chat:
async def basic_example():
# Create an agent using OpenAI ChatCompletion
agent = OpenAIChatClient().create_agent(
name="HelpfulAssistant",
instructions="You are a helpful assistant.",
)
result = await agent.run("Hello, how can you help me?")
print(result.text)
Usando a configuração explícita
Você pode fornecer uma configuração explícita em vez de depender de variáveis de ambiente:
async def explicit_config_example():
agent = OpenAIChatClient(
ai_model_id="gpt-4o-mini",
api_key="your-api-key-here",
).create_agent(
instructions="You are a helpful assistant.",
)
result = await agent.run("What can you do?")
print(result.text)
Recursos do agente
Ferramentas de Funções
Equipe seu agente com funções personalizadas:
from typing import Annotated
from pydantic import Field
def get_weather(
location: Annotated[str, Field(description="The location to get weather for")]
) -> str:
"""Get the weather for a given location."""
# Your weather API implementation here
return f"The weather in {location} is sunny with 25°C."
async def tools_example():
agent = ChatAgent(
chat_client=OpenAIChatClient(),
instructions="You are a helpful weather assistant.",
tools=get_weather, # Add tools to the agent
)
result = await agent.run("What's the weather like in Tokyo?")
print(result.text)
Respostas do streaming
Obtenha respostas conforme elas são geradas para uma melhor experiência do usuário:
async def streaming_example():
agent = OpenAIChatClient().create_agent(
name="StoryTeller",
instructions="You are a creative storyteller.",
)
print("Assistant: ", end="", flush=True)
async for chunk in agent.run_stream("Tell me a short story about AI."):
if chunk.text:
print(chunk.text, end="", flush=True)
print() # New line after streaming
Usando o agente
O agente é um padrão BaseAgent e dá suporte a todas as operações de agente padrão.
Consulte os tutoriais de introdução do Agente para obter mais informações sobre como executar e interagir com agentes.