Einführung

Abgeschlossen

Die semantische Suche erweitert die standardmäßige Schlüsselwortsuche durch semantische Ähnlichkeit. Diese Ähnlichkeit bedeutet, dass eine Abfrage für „sonnig“ mit dem Text „helles natürliches Licht“ übereinstimmen kann, obwohl es keine lexikalische Überlappung von mehr als einem Buchstaben gibt. Anstelle der Zeichenähnlichkeit verwendet die semantische Suche Einbettungsvektoren, die von künstlicher Intelligenz (KI) erzeugt werden, um die Abfrage- und Dokumentähnlichkeit zu messen und so relevantere Suchergebnisse bereitzustellen.

In diesem Modul erfahren Sie, wie Sie die semantische Suche in Azure Database for PostgreSQL – Flexibler Server aktivieren und wie Sie Azure OpenAI verwenden, um Vektoreinbettungen zu generieren.

Diagramm: Azure-Datenbank mit den Vektor- und azure_ai-Erweiterungen

Szenario

Angenommen, Sie arbeiten in einem Unternehmen, das Auflistungen von Ferienimmobilien verwaltet. Sie möchten es Kunden ermöglichen, online Suchen und Buchungen durchzuführen. Eine Herausforderung sind die vielen verschiedenen Wörter, die Menschen verwenden, um dasselbe zu beschreiben. Sie haben begrenzte Ressourcen, um Schlüsselwortlisten zu entwickeln und zu verwalten, wenn sich die Beschreibungen und verfügbaren Immobilien ändern, und die manuelle Schlüsselworteingabe fehleranfällig ist. Sie möchten relevante Suchergebnisse ohne manuelle Schlüsselwortlisten bereitstellen.

Lernziele

Sie erhalten eine Übersicht über die semantische Suche, Einbettungen und Vektordatenbanken. Anschließend aktivieren Sie die Erweiterungen pgvector und azure_ai. Mit diesen Erweiterungen führen Sie eine semantische Suche in Vektorspalten aus, die anhand von Azure OpenAI-Einbettungen mithilfe der azure_ai-Erweiterung generiert wurden. Zum Schluss schreiben Sie eine Suchfunktion, die eine Abfragezeichenfolge empfängt, Einbettungen für diese Abfrage generiert und eine semantische Suche in der Datenbank ausführt.

Am Ende dieser Sitzung wissen Sie, wie Sie mithilfe einer Datenbank in Azure Database for PostgreSQL – Flexibler Server eine semantische Suche mit Vektoreinbettungen ausführen, die von Azure OpenAI generiert wurden.