Partilhar via


Agente baseado em qualquer cliente IChat

O Microsoft Agent Framework oferece suporte à criação de agentes para qualquer serviço de inferência que forneça uma Microsoft.Extensions.AI.IChatClient implementação. Isso significa que há uma gama muito ampla de serviços que podem ser usados para criar agentes, incluindo modelos de código aberto que podem ser executados localmente.

Neste documento, usaremos Ollama como exemplo.

Introdução

Adicione os pacotes NuGet necessários ao seu projeto.

dotnet add package Microsoft.Agents.AI --prerelease

Você também precisará adicionar o pacote para a implementação específica IChatClient que deseja usar. Neste exemplo, usaremos OllamaSharp.

dotnet add package OllamaSharp

Criando um ChatClientAgent

Para criar um agente com base na IChatClient interface, você pode usar a ChatClientAgent classe. A ChatClientAgent classe toma IChatClient como um parâmetro do construtor.

Primeiro, crie um OllamaApiClient para acessar o serviço Ollama.

using System;
using Microsoft.Agents.AI;
using OllamaSharp;

using OllamaApiClient chatClient = new(new Uri("http://localhost:11434"), "phi3");

O OllamaApiClient implementa a interface IChatClient, para que se possa usá-lo para criar um ChatClientAgent.

AIAgent agent = new ChatClientAgent(
    chatClient,
    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."));

Importante

Para garantir que você tire o máximo proveito do seu agente, certifique-se de escolher um serviço e modelo que seja adequado para tarefas de conversação e suporte a chamadas de função.

Usando o agente

O agente é um AIAgent padrão e suporta todas as operações padrão de um agente.

Consulte os tutoriais de introdução ao agente para obter mais informações sobre como executar e interagir com agentes.

O Microsoft Agent Framework oferece suporte à criação de agentes para qualquer serviço de inferência que forneça uma implementação de cliente de chat compatível com o ChatClientProtocol. Isso significa que há uma gama muito ampla de serviços que podem ser usados para criar agentes, incluindo modelos de código aberto que podem ser executados localmente.

Introdução

Adicione os pacotes Python necessários ao seu projeto.

pip install agent-framework --pre

Você também pode precisar adicionar pacotes para implementações específicas de cliente de chat que deseja usar:

# For Azure AI
pip install agent-framework-azure-ai --pre

# For custom implementations
# Install any required dependencies for your custom client

Clientes de bate-papo integrados

A estrutura fornece várias implementações de cliente de chat integradas:

Cliente de bate-papo OpenAI

from agent_framework import ChatAgent
from agent_framework.openai import OpenAIChatClient

# Create agent using OpenAI
agent = ChatAgent(
    chat_client=OpenAIChatClient(model_id="gpt-4o"),
    instructions="You are a helpful assistant.",
    name="OpenAI Assistant"
)

Cliente de Chat do Azure OpenAI

from agent_framework import ChatAgent
from agent_framework.azure import AzureOpenAIChatClient

# Create agent using Azure OpenAI
agent = ChatAgent(
    chat_client=AzureOpenAIChatClient(
        model_id="gpt-4o",
        endpoint="https://your-resource.openai.azure.com/",
        api_key="your-api-key"
    ),
    instructions="You are a helpful assistant.",
    name="Azure OpenAI Assistant"
)

Cliente do Azure AI Agent

from agent_framework import ChatAgent
from agent_framework.azure import AzureAIAgentClient
from azure.identity.aio import AzureCliCredential

# Create agent using Azure AI
async with AzureCliCredential() as credential:
    agent = ChatAgent(
        chat_client=AzureAIAgentClient(async_credential=credential),
        instructions="You are a helpful assistant.",
        name="Azure AI Assistant"
    )

Importante

Para garantir que você tire o máximo proveito do seu agente, certifique-se de escolher um serviço e modelo que seja adequado para tarefas de conversação e suporte chamadas de função se você planeja usar ferramentas.

Usando o agente

O agente suporta todas as operações padrão do agente.

Consulte os tutoriais de introdução ao agente para obter mais informações sobre como executar e interagir com agentes.

Próximos passos