Del via


Bruk ai.similarity med PySpark

Funksjonen ai.similarity bruker generativ AI til å sammenligne to strenguttrykk og deretter beregne en semantisk likhetspoengsum. Den bruker bare en enkelt kodelinje. Du kan sammenligne tekstverdier fra én kolonne i en DataFrame med én felles tekstverdi eller med tekstverdier i en annen kolonne.

Note

Oversikt

Funksjonen ai.similarity er tilgjengelig for Spark DataFrames. Du må angi navnet på en eksisterende inndatakolonne som parameter. Du må også angi én vanlig tekstverdi for sammenligninger, eller navnet på en annen kolonne for sammenligninger på parvise måter.

Funksjonen returnerer en ny DataFrame som inneholder likhetspoeng for hver rad med inndatatekst som er i en utdatakolonne.

Syntaks

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

Parametere

Name Beskrivelse
input_col
Obligatorisk
En streng som inneholder navnet på en eksisterende kolonne med inndatatekstverdier som skal brukes til å beregne likhetspoeng.
other eller other_col
Obligatorisk
Bare én av disse parameterne kreves. Parameteren other er en streng som inneholder en enkelt felles tekstverdi som brukes til å beregne likhetspoeng for hver rad med inndata. Parameteren other_col er en streng som angir navnet på en andre eksisterende kolonne, med tekstverdier som brukes til å beregne parvise likhetspoengsummer.
output_col
Valgfritt
En streng som inneholder navnet på en ny kolonne for å lagre beregnede likhetsresultater for hver inndatatekstrad. Hvis du ikke angir denne parameteren, genereres et standardnavn for utdatakolonnen.
error_col
Valgfritt
En streng som inneholder navnet på en ny kolonne som lagrer eventuelle OpenAI-feil som skyldes behandling av hver inndatatekstrad. Hvis du ikke angir denne parameteren, genereres et standardnavn for feilkolonnen. Hvis en inndatarad ikke har noen feil, har denne kolonnen en null verdi.

Returnerer

Funksjonen returnerer en Spark DataFrame som inneholder en ny kolonne som inneholder genererte likhetspoengsummer for hver inndatatekstrad. Resultatene for utdatasamsentitet er relative, og de brukes best til rangering. Poengverdier kan variere fra -1* (motsetninger) til 1 (identiske). En poengsum på 0 indikerer at verdiene ikke er relatert i betydning.

Eksempel

# This code uses AI. Always review output for mistakes. 

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)

Denne eksempelkodecellen gir følgende utdata:

Skjermbilde av en dataramme med kolonnene «navn» og «likhet». Likhetskolonnen inneholder likhetspoeng for navnene og inndataordet.