Dela via


Beräkna likheten med funktionen ai.similarity

Funktionen ai.similarity använder Generativ AI för att jämföra två stränguttryck och sedan beräkna en semantisk likhetspoäng – allt med en enda kodrad. Du kan jämföra textvärden från en kolumn i en DataFrame med ett enda gemensamt textvärde eller med parvis textvärden i en annan kolumn.

AI-funktioner turboladdar datateknik genom att ge dig tillgång till kraften hos Fabrics inbyggda stora språkmodeller. För att lära sig mer, läs denna översiktsartikel.

Viktig

Den här funktionen finns i förhandsversion, för användning i Fabric 1.3 runtime-miljön och senare.

  • Granska förutsättningarna i denna översiktsartikel, inklusive den biblioteksinstallation som tillfälligt krävs för att använda AI-funktioner.
  • Som standard drivs AI-funktioner för närvarande av modellen gpt-3.5-turbo (0125). Mer information om fakturerings- och förbrukningspriser finns i den här artikeln.
  • Även om den underliggande modellen kan hantera flera språk är de flesta AI-funktionerna optimerade för användning på engelskspråkiga texter.
  • Under den första distributionen av AI-funktioner begränsas användarna tillfälligt till 1 000 begäranden per minut med Fabrics inbyggda AI-slutpunkt.

Använd ai.similarity med pandas

Funktionen ai.similarity utökar klassen pandas Series. Anropa funktionen på en pandas DataFrame textkolumn för att beräkna den semantiska likheten för varje indatarad med avseende på ett enda gemensamt textvärde. Alternativt kan funktionen beräkna den semantiska likheten för varje rad med avseende på motsvarande parvis värden i en annan kolumn som har samma dimensioner som indatakolumnen.

Funktionen returnerar en Pandas-serie som innehåller likhetspoäng, som kan lagras i en ny DataFrame-kolumn.

Syntax

df["similarity"] = df["col1"].ai.similarity("value")

Parametrar

Namn Beskrivning
other
Krävs
Antingen en sträng som innehåller ett enda gemensamt textvärde, som används för att beräkna likhetspoäng för varje indatarad, ELLER en annan Pandas Series med samma dimensioner som indata, som innehåller textvärden som används för att beräkna parvis likhetspoäng för varje indatarad.

Returer

En pandas-serie som innehåller likhetspoäng för varje inmatad textrad. Utdatalikhetspoängen är relativa och används bäst för rangordning. Poängen kan variera från -1 (motsatser) till 1 (identiska). Poängen 0 anger att värdena inte har någon betydelse.

Exempel

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

df = pd.DataFrame([ 
        ("Bill Gates"), 
        ("Satya Nadella"), 
        ("Joan of Arc")
    ], columns=["name"])
    
df["similarity"] = df["name"].ai.similarity("Microsoft")
display(df)

Använda ai.similarity med PySpark

Funktionen ai.similarity är också tillgänglig för Spark DataFrames. Du måste ange namnet på en befintlig indatakolumn som en parameter. Du måste också ange ett enda gemensamt textvärde för jämförelser, eller namnet på en annan kolumn för parvis jämförelser.

Funktionen returnerar en ny DataFrame med likhetspoäng för varje rad med indatatext som lagras i en utdatakolumn.

Syntax

df.ai.similarity(input_col="col1", other="value", output_col="similarity")

Parametrar

Namn Beskrivning
input_col
Krävs
En sträng som innehåller namnet på en befintlig kolumn med indatatextvärden som ska användas för beräkning av likhetspoäng.
other eller other_col
Krävs
Endast en av dessa parametrar krävs. Parametern other är en sträng som innehåller ett enda gemensamt textvärde som används för att beräkna likhetspoäng för varje rad med indata. Parametern other_col är en sträng som anger namnet på en andra befintlig kolumn, med textvärden som används för att beräkna parvis likhetspoäng.
output_col
Valfri
En sträng som innehåller namnet på en ny kolumn för att lagra beräknade likhetspoäng för varje textrad. Om den här parametern inte har angetts genereras ett standardnamn för utdatakolumnen.
error_col
Valfri
En sträng som innehåller namnet på en ny kolumn som lagrar eventuella OpenAI-fel som uppstår när varje textrad bearbetas. Om den här parametern inte har angetts genereras ett standardnamn för felkolumnen. Om en indatarad inte har några fel har den här kolumnen ett null värde.

Returer

En Spark DataFrame- med en ny kolumn som innehåller genererade likhetspoäng för varje textrad. Utdatalikhetspoängen är relativa och används bäst för rangordning. Poängen kan variera från -1 (motsatser) till 1 (identiska). Poängen 0 anger att värdena inte har någon betydelse.

Exempel

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

df = spark.createDataFrame([
        ("Bill Gates",), 
        ("Sayta Nadella",), 
        ("Joan of Arc",) 
    ], ["names"])

similarity = df.ai.similarity(input_col="names", other="Microsoft", output_col="similarity")
display(similarity)