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.
Depolama, Microsoft 365 Aracılar SDK'sı'nın kritik bir bileşenidir. Aracıların konuşma durumunu, kullanıcı verilerini ve diğer bilgileri oturumlar arasında kalıcı hale getirmesine olanak tanır. SDK, aşağıdakiler dahil olmak üzere çeşitli depolama seçeneklerini destekler:
- Bellek içi depolama
- Azure Cosmos DB
- Azure Blob Depolama
- Özel depolama sağlayıcıları
Ana depolama seçenekleri
Aracılar SDK'sı, her birinin kendi kullanım durumları ve avantajları olan birkaç yerleşik depolama sağlayıcısı sunar. Aracınızın gereksinimlerine en uygun olanı seçebilirsiniz. Ayrıca kendi özel depolama sağlayıcınızı uygulayabilirsiniz.
Bellek depolaması
- Sınama ve geliştirme amacına uygundur.
- Aracı yeniden başlatıldığında veriler silinir, bu nedenle üretim için uygun değildir.
- Veriler yalnızca web uygulaması örneğinde kullanılabilir, bu nedenle bir kümede çalışırken uygun değildir.
Azure Cosmos DB
- Üretim aracıları için ideal olan küresel olarak dağıtılmış, çok modelli bir veritabanı.
- Ölçeklenebilirlik ve performans için bölümlenmiş depolamayı destekler.
Azure Blob Depolama
- Metin veya ikili dosyalar gibi yapılandırılmamış verileri depolamak için optimize edilmiştir.
- Aracı durumu ve transkripsiyonu depolaması için yaygın olarak kullanılır.
IStorageuygulanarak özel depolama seçenekleri
Farklı depolama sağlayıcılarını kullanma
Bellek depolaması
Tüm örnekler MemoryStorage kullanır. Bu depolama geçicidir ve yalnızca geliştirme ve sınama için uygundur. Üretim senaryoları için Azure Cosmos DB veya Azure Blob Depolama gibi daha dayanıklı bir depolama seçeneği kullanın.
Program.cs içinde MemoryStorage kaydettirin:
builder.Services.AddSingleton<IStorage, MemoryStorage>();
Azure Cosmos DB depolaması
Microsoft.Agents.Storage.CosmosDbiçin bir paket bağımlılığı ekleyin.Program.csiçindeIStoragekaydını ekleyin (veya mevcut olanını değiştirin):builder.Services.AddSingleton<IStorage>(sp => { var options = new CosmosDbPartitionedStorageOptions() { CosmosDbEndpoint = "your-cosmosdb-endpoint", DatabaseId = "your-database-id", ContainerId = "your-container-id", // Get a TokenCredential from your defined Connections TokenCredential = sp.GetService<IConnections>().GetConnection("ServiceConnection").GetTokenCredential() }; return new CosmosDbPartitionedStorage(options); });Daha fazla için bkz:
CosmosDbPartitionedStorageOptions.
Azure blob depolama
Microsoft.Agents.Storage.Blobsiçin bir paket bağımlılığı ekleyin.Program.csiçindeIStoragekaydını ekleyin (veya mevcut olanını değiştirin):builder.Services.AddSingleton<IStorage>(sp => { // Get a TokenCredential from your defined Connections var tokenCredential = sp.GetService<IConnections>().GetConnection("ServiceConnection").GetTokenCredential(); return new BlobsStorage( new Uri("{{your-blobs-storage-endpoint}}/agent-state"), tokenCredential); });