Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
De bouwsteen voor dapr-gesprekken routeert modeldeductie via een Dapr-sidecar en toont een IChatClient model dat een Agent Framework .NET agent kan terugzetten. De modelprovider en referenties worden geconfigureerd in het Dapr-gespreksonderdeel in plaats van rechtstreeks in het agentproces.
Prerequisites
- .NET 10 of hoger.
- Docker en de Dapr CLI.
- Een geconfigureerd Dapr-gespreksonderdeel, zoals een onderdeel met Ollama-ondersteuning.
De pakketten installeren
dotnet add package Dapr.AI.Microsoft.Extensions
dotnet add package Microsoft.Agents.AI --prerelease
Configuration
DAPR_GRPC_ENDPOINT="http://localhost:3501"
DAPR_GRPC_ENDPOINT is optioneel en wordt standaard ingesteld op http://localhost:3501. Stel ConversationComponentName de toepassingscode in op de naam van het dapr-gespreksonderdeel, zoals ollama.
Een door Dapr ondersteunde agent maken
Configureer het Dapr-sidecar-eindpunt en gespreksonderdeel via afhankelijkheidsinjectie, los het IChatClientprobleem op en converteer deze naar een agent.
// the sidecar (see this sample's README). Override it with the DAPR_GRPC_ENDPOINT environment
// variable if you run the sidecar on a different port.
var daprGrpcEndpoint = Environment.GetEnvironmentVariable("DAPR_GRPC_ENDPOINT") ?? "http://localhost:3501";
// Register the Dapr Conversation client with dependency injection.
var app = Host.CreateDefaultBuilder()
.ConfigureServices(services =>
{
// Configure the gRPC endpoint for the Dapr sidecar.
services.AddDaprConversationClient((_, builder) => builder.UseGrpcEndpoint(daprGrpcEndpoint));
// Provide the name of the Conversation component loaded in the sidecar to use.
services.AddDaprChatClient(opt => opt.ConversationComponentName = "ollama");
}).Build();
// Get an instance of the Dapr chat client from the dependency injection container.
using var scope = app.Services.CreateScope();
var daprChatClient = scope.ServiceProvider.GetRequiredService<IChatClient>();
// Use this chat client to construct an AIAgent.
AIAgent agent = daprChatClient.AsAIAgent(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."));
Providermogelijkheden zijn afhankelijk van het dapr-gespreksonderdeel en het model erachter.
Gereedschappen
De ondersteuning van hulpprogramma's wordt overgenomen van het geconfigureerde Dapr-gespreksonderdeel en -model.
| Tool | Status | Aantekeningen |
|---|---|---|
| Functiehulpmiddelen | Varies | Hiervoor is ondersteuning vereist voor het aanroepen van functies vanuit het geconfigureerde onderdeel en model. |
| Goedkeuring van hulpprogramma | Varies | Beschikbaar wanneer het model functiehulpmiddel aanroept. |
| Door provider gehoste hulpprogramma's | ❌ | Dapr voegt geen afzonderlijk agentframework toe waarop het hulpprogramma wordt gehost. |
| Lokale MCP-hulpprogramma's | ✅ | Wordt uitgevoerd in het toepassingsproces. |