Interrogare i vettori

Database vettoriali per Embeddings con Pinecone

James Chapman

Curriculum Manager, DataCamp

La potenza del querying

 

  • Query: ottieni i vettori più simili semanticamente a un vettore di input

Un input utente viene incorporato e usato per interrogare un database vettoriale Pinecone.

Database vettoriali per Embeddings con Pinecone

Il metodo .query()

index.query(

vector=[-0.250919762305275, ...],
top_k=3
)
{'matches': [{'id': '1', 'score': 0.0478537641, 'values': []},
             {'id': '2', 'score': 0.046000585, 'values': []},
             {'id': '3', 'score': 0.0458319113, 'values': []}],
 'namespace': '',
 'usage': {'read_units': 5}}
Database vettoriali per Embeddings con Pinecone

Il metodo .query()

index.query(
    vector=[-0.250919762305275, ...],
    top_k=3,

include_values=True
)
{'matches': [{'id': '1', 'score': 0.0478537641, 'values': [-0.0131468913, ...]},
             {'id': '2', 'score': 0.046000585, 'values': [-0.0120476764, ...]},
             {'id': '3', 'score': 0.0458319113, 'values': [0.00285418332, ...]}],
 'namespace': '',
 'usage': {'read_units': 5}}
Database vettoriali per Embeddings con Pinecone

Read Units (RU) per le query

 

  • Per le query, le RU sono più difficili da stimare
  • Dipendono da:
    • N. di record nel namespace
    • Dimensione dei record
      • Dimensionalità del vettore
      • Quantità di metadati

Tabella delle RU consumate durante le query.

1 https://docs.pinecone.io/guides/organizations/manage-cost/understanding-cost#query
Database vettoriali per Embeddings con Pinecone

Metriche di distanza

 

La similarità coseno: mostra l'angolo tra due vettori.

1 https://docs.pinecone.io/guides/indexes/understanding-indexes#distance-metrics
Database vettoriali per Embeddings con Pinecone

Metriche di distanza

 

La distanza euclidea: mostra la distanza in linea retta tra due vettori.

1 https://docs.pinecone.io/guides/indexes/understanding-indexes#distance-metrics
Database vettoriali per Embeddings con Pinecone

Metriche di distanza

 

Il prodotto scalare: come il valore è calcolato dall'angolo tra i vettori.

1 https://docs.pinecone.io/guides/indexes/understanding-indexes#distance-metrics
Database vettoriali per Embeddings con Pinecone

Impostare la metrica di distanza

pc.create_index(
    name="datacamp-index", 
    dimension=1536,

metric='dotproduct',
spec=ServerlessSpec( cloud='aws', region='us-east-1' ) )
  • metric'cosine', 'euclidean', 'dotproduct'
Database vettoriali per Embeddings con Pinecone

Ora tocca a te interrogare!

Database vettoriali per Embeddings con Pinecone

Preparing Video For Download...