Freigeben über


Semantische Operatoren in der Azure AI-Erweiterungsvorschau

Die Azure AI-Erweiterung führt semantische Operatoren ein, ein bahnbrechendes Feature, das erweiterte Generative AI (GenAI)-Funktionen direkt in PostgreSQL SQL integriert. Mit Azure OpenAI-Chatabschluss-APIs ermöglichen diese Betreibern es Benutzern, innovative Möglichkeiten zum Erstellen von GenAI-Anwendungen direkt in ihren Datenbanken zu erkunden.

Wichtigste Funktionen

Die semantischen Operatoren bieten Benutzern vier Kern-SQL-Funktionen, die generative KI-Funktionen verwenden:

  • azure_ai.generate(): Generiert Text oder strukturierte Ausgabe mithilfe von (Large Language Models, LLMs).
  • azure_ai.is_true(): Wertet die Wahrscheinlichkeit aus, dass eine angegebene Anweisung wahr ist.
  • azure_ai.extract(): Extrahiert strukturierte Features oder Entitäten aus Text.
  • azure_ai.rank(): Sortiert eine Liste von Dokumenten neu basierend auf der Relevanz zu einer gegebenen Anfrage.

Jede Funktion arbeitet über AI Foundry-Endpunkte, die mithilfe der azure_ai.set_setting Funktion registriert wurden, und sorgt für eine nahtlose Integration und Benutzersteuerung.

Grundlegendes zu semantischen Operatoren

Semantische Operatoren in der Azure AI-Erweiterung sind so konzipiert, dass komplexe KI-gesteuerte Aufgaben direkt in Ihrer PostgreSQL-Datenbank vereinfacht werden. Diese Operatoren ermöglichen es Benutzern, generative KI-Funktionen nahtlos in ihre SQL-Workflows zu integrieren, wodurch erweiterte Textgenerierung, Wahrheitsauswertung, Entitätsextraktion und Dokumentbewertung ermöglicht werden. Jeder Operator ist für benutzerfreundlichkeit und Flexibilität optimiert, sodass Entwickler intelligente Anwendungen mit minimalem Aufwand erstellen können.

azure_ai.generate()

Diese Funktion verwendet LLMs, um Text oder strukturierte Ausgabe zu generieren und benutzerdefinierte Parameter wie Eingabeaufforderungen, JSON-Schema, Modellauswahl, Temperatur, Timeout und Wiederholungslogik zu unterstützen.

Beispielverwendung:

SELECT azure_ai.generate(
  'Rewrite the following comment to be more polite: '
 comment_text
) AS polite_comment
FROM user_comments;

azure_ai.is_true()

Dieser Operator wertet aus, ob eine angegebene Anweisung wahrscheinlich wahr ist, und gibt einen booleschen Wert oder NULL zurück, wenn dies nicht eindeutig ist.

Beispielverwendung:

SELECT azure_ai.is_true(
  'The review talks about the product: '
 product_name
  ' Review: '
 review_text
) AS is_relevant_review
FROM product_reviews;

azure_ai.extract()

Extrahieren Sie strukturierte Features oder Entitäten aus Text basierend auf benutzerdefinierten Bezeichnungen.

Beispielverwendung:

SELECT azure_ai.extract(
  'Alice Smith traveled to Paris.',
 ARRAY['person', '___location', 'action']
);
-- Output: {"person": "Alice Smith", "___location": "Paris", "action": "travel"}

azure_ai.rank()

Dokumente werden neu geordnet basierend auf der Relevanz der Anfragen, unterstützt von Cross-Encoder- und GPT-Modellen.

Beispielverwendung:

SELECT azure_ai.rank(
  'How to Care for Indoor Succulents',
 ARRAY[
    'A complete guide to watering succulents.',
    'Best outdoor plants for shade.',
    'Soil mixtures for cacti and succulents.'
 ]
) AS ranked_documents;