Interroger des vecteurs

Bases de données vectorielles pour les intégrations avec Pinecone

James Chapman

Curriculum Manager, DataCamp

La puissance de l’interrogation

 

  • Interroger : renvoyer les vecteurs les plus sémantiquement proches d’un vecteur d’entrée

Une saisie utilisateur est encodée et utilisée pour interroger une base de vecteurs Pinecone.

Bases de données vectorielles pour les intégrations avec Pinecone

La méthode .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}}
Bases de données vectorielles pour les intégrations avec Pinecone

La méthode .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}}
Bases de données vectorielles pour les intégrations avec Pinecone

Read units (RUs) pour les requêtes

 

  • Pour les requêtes, les RUs sont plus difficiles à estimer
  • Dépendent de :
    • Nb d’enregistrements dans l’espace de noms
    • Taille des enregistrements
      • Dimensionnalité du vecteur
      • Quantité de métadonnées

Tableau des RUs consommées lors des requêtes.

1 https://docs.pinecone.io/guides/organizations/manage-cost/understanding-cost#query
Bases de données vectorielles pour les intégrations avec Pinecone

Mesures de distance

 

La similarité cosinus : l’angle entre deux vecteurs.

1 https://docs.pinecone.io/guides/indexes/understanding-indexes#distance-metrics
Bases de données vectorielles pour les intégrations avec Pinecone

Mesures de distance

 

La distance euclidienne : la distance en ligne droite entre deux vecteurs.

1 https://docs.pinecone.io/guides/indexes/understanding-indexes#distance-metrics
Bases de données vectorielles pour les intégrations avec Pinecone

Mesures de distance

 

Le produit scalaire : valeur calculée à partir de l’angle entre les vecteurs.

1 https://docs.pinecone.io/guides/indexes/understanding-indexes#distance-metrics
Bases de données vectorielles pour les intégrations avec Pinecone

Définir la mesure de distance

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

metric='dotproduct',
spec=ServerlessSpec( cloud='aws', region='us-east-1' ) )
  • metric'cosine', 'euclidean', 'dotproduct'
Bases de données vectorielles pour les intégrations avec Pinecone

À vous d’interroger !

Bases de données vectorielles pour les intégrations avec Pinecone

Preparing Video For Download...