CosineSimilarity

Returnerar likheten mellan två inbäddningsvektorer som ett tal mellan -1 (motsatta) och 1 (liknande).

Format 

CosineSimilarity ( v1 ; v2 )

Parametrar 

v1 och v2 – ett textuttryck, textfält eller containerfält som innehåller inbäddningsvektorer.

Returnerad datatyp 

nummer

Ursprungsversion 

21.0

Beskrivning 

Den här funktionen returnerar ett mått på likheten mellan två inbäddningsvektorer med hjälp av cosinusmetoden. För inbäddningsvektorer ger cosinuslikhet ett användbart mått på hur liknande två textvärden sannolikt kommer att vara. Resultaten sträcker sig från och med -1 till och med 1, där värden närmare 1 indikerar högre semantisk likhet, 0 indikerar ingen likhet och -1 indikerar olikhet.

Om v1 och v2 är text måste de vara i form av JSON-matriser. Vektorerna måste också ha samma dimensioner (antalet element i matriserna måste vara samma). Vanligtvis förbättras prestanda om man använder inbäddningsvektorer som binära containerdata.

Kommentarer 

  • Normaliserade inbäddningsvektorer krävs. Alla inbäddningsvektorer måste genereras från samma modell för att säkerställa kompatibilitet och prestanda. Det går inte att blanda inbäddningsvektorer från olika modeller.

Exempel 1 

CosineSimilarity ( "[-0.043686170000000003333, 0.042094484000000001456, ... ]" ; "[-0.049242082999999998993, 0.040926795000000001923, ... ]" ) returnerar .90848158767415143622 för en viss modell.

Exempel 2 

CosineSimilarity ( v1 ; v2 ) returnerar .54682693950088512302 för en viss modell när fälten v1 och v2 innehåller inbäddningsvektorer för texten "Claris" respektive "Claire".