Σημείωμα
Η πρόσβαση σε αυτήν τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να εισέλθετε ή να αλλάξετε καταλόγους.
Η πρόσβαση σε αυτήν τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να αλλάξετε καταλόγους.
Ο χώρος αποθήκευσης είναι ένα κρίσιμο στοιχείο του SDK των Microsoft Agents, επιτρέποντας στους υπαλλήλους να διατηρούν την κατάσταση συνομιλίας, τα δεδομένα χρήστη και άλλες πληροφορίες σε όλες τις περιόδους λειτουργίας. Υποστηρίζει διάφορες επιλογές αποθήκευσης, όπως χώρο αποθήκευσης στη μνήμη, Azure Cosmos DB, Χώρος αποθήκευσης αντικειμένων blob Azure και επιτρέπει προσαρμοσμένες υπηρεσίες παροχής χώρου αποθήκευσης.
Επιλογές αποθήκευσης κλειδιών
Χώρος αποθήκευσης μνήμης
- Κατάλληλο για δοκιμές και σκοπούς ανάπτυξης.
- Τα δεδομένα καταργούνται όταν επανεκκινείται ο παράγοντας, καθιστώντας τα ακατάλληλα για παραγωγή.
- Τα δεδομένα είναι διαθέσιμα μόνο στην παρουσία webapp, καθιστώντας τα ακατάλληλα όταν εκτελούνται σε ένα σύμπλεγμα.
Azure Cosmos DB
- Μια παγκόσμια κατανεμημένη βάση δεδομένων πολλών μοντέλων, ιδανική για παράγοντες παραγωγής.
- Υποστηρίζει διαμετμημένο χώρο αποθήκευσης για κλιμάκωση και επιδόσεις.
Χώρος αποθήκευσης Azure Blob
- Βελτιστοποιημένο για την αποθήκευση μη δομημένων δεδομένων, όπως κειμένου ή δυαδικών αρχείων.
- Χρησιμοποιείται συνήθως για την κατάσταση του παράγοντα και την αποθήκευση κειμένων.
Οι προσαρμοσμένες επιλογές αποθήκευσης μπορούν να παρέχονται με την υλοποίηση
IStorage
Χρήση διαφορετικών υπηρεσιών παροχής χώρου αποθήκευσης
Χώρος αποθήκευσης μνήμης
Όλα τα δείγματα χρησιμοποιούν MemoryStorage
Για .NET, Σε Program.cs, εγγραφείτε MemoryStorage
builder.Services.AddSingleton<IStorage, MemoryStorage>();
Χώρος αποθήκευσης Azure CosmosDb
Για .NET:
Προσθέστε μια εξάρτηση πακέτου για
Microsoft.Agents.Storage.CosmosDbΣε Program.cs, προσθέστε (ή αντικαταστήστε την υπάρχουσα)
IStorageκαταχώρηση με: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); });Για περισσότερες λεπτομέρειες, ανατρέξτε στο θέμα
CosmosDbPartitionedStorageOptions.
Χώρος αποθήκευσης blob Azure
Για .NET:
Προσθέστε μια εξάρτηση πακέτου για
Microsoft.Agents.Storage.BlobsΣε Program.cs, προσθέστε (ή αντικαταστήστε την υπάρχουσα)
IStorageκαταχώρηση με: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); });