Quote di recupero agente

Google Cloud utilizza le quote per garantire l'equità e ridurre i picchi di utilizzo e disponibilità delle risorse. Una quota limita la quantità di una Google Cloud risorsa che Google Cloud il progetto può utilizzare. Le quote si applicano a una serie di tipi di risorse, inclusi hardware, software e componenti di rete. Ad esempio, le quote possono limitare il numero di chiamate API a un servizio, il numero di bilanciatori del carico utilizzati contemporaneamente dal tuo progetto o il numero di progetti che puoi creare. Le quote proteggono la community degli utentiGoogle Cloud impedendo il sovraccarico dei servizi. Le quote ti aiutano inoltre a gestire le tue Google Cloud risorse.

Il sistema delle quote di Cloud esegue le seguenti operazioni:

Nella maggior parte dei casi, quando provi a utilizzare una risorsa per un volume maggiore di quello consentito dalla quota, il sistema blocca l'accesso alla risorsa e l'attività che stai tentando di eseguire non va a buon fine.

In genere, le quote si applicano a livello di Google Cloud progetto. L'utilizzo di una risorsa in un progetto non influisce sulla quota disponibile in un altro progetto. All'interno di un progetto Google Cloud , le quote vengono condivise tra tutte le applicazioni e gli indirizzi IP.

Per saperne di più, consulta Panoramica delle quote di Cloud.

In Agent Retrieval (precedentemente Vector Search 2.0), le quote vengono applicate per proteggere il servizio, garantire una condivisione equa della capacità tra i progetti e offrire prestazioni e costi più prevedibili. Le quote vengono monitorate in modo indipendente per regione. Ad esempio, l'utilizzo in us-central non influisce sulla quota in europe-west4.

Metriche

Tutti i nomi delle metriche hanno il prefisso vectorsearch.googleapis.com/.

Quote di frequenza (richieste/min e byte/min)

Per le quote di frequenza dei dati, le quote vengono valutate al minuto e si applicano per progetto e per regione (o multiregione) e, facoltativamente, per raccolta.

Ogni chiamata API accettata incrementa il contatore di una richiesta (o N byte per le quote di byte). I contatori sono per minuto di calendario e utilizzano una valutazione a finestra scorrevole (non esiste un hard reset a :00).

Puoi raggiungere il limite continuamente senza vedere un effetto di "ricarica".

Quando un contatore supera il limite, le richieste aggiuntive restituiscono RESOURCE_EXHAUSTED (HTTP 429) con reason="RATE_LIMIT_EXCEEDED" e il nome esatto della metrica nel campo quota_metric.

Quote di frequenza del control plane

Le seguenti quote si applicano al ciclo di vita delle risorse e alle operazioni di lettura ed elenco su raccolte e indici per un determinato progetto e una determinata regione.

Ambito: per progetto, per regione

Unità: 1/min

Limiti: richieste al minuto.

Metrica Conteggi
collection_management_requests collections.create
collections.update
collections.delete
collection_read_requests collections.get
collection_list_requests collections.list
index_management_requests indexes.create
indexes.update
indexes.delete
index_read_requests indexes.get
index_list_requests indexes.list

Richieste di operazioni a lunga esecuzione (LRO)

Le seguenti quote si applicano alle operazioni di lettura, elenco, annullamento ed eliminazione di lunga durata per un determinato progetto e una determinata regione.

Ambito: per progetto, per regione

Unità: 1/min

Limiti: richieste al minuto.

Metrica Conteggi
lro_requests operations.get
operations.list
operations.cancel
operations.delete

Quote di frequenza del piano dati

Le seguenti quote si applicano al traffico di oggetti dati, query e traffico dalla rete di ricerca per un progetto, una regione e una raccolta specifici.

Nota: le quote delle richieste di ricerca (search_requests) vengono utilizzate per la ricerca testuale e la ricerca semantica.

Ambito: per progetto, per regione, per raccolta

Unità: 1/min

Limiti: richieste al minuto, per raccolta

Metrica Conteggi
data_object_writes dataObjects.create
dataObjects.update
dataObjects.delete\
Ogni Oggetto di dati incluso in
batchCreate
batchUpdate
batchDelete
data_object_reads dataObjects.get
query_requests dataObjects.query (query di filtro solo per i metadati)
search_requests dataObjects.search quando esegui una rete neurale artificiale densa o sparsa.
knn_search_requests dataObjects.search quando esegui una ricerca KNN esaustiva.
batch_search_requests dataObjects.batchSearch (una richiesta indipendentemente dalle ricerche secondarie)

Quote di throughput del piano dati

Le seguenti quote si applicano ai byte scritti al minuto per un determinato progetto, una determinata regione e una determinata raccolta.

Ambito: per progetto, per regione, per raccolta

Unità: 1/min

Limiti: richieste al minuto, per raccolta

Metrica Conteggi
data_object_write_bytes La somma dei byte di dati serializzati e vettoriali scritti da tutte le chiamate
create, update, delete, batchCreate, batchUpdate e
batchDelete per raccolte, oggetti dati e indici.

Operazioni batch

  • batchCreate, batchUpdate, batchDelete dataObjects: ogni singolo oggetto dati nella richiesta viene conteggiato come una scrittura per data_object_writes e contribuisce con le sue dimensioni serializzate in byte a data_object_write_bytes.

  • batchSearch dataObjects: viene conteggiata come una richiesta per batch_search_requests, indipendentemente dal numero di ricerche secondarie raggruppate. La ricerca in batch comporta anche il conteggio della quota di ricerche secondarie.

Quote di allocazione (conteggio attuale)

Le quote di allocazione sono un conteggio attuale.

I contatori sono un conteggio in tempo reale delle risorse o delle operazioni in corso di proprietà del progetto.

Il conteggio aumenta con la creazione della risorsa o l'avvio dell'operazione e diminuisce con l'eliminazione o il completamento dell'operazione.

Quando viene raggiunto il limite, la chiamata di creazione successiva restituisce RESOURCE_EXHAUSTED. Elimina una risorsa esistente o attendi il completamento di un'operazione con esecuzione prolungata per liberare quota.

Quote di allocazione del control plane

Le seguenti quote si applicano al numero di risorse o operazioni in corso che un progetto può contenere per un determinato progetto e una determinata regione, tra cui:

  • Raccolte
  • Indici
  • Operazioni simultanee di creazione, importazione ed esportazione su raccolte, oggetti di dati e indici

Ambito: per progetto, per regione

Unità: 1

Limiti: conteggi assoluti (quote precise)

Metrica Conteggi
collections Il numero di raccolte esistenti nel progetto/nella regione.
indexes Il numero di indici (sommati in tutte le raccolte) nel progetto/nella regione.
concurrent_index_operations Le LRO dell'indice in corso (creazione/aggiornamento/eliminazione).
concurrent_collection_operations Le LRO di raccolta in corso (creazione/aggiornamento/eliminazione).
concurrent_data_object_imports Le LRO dataObjects.import in corso.
concurrent_data_object_exports Le LRO dataObjects.export in corso.

Auto-embedding

L'auto-embedding utilizza l'API Gemini in Vertex AI (aiplatform.googleapis.com). Ogni richiesta API viene conteggiata ai fini di search_requests o data_object_writes e la chiamata di embedding viene conteggiata ai fini delle quote di previsione. Assicurati che entrambe le API abbiano un margine di sicurezza.

Esempi di utilizzo

Le sezioni seguenti descrivono l'impatto dei diversi scenari di utilizzo sulle quote.

Workload di scrittura sostenuto

Stai importando documenti (dati più un vettore denso di 768 dimensioni, circa 4 kB) in una singola raccolta in us-central1. Vengono applicate contemporaneamente due quote:

data_object_writes        (requests per minute, per collection)
data_object_write_bytes   (bytes per minute, per collection)

Il limite è rappresentato dal massimo che raggiungi per primo. Con oggetti di piccole dimensioni, di solito viene applicata la quota del tasso di richieste. Con oggetti di grandi dimensioni, la quota di byte è vincolante.

Controlla entrambe le metriche nella console Google Cloud per sapere quale è più vicina al limite.

Workload ad alta intensità di ricerca

Un workload di pubblicazione che invia query ANN a una singola raccolta consuma search_requests. Se il picco di query al secondo (QPS) si avvicina al limite per raccolta, richiedi un aumento o distribuisci il traffico su più raccolte nella stessa regione.

Molte raccolte di piccole dimensioni

Se prevedi di creare più raccolte rispetto al limite collections del tuo progetto, richiedi un aumento prima di iniziare la creazione. In caso contrario, la chiamata di creazione che supera il limite non andrà a buon fine e verrà visualizzato l'errore RESOURCE_EXHAUSTED.

Un batchSearch contenente 10 sottoricerche consuma esattamente una batch_search_requests, ma ogni sottoricerca viene comunque conteggiata rispetto alla rispettiva metrica per sottoricerca solo a livello del batch esterno. Pianifica il fan-out dei batch di conseguenza.

Visualizzazione delle quote

Per visualizzare le quote:

  1. Apri la pagina IAM e amministrazione > Quote nella console Google Cloud .
  2. Filtra per il servizio Vector Search API.
  3. Utilizza la colonna Dimensioni (ad es. località) per filtrare in base alla regione e alla raccolta per le quote del piano dati.

Il limite effettivo corrente per ogni metrica è mostrato nella pagina Quote della console Google Cloud accanto al nome della metrica, filtrato per regione e, per le quote del piano dati, per raccolta.

Imposta avvisi quota

Ti consigliamo di impostare un avviso all'80% di utilizzo per le quote da cui dipende il tuo workload. Per saperne di più, consulta Configura gli avvisi quota e Utilizza le metriche di quota nelle policy di avviso.

Errori

Una richiesta rifiutata perché ha superato una quota non viene conteggiata ai fini della quota stessa.

Le richieste che non vanno a buon fine per altri motivi (INVALID_ARGUMENT, NOT_FOUND e così via) vengono conteggiate ai fini della quota di frequenza perché il servizio deve comunque valutarle.

Vengono conteggiati gli errori di convalida di vector_schema. Vengono rifiutate a livello di API dopo il controllo della quota di frequenza.

Superamento delle quote

Quando una richiesta viene limitata, l'API restituisce:

gRPC:   RESOURCE_EXHAUSTED (8)
HTTP:   429 Too Many Requests

Il messaggio di errore include la metrica esatta che è stata superata.

Ad esempio:

Quota exceeded for quota metric 'vectorsearch.googleapis.com/search_requests'
and limit 'SearchRequestsPerMinutePerProjectPerRegionPerCollection' of service
'vectorsearch.googleapis.com' for consumer 'project_number:123456789012'.

In questo caso, puoi richiedere un aumento della quota.

I clienti devono:

  • Riprova con backoff esponenziale e jitter per gli errori temporanei di limitazione di frequenza. Inizia con circa 1 secondo e aumenta fino a circa 32 secondi.
  • Non riprovare in caso di errori causati dalle quote di allocazione (ad esempio, "too many collections"). Elimina una risorsa o richiedi un aumento.
  • Distribuisci le scritture tra raccolte o regioni se una singola raccolta genera hotspot per le quote data_object_writes o data_object_write_bytes.
  • Preriscaldamento. Se sai che un lancio supererà i tuoi limiti attuali, richiedi un aumento con almeno qualche giorno lavorativo di anticipo.

Richiesta di aumento della quota (QIR)

Per richiedere un aumento della quota:

  1. Apri la pagina IAM e amministrazione > Quote nella console Google Cloud .
  2. Seleziona le righe che vuoi aumentare.
  3. Fai clic su Modifica quote, inserisci il nuovo valore e una breve motivazione aziendale, quindi invia. Includi:
    • Il nome della metrica (ad esempio vectorsearch.googleapis.com/search_requests).
    • La regione e (per il piano dati) l'ID raccolta.
    • Il throughput target e una breve descrizione del workload (stabile o con picchi, QPS di picco previsto, dimensione del set di dati prevista e così via).

La richiesta viene inoltrata al team di Agent Retrieval per la revisione. La maggior parte degli aumenti fino a 2 volte il valore predefinito viene approvata automaticamente. Aumenti maggiori potrebbero richiedere una revisione aggiuntiva.

Argomenti correlati