Freigeben über


Verwenden von ai.embed mit PySpark

Die ai.embed Funktion verwendet generative KI, um Text in Vektoreinbettungen umzuwandeln. Mit diesen Vektoren können KI Beziehungen zwischen Texten verstehen, sodass Sie Inhalte basierend auf Bedeutung und nicht exakter Formulierung suchen, gruppieren und vergleichen können. Mit einer einzelnen Codezeile können Sie Vektoreinbettungen aus einer Spalte in einem DataFrame generieren.

Hinweis

Überblick

Die ai.embed Funktion ist für Spark DataFrames verfügbar. Sie müssen den Namen einer vorhandenen Eingabespalte als Parameter angeben.

Die Funktion gibt einen neuen DataFrame zurück, der Einbettungen für jede Zeile von Eingabetext in einer Ausgabespalte enthält.

Syntax

df.ai.embed(input_col="col1", output_col="embed")

Die Parameter

Name Description
input_col
Erforderlich
Eine Zeichenfolge , die den Namen einer vorhandenen Spalte mit Eingabetextwerten enthält, die zum Berechnen von Einbettungen verwendet werden sollen.
output_col
Wahlfrei
Eine Zeichenfolge , die den Namen einer neuen Spalte enthält, um berechnete Einbettungen für jede Eingabetextzeile zu speichern. Wenn Sie diesen Parameter nicht festlegen, wird für die Ausgabespalte ein Standardname generiert.
error_col
Wahlfrei
Eine Zeichenfolge , die den Namen einer neuen Spalte enthält, in der alle OpenAI-Fehler gespeichert werden, die aus der Verarbeitung der einzelnen Eingabetextzeilen resultieren. Wenn Sie diesen Parameter nicht festlegen, wird für die Fehlerspalte ein Standardname generiert. Wenn eine Eingabezeile keine Fehler aufweist, weist diese Spalte einen null Wert auf.

Rückkehr

Die Funktion gibt einen Spark DataFrame zurück, der eine neue Spalte enthält, die generierte Einbettungen für jede Eingabetextzeile enthält. Einbettungen sind vom Typ [pyspark.ml.linalg.DenseVector])https://spark.apache.org/docs/latest/api/python/reference/api/pyspark.ml.linalg.DenseVector.html#densevector). Die Anzahl der Elemente im DenseVector hängt von den Dimensionen des Einbettungsmodells ab, die in KI-Funktionen konfigurierbar sind.

Example

# This code uses AI. Always review output for mistakes. 
# Read terms: https://azure.microsoft.com/support/legal/preview-supplemental-terms/.

df = spark.createDataFrame([
        ("This duvet, lovingly hand-crafted from all-natural fabric, is perfect for a good night's sleep.",), 
        ("Tired of friends judging your baking? With these handy-dandy measuring cups, you'll create culinary delights.",), 
        ("Enjoy this *BRAND NEW CAR!* A compact SUV perfect for the professional commuter!",) 
    ], ["descriptions"])

embed = df.ai.embed(input_col="descriptions", output_col="embed")
display(embed)

Diese Beispielcodezelle stellt die folgende Ausgabe bereit:

Screenshot eines Datenrahmens mit den Spalten