Dopo aver creato un indice PSA o PSC, puoi eseguire query per ottenere i vicini più prossimi.
Informazioni sulle query degli indici PSC
L'indirizzo di calcolo creato da un indice PSC può essere utilizzato per inviare query.
Nell'esempio seguente, sostituisci TARGET_IP
con l'indirizzo compute creato.
Informazioni sulle query degli indici PSA
Ogni DeployedIndex
ha un TARGET_IP
, che puoi recuperare
scheda IndexEndpoints
.
Eseguire una query su un indice
Per eseguire una query su un DeployedIndex
, connettiti al relativo TARGET_IP
sulla porta 10000
e chiama il metodo Match
o BatchMatch
. Inoltre, puoi eseguire query utilizzando DOC_ID
.
I seguenti esempi utilizzano lo strumento open source grpc_cli
per inviare GRpc
al server di indicizzazione di cui è stato eseguito il deployment.
gRPC
Nel primo esempio, invii una singola query utilizzando il metodo Match
.
./grpc_cli call ${TARGET_IP}:10000 google.cloud.aiplatform.container.v1.MatchService.Match 'deployed_index_id: "${DEPLOYED_INDEX_ID}", float_val: [-0.1,..]'
Nel secondo esempio, combini due query separate nella stessa richiesta BatchMatch
.
./grpc_cli call ${TARGET_IP}:10000 google.cloud.aiplatform.container.v1.MatchService.BatchMatch 'requests: [{deployed_index_id: "${DEPLOYED_INDEX_ID}", requests: [{deployed_index_id: "${DEPLOYED_INDEX_ID}", float_val: [-0.1,..]}, {deployed_index_id: "${DEPLOYED_INDEX_ID}", float_val: [-0.2,..]}]}]'
Devi effettuare chiamate a queste API da un client in esecuzione nello stesso [VPC con cui è stato eseguito il peering del servizio](#vpc-network-peering-setup).
Per eseguire una query utilizzando un DOC_ID
, utilizza il seguente esempio.
./grpc_cli call ${TARGET_IP}:10000 google.cloud.aiplatform.container.v1.MatchService.Match "deployed_index_id:'"test_index1"',embedding_id: '"606431"'"
In questo esempio, invii una query utilizzando limitazioni per token e numeriche.
./grpc_cli call ${TARGET_IP}:10000 google.cloud.aiplatform.container.v1.MatchService.Match 'deployed_index_id: "${DEPLOYED_INDEX_ID}", float_val: [1, 1], "sparse_embedding": {"values": [111.0,111.1,111.2], "dimensions": [10,20,30]}, numeric_restricts: [{name: "double-ns", value_double: 0.3, op: LESS_EQUAL}, {name: "double-ns", value_double: -1.2, op: GREATER}, {name: "double-ns", value_double: 0., op: NOT_EQUAL}], restricts: [{name: "color", allow_tokens: ["red"]}]'
Per saperne di più, vedi Descrizione delle librerie client.
Console
Segui queste istruzioni per eseguire query su un indice VPC dalla console.
- Nella sezione Vertex AI della console Google Cloud, vai a nella sezione Deployment e utilizzo. Seleziona Vector Search (Ricerca vettoriale).
- Seleziona l'indice VPC su cui eseguire la query. Si apre la pagina Informazioni indice.
- Scorri verso il basso fino alla sezione Indici di cui è stato eseguito il deployment e seleziona l'indice di cui vuoi eseguire la query. Viene visualizzata la pagina Informazioni sull'indice di cui è stato eseguito il deployment.
- Nella sezione Indice query, seleziona i parametri di query. Puoi scegliere di eseguire la query in base a un vettore o a un punto dati specifico.
- Esegui la query utilizzando lo strumento open source grpc_cli o l'SDK Vertex AI per Python.
Impostazioni relative al tempo di query che influiscono sulle prestazioni
I seguenti parametri relativi al momento della query possono influire su latenza, disponibilità e costo quando utilizzi la ricerca vettoriale. Queste linee guida si applicano alla maggior parte dei casi. Tuttavia, sperimenta sempre le configurazioni per assicurarti che funzionino per il tuo caso d'uso.
Per le definizioni dei parametri, consulta Parametri di configurazione dell'indice.
Parametro | Informazioni | Impatto sulle prestazioni |
---|---|---|
approximateNeighborsCount |
Indica all'algoritmo il numero di risultati approssimativi da recuperare da ciascun shard.
Il valore di |
L'aumento del valore di
La riduzione del valore di
|
setNeighborCount |
Specifica il numero di risultati che vuoi che la query restituisca. |
I valori inferiori o uguali a 300 mantengono un buon rendimento nella maggior parte dei casi d'uso. Per valori più elevati, esegui il test per il tuo caso d'uso specifico. |
fractionLeafNodesToSearch |
Controlla la percentuale di nodi foglia da visitare durante la ricerca dei vicini più prossimi. È correlato a leafNodeEmbeddingCount in
che più incorporamenti per nodo foglia, più dati esaminati per foglia.
|
L'aumento del valore di
La diminuzione del valore di
|
Passaggi successivi
- Scopri come aggiornare e ricreare l'indice.
- Scopri come filtrare le corrispondenze di vettori
- Scopri come monitorare un indice