Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Dapr Konuşma yapı taşı, model çıkarımı bir Dapr sepet aracılığıyla yönlendirir ve Aracı Çerçevesi .NET aracısını destekleyen bir'i IChatClient kullanıma sunar. Model sağlayıcısı ve kimlik bilgileri doğrudan aracı işlemi yerine Dapr Konuşma bileşeninde yapılandırılır.
Prerequisites
- .NET 10 veya üzeri.
- Docker ve Dapr CLI.
- Ollama destekli bileşen gibi yapılandırılmış bir Dapr Konuşma bileşeni.
Paketleri yükleme
dotnet add package Dapr.AI.Microsoft.Extensions
dotnet add package Microsoft.Agents.AI --prerelease
Configuration
DAPR_GRPC_ENDPOINT="http://localhost:3501"
DAPR_GRPC_ENDPOINT isteğe bağlıdır ve varsayılan olarak olarak http://localhost:3501ayarlanır. Uygulama kodunda, Gibi ollamaDapr Konuşma bileşeninin adına ayarlayınConversationComponentName.
Dapr destekli aracı oluşturma
Bağımlılık ekleme yoluyla Dapr sepet uç noktasını ve Konuşma bileşenini yapılandırın, çözümünü çözün IChatClientve aracıya dönüştürün.
// 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."));
Sağlayıcı özellikleri, Dapr Konuşma bileşenine ve arkasındaki modele bağlıdır.
Tools
Araç desteği, yapılandırılan Dapr Konuşma bileşeninden ve modelinden devralınır.
| Araç | Statü | Notlar |
|---|---|---|
| İşlev Araçları | Varies | Yapılandırılan bileşen ve modelden işlev çağırma desteği gerektirir. |
| Araç Onayı | Varies | Model işlev aracı çağrıları ürettiğinde kullanılabilir. |
| Sağlayıcı tarafından barındırılan araçlar | ❌ | Dapr ayrı bir Agent Framework barındırılan araç yüzeyi eklemez. |
| Yerel MCP Araçları | ✅ | Uygulama işleminde çalışır. |