Vektorspeicher für die Dateisuche

Vektorspeicherobjekte bieten dem Dateisuchtool die Möglichkeit, Ihre Dateien zu durchsuchen. Das Hinzufügen einer Datei zu einem Vektorspeicher erweitert das Wissen des Foundry-Modells des Agents über seine Schulungsdaten hinaus. Der Dienst analysiert, Blöcke, Einbettungen und indiziert die Datei, sodass das Tool sowohl Schlüsselwortsuche als auch semantische Suche ausführen kann.

Vektorspeicher können an Agents und Unterhaltungen angefügt werden. Aktuell können Sie höchstens einen Vektor-Store einem Agent und höchstens einen Vektor-Store einer Kommunikation zuordnen. Eine konzeptionelle Übersicht über Unterhaltungen finden Sie unter Agent-Laufzeitkomponenten.

In der aktuellen Agents-Entwicklerumgebung werden zur Antwortgenerierung Antworten und Unterhaltungen verwendet. Einige SDKs und ältere Beispiele verwenden den Begriff ausführen. Wenn beide Begriffe angezeigt werden, behandeln Sie die Ausführung als Antwortgenerierung. Anleitungen zur Migration finden Sie unter Migrieren zum neuen Agentdienst.

Eine Liste der Grenzwerte für die Vektorsuche (z. B. maximal zulässige Dateigrößen) finden Sie im Artikel zu Kontingenten und Grenzwerten .

Voraussetzungen

Schlüsselgrenzwerte und Standardwerte

Vektorspeicher sind häufig der erste Ort, an dem Abrufworkflows in der Produktion fehlschlagen, sodass es hilft, die Standardwerte und harten Grenzwerte zu kennen.

  • Dateien pro Vektorspeicher: Jeder Vektorspeicher kann bis zu 10.000 Dateien enthalten.
  • Anhänge: Sie können höchstens einen Vektorspeicher an einen Agent und höchstens einen Vektorspeicher an eine Unterhaltung anhängen.
  • Standardabrufeinstellungen (Dateisuche):
    • Blockgröße: 800 Token
    • Blocküberlappung: 400 Token
    • Einbettungsmodell: text-embedding-3-large mit 256 Dimensionen
    • Maximale Anzahl von Blöcken, die dem Kontext hinzugefügt wurden: 20

Informationen zu Dateigrößen- und Tokenbeschränkungen finden Sie unter Kontingente und Grenzwerte.

Schlüsselkonzepte

Begriff Bedeutung
Vektorspeicher Ein Container für durchsuchbare Dateiinhalte (Blöcke und Einbettungen), die vom Dateisuchtool verwendet werden.
Einnahme Der asynchrone Prozess, der eine Datei für die Suche analysiert, segmentiert, einbettet und indiziert.
Bereitschaft Gibt an, ob die Aufnahme abgeschlossen ist und der Vektorspeicher durchsuchbar ist.
Ablaufrichtlinie Eine Lebenszyklusrichtlinie, die einen Vektorspeicher nach einer Periode der Inaktivität löscht.

Die Dateisuche wendet bewährte Methoden zum Abrufen an, damit Ihr Agent den richtigen Inhalt aus Ihren Dateien finden kann. Je nach Abfrage und Daten kann das Tool:

  • Schreiben Sie Benutzerabfragen neu, um den Abruf zu verbessern.
  • Trennen Sie komplexe Abfragen in mehrere Suchvorgänge.
  • Führen Sie sowohl Schlüsselwort- als auch semantische Suchvorgänge auf Agenten- und Konversationsvektorspeichern aus.
  • Rerankieren Sie Ergebnisse, bevor Sie sie dem Modellkontext hinzufügen.

Informationen zu aktuellen Standardabrufeinstellungen (Blockgröße und Überlappung, Einbettungsmodell und die maximale Anzahl von Blöcken, die dem Kontext hinzugefügt wurden), finden Sie unter Funktionsweise.

Wo sich Ihre Daten befinden (grundlegendes und Standard-Agent-Setup)

Wo Dateien und Suchressourcen live sind, hängt von Ihrem Agent-Setup ab:

  • Basic Agent setup: Die Dateisuche verwendet Microsoft verwalteten Speicher- und Suchressourcen.
  • Standard-Agent-Setup: Die Dateisuche verwendet die Azure Blob Storage und Azure KI-Suche Ressourcen, die Sie während des Setups verbinden, sodass Ihre Dateien im Speicher verbleiben.

Informationen zum Einrichten Ihrer Umgebung finden Sie unter Einrichten der Agentenumgebung. Weitere Details finden Sie unter "Abhängigkeit von der Agenteinrichtung".

Sicherstellen der Bereitschaft des Vektorspeichers vor dem Erstellen von Antworten

Stellen Sie sicher, dass alle Dateien in einem Vektorspeicher vollständig verarbeitet werden, bevor Sie eine Antwort erstellen. Dieser Schritt stellt sicher, dass alle Daten in Ihrem Vektorspeicher durchsuchbar sind.

Verwenden Sie zum Überprüfen der Bereitschaft die SDK-Abrufhilfen (z. B. create-and-poll und upload-and-poll), oder rufen Sie das Vektorspeicherobjekt ab, bis der Status abgeschlossen ist. Codebeispiele finden Sie unter Dateisuchtool für Agents.

Während der Aufnahme kann ein Vektorspeicher den in_progress-Status haben. Wenn die Aufnahme abgeschlossen ist, ändert sich der Status in Abgeschlossen.

Als Fallback enthält die Antwortgenerierung eine maximale Wartezeit von 60 Sekunden, wenn der Vektorspeicher der Unterhaltung Dateien enthält, die noch verarbeitet werden. Diese Wartezeit gilt nicht für den Vektor-Store des Agent.

End-to-End-Workflow-Checkliste

Verwenden Sie diese Checkliste, um einen Vektorspeicher-Workflow von der Aufnahme bis zur Lebenszyklusverwaltung zu validieren.

  1. Entscheiden Sie, ob Sie die Grundlegende Agent-Einrichtung oder das Standard-Agent-Setup verwenden, je nachdem, wo Ihre Dateien und Suchressourcen leben sollen. Sehen Sie, wo Sich Ihre Daten befinden (grundlegendes vs Standard-Agent-Setup).
  2. Laden Sie Ihre Dateien hoch, und erstellen Sie einen Vektorspeicher. Ein schrittweises Beispiel finden Sie unter Hochladen von Dateien und Hinzufügen zu einem Vektorspeicher.
  3. Warten Sie, bis die Aufnahme abgeschlossen ist, bevor Sie Antworten generieren. Verwenden Sie die SDK-Abrufhilfen, oder rufen Sie den Vektorspeicher ab, bis der Status abgeschlossen ist und keine Dateien mehr in Bearbeitung verbleiben. Siehe Sicherstellen der Bereitschaft zum Vektorspeicher vor dem Erstellen von Antworten.
  4. Fügen Sie den Vektorspeicher an den Agent oder die Unterhaltung an, den Sie für die Dateisuche verwenden. Beachten Sie die Anlagengrenzwerte. Siehe Vektorspeicher.
  5. Erstellen Sie eine Antwort, die die Dateisuche verwendet, und überprüfen Sie, ob das Tool aus den erwarteten Quellen abgerufen wird. Siehe "Antwort erstellen" mit Dateisuche und "Ergebnisse überprüfen".
  6. Verwalten des Lebenszyklus: Entfernen Sie Dateien, die Sie nicht mehr benötigen, und planen Sie Ablaufrichtlinien (insbesondere für Vektorspeicherungen, die von Konversationshilfsprogrammen erstellt wurden). Siehe Vektorspeicher und Unterhaltungsvektorspeicher verfügen über Standardablaufrichtlinien.

Hinzufügen von Dateien und Verwalten von Vektorspeichern

Das Hinzufügen von Dateien zu Vektorspeichern ist ein asynchroner Vorgang. Um sicherzustellen, dass die Erfassung abgeschlossen wird, verwenden Sie die Hilfsprogramme zum Erstellen und Abfragen in den offiziellen SDKs. Wenn Sie kein SDK verwenden, können Sie den Vektorspeicher abfragen, bis der Status abgeschlossen ist und keine Dateien in in_progress verbleiben.

Dateien können auch zu einem Vektorspeicher hinzugefügt werden, nachdem sie durch Erstellen von Vektorspeicherdateien erstellt wurden. Alternativ können Sie einem Vektorspeicher mehrere Dateien hinzufügen, indem Sie Batches mit bis zu 500 Dateien erstellen.

Wenn Sie eine Datei hochladen, um einen Vektorspeicher zu erstellen, wird dies vom System automatisch durchgeführt.

  1. Gliedert Ihre Inhalte in verwaltbare Teile.
  2. Konvertiert jeden Block mithilfe von Einbettungsmodellen in hochdimensionale Vektoren.
  3. Speichert diese Vektoren in einem optimierten Suchindex.
  4. Erstellt Zuordnungen zwischen den Vektoren und dem ursprünglichen Inhalt.

Entfernen von Dateien aus Vektorspeichern

Sie können Dateien aus einem Vektorspeicher auf zwei verschiedene Arten entfernen:

  • Löschen Sie das Vektorspeicherdateiobjekt.
  • Löschen Sie das zugrunde liegende Dateiobjekt. Dadurch wird die Datei aus allen Vektorspeicherkonfigurationen für alle Agents und Unterhaltungen in Ihrer Organisation entfernt.

Verwalten Sie den Lebenszyklus mit Ablaufrichtlinien

Ablaufrichtlinien helfen Ihnen beim Verwalten des Vektorspeicherlebenszyklus. Sie können diese Richtlinien beim Erstellen oder Aktualisieren des Vektorspeicherobjekts festlegen.

Unterhaltungsvektorspeicher haben Standardablaufrichtlinien

Für Vektorspeicher, die mithilfe von Unterhaltungshilfsprogrammen erstellt wurden, gilt eine Standardablaufrichtlinie von sieben Tagen nach der letzten Aktivität (definiert als letzte Verwendung des Vektorspeichers während der Antwortgenerierung).

Wenn ein Vektorspeicher abläuft, schlägt die Antwortgenerierung für diese Unterhaltung fehl. Um das Problem zu beheben, erstellen Sie einen neuen Vektorspeicher mit denselben Dateien, und fügen Sie ihn erneut an die Unterhaltung an. Weitere Einzelheiten finden Sie unter Für Unterhaltungsvektorspeicher gelten Standardablaufrichtlinien.

Unterstützte Dateitypen und Schlüsselgrenzwerte

Die unterstützten Dateitypen listen- und Codierungsanforderungen finden Sie unter "Unterstützte Dateitypen".

Wichtige Grenzwerte, die Sie berücksichtigen sollten:

  • Sie können höchstens einen Vektorspeicher an einen Agenten und höchstens einen Vektorspeicher an eine Konversation anfügen.
  • Dateigrößen- und Tokenbeschränkungen variieren je nach Feature. Siehe Kontingente und Grenzwerte.

Problembehandlung

  • Ihr Vektorspeicher ist noch nicht durchsuchbar: Warten Sie, bis die Ingestierung abgeschlossen ist. Verwenden Sie die SDK-Polling-Hilfen oder rufen Sie den Vektorspeicher ab, bis der Status abgeschlossen ist.
  • Antwortgenerierung schlägt nach ein paar Tagen fehl: Möglicherweise ist Ihr Konversationsvektorspeicher abgelaufen. Erstellen Sie einen neuen Vektorspeicher mit denselben Dateien neu, und fügen Sie ihn erneut an.
  • Eine Datei ist aus mehreren Agents oder Unterhaltungen verschwunden: Möglicherweise haben Sie das zugrunde liegende Dateiobjekt gelöscht, wodurch die Datei aus allen Vektorspeicherkonfigurationen in Ihrer Organisation entfernt wird.
  • Upload- oder Erfassungsfehler: Überprüfen Sie die Dateigrößen- und Tokengrenzwerte unter Kontingente und Grenzwerte.