Interrogare vettori per la ricerca semantica
In questo esercizio creerai un vettore di query a partire dalla domanda: 'What is in front of the Notre Dame Main Building?'. Usando questa query incorporata, interrogherai il namespace 'squad_dataset' dell'indice 'pinecone-datacamp' e otterrai i cinque vettori più simili.
Questo esercizio fa parte del corso
Database vettoriali per Embeddings con Pinecone
Istruzioni dell'esercizio
- Inizializza il client Pinecone con la tua chiave API (il client OpenAI è disponibile come
client). - Crea un vettore di query generando l'embedding di
querycon lo stesso modello di embedding di OpenAI che hai usato per gli altri vettori. - Interroga il namespace
"squad_dataset"usandoquery_emb, restituendo i cinque risultati più simili.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Initialize the Pinecone client
pc = Pinecone(api_key="____")
index = pc.Index('pinecone-datacamp')
query = "What is in front of the Notre Dame Main Building?"
# Create the query vector
query_response = ____(
input=____,
model="text-embedding-3-small"
)
query_emb = query_response.data[0].embedding
# Query the index and retrieve the top five most similar vectors
retrieved_docs = ____
for result in retrieved_docs['matches']:
print(f"{result['id']}: {round(result['score'], 2)}")
print('\n')