Cotas de recuperação de agentes

OCloud de Confiance by S3NS usa cotas para garantir a imparcialidade e reduzir picos no uso e na disponibilidade de recursos. Uma cota restringe a alocação de um recurso doCloud de Confiance para uso do seu projeto do Cloud de Confiance . As cotas se aplicam a vários tipos de recursos, incluindo hardware, software e componentes de rede. Por exemplo, elas podem restringir o número de chamadas de API para um serviço, o número de balanceadores de carga usados simultaneamente pelo projeto ou o número de projetos que podem ser criados. As cotas protegem a comunidade de usuários doCloud de Confiance , impedindo a sobrecarga de serviços. Elas também ajudam você a gerenciar seus próprios recursos do Cloud de Confiance .

O sistema de cotas do Cloud faz o seguinte:

Na maioria dos casos, quando você tenta consumir mais de um recurso do que a cota permite, o sistema bloqueia o acesso ao recurso, e a tarefa que você está tentando executar falha.

As cotas geralmente se aplicam ao nível do projeto do Cloud de Confiance . O uso de um recurso em um projeto não afeta a cota disponível em outro. Em um projeto do Cloud de Confiance , as cotas são compartilhadas entre todos os aplicativos e endereços IP.

Saiba mais em Visão geral das cotas do Cloud.

Na recuperação de agente (antiga pesquisa vetorial 2.0), as cotas são aplicadas para proteger o serviço, garantir o compartilhamento justo da capacidade entre projetos e oferecer desempenho e custo mais previsíveis. As cotas são rastreadas de forma independente por região. Por exemplo, o uso em us-central não afeta sua cota em europe-west4.

Métricas

Todos os nomes de métricas são prefixados com vectorsearch.googleapis.com/.

Cotas de taxa (solicitações/min e bytes/min)

Para cotas de taxa de dados, as cotas são avaliadas por minuto e se aplicam por projeto e por região (ou multirregião) e, opcionalmente, por coleção.

Cada chamada de API aceita incrementa o contador em uma solicitação (ou N bytes para cotas de bytes). Os contadores são por minuto do calendário e usam uma avaliação de janela deslizante. Não há uma redefinição completa em :00.

Você pode executar no limite continuamente sem ver um efeito de "recarga".

Quando um contador excede o limite, as solicitações adicionais retornam RESOURCE_EXHAUSTED (HTTP 429) com reason="RATE_LIMIT_EXCEEDED" e o nome exato da métrica no campo quota_metric.

Cotas de taxa do plano de controle

As cotas a seguir se aplicam ao ciclo de vida dos recursos e às operações de leitura e listagem em coleções e índices para um determinado projeto e região.

Escopo: por projeto e por região

Unidade: 1/min

Limites: solicitações por minuto.

Métrica Contagem
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

Solicitações de operações de longa duração (LRO)

As cotas a seguir se aplicam a operações de leitura, listagem, cancelamento e exclusão de longa duração para um determinado projeto e região.

Escopo: por projeto e por região

Unidade: 1/min

Limites: solicitações por minuto.

Métrica Contagem
lro_requests operations.get
operations.list
operations.cancel
operations.delete

Cotas de taxa do plano de dados

As cotas a seguir se aplicam a objetos de dados, consultas e tráfego de pesquisa para um determinado projeto, região e coleção.

Observação: as cotas de solicitações de pesquisa (search_requests) são consumidas para pesquisa de texto e pesquisa semântica.

Escopo: por projeto, por região, por coleta

Unidade: 1/min

Limites: solicitações por minuto e por coleta

Métrica Contagem
data_object_writes dataObjects.create
dataObjects.update
dataObjects.delete\
Cada objeto de dados incluído em
batchCreate
batchUpdate
batchDelete
data_object_reads dataObjects.get
query_requests dataObjects.query (consultas de filtro somente de metadados)
search_requests dataObjects.search ao executar uma ANN densa ou esparsa.
knn_search_requests dataObjects.search ao executar uma pesquisa exaustiva de KNN.
batch_search_requests dataObjects.batchSearch (uma solicitação, independente das subpesquisas)

Cotas de capacidade de processamento do plano de dados

As cotas a seguir se aplicam a bytes gravados por minuto para um determinado projeto, região e coleta.

Escopo: por projeto, por região, por coleta

Unidade: 1/min

Limites: solicitações por minuto e por coleta

Métrica Contagem
data_object_write_bytes A soma dos dados serializados e bytes de vetor gravados por todas as chamadas de
create, update, delete, batchCreate, batchUpdate e
batchDelete para coleções, objetos de dados e índices.

Operações em lote

  • batchCreate, batchUpdate, batchDelete dataObjects: cada objeto de dados individual na solicitação conta como uma gravação em data_object_writes e contribui com o tamanho serializado em bytes para data_object_write_bytes.

  • batchSearch dataObjects: conta como uma solicitação em relação a batch_search_requests, não importa quantas subpesquisas estejam agrupadas. A pesquisa em lote faz com que a cota de subpesquisas também seja contada.

Cotas de alocação (contagem atual)

As cotas de alocação são uma contagem atual.

Os contadores são uma contagem em tempo real de recursos ou operações em andamento pertencentes ao projeto.

A contagem aumenta na criação de recursos ou no início da operação e diminui na exclusão ou na conclusão da operação.

Quando o limite é atingido, a próxima chamada de criação retorna RESOURCE_EXHAUSTED. Exclua um recurso atual ou aguarde a conclusão de uma LRO para liberar cota.

Cotas de alocação do plano de controle

As cotas a seguir se aplicam ao número de recursos ou operações em andamento que um projeto pode ter para um determinado projeto e região, incluindo:

  • Coleções
  • Índices
  • Operações simultâneas de criação, importação e exportação em coleções, objetos de dados e índices

Escopo: por projeto e por região

Unidade: 1

Limites: contagens absolutas (cotas precisas)

Métrica Contagem
collections O número de coleções que existem no projeto/região.
indexes O número de índices (somados em todas as coleções) no projeto/região.
concurrent_index_operations As LROs de índice em andamento (criar/atualizar/excluir).
concurrent_collection_operations LROs de coleta em andamento (criar/atualizar/excluir).
concurrent_data_object_imports As LROs dataObjects.import em andamento.
concurrent_data_object_exports As LROs dataObjects.export em andamento.

Incorporação automática

O embedding automático usa a API Gemini na Vertex AI (aiplatform.googleapis.com). Cada solicitação de API conta para search_requests ou data_object_writes e a chamada de embedding conta para as cotas de previsão. Verifique se as duas APIs têm espaço livre.

Exemplos de uso

As seções a seguir descrevem como diferentes cenários de uso afetam as cotas.

Carga de trabalho de gravação contínua

Você está ingerindo documentos (dados mais um vetor denso de 768 dimensões, cerca de 4 KB) em uma única coleção no us-central1. Duas cotas são aplicadas simultaneamente:

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

Você está limitado pelo teto que atingir primeiro. Com objetos pequenos, a cota de taxa de solicitação geralmente é vinculada. Com objetos grandes, a cota de bytes é vinculada.

Verifique as duas métricas no console Cloud de Confiance para saber qual está mais próxima do limite.

Carga de trabalho com muitas pesquisas

Uma carga de trabalho de serviço que envia consultas de ANN para uma única coleção consome search_requests. Se o pico de consultas por segundo (QPS) se aproximar do limite por coleção, solicite um aumento ou distribua o tráfego em várias coleções na mesma região.

Muitas coleções pequenas

Se você planeja criar mais coleções do que o limite de collections do seu projeto permite, solicite um aumento antes de começar a criar. Caso contrário, a chamada de criação que exceder o limite vai falhar com RESOURCE_EXHAUSTED.

Um batchSearch que contém 10 subpesquisas consome exatamente um batch_search_requests, mas cada subpesquisa ainda conta para a respectiva métrica por subpesquisa apenas no nível do lote externo. Planeje a distribuição de dados em lote de acordo com a necessidade.

Como visualizar cotas

Para conferir suas cotas:

  1. Abra a página IAM e administrador > Cotas no console do Cloud de Confiance .
  2. Filtre pelo serviço Vector Search API.
  3. Use a coluna Dimensões (por exemplo, local) para filtrar por região e por Coleção para cotas do plano de dados.

O limite efetivo atual para cada métrica é mostrado na página "Cotas" do console Cloud de Confiance ao lado do nome da métrica, filtrado por região e, para cotas do plano de dados, por "Coleção".

Definir alertas de cota

Recomendamos definir um alerta de 80% de utilização para as cotas de que sua carga de trabalho depende. Para mais informações, acesse Configurar alertas de cota e Usar métricas de cota em políticas de alerta.

Falhas

Uma solicitação rejeitada por exceder uma cota não é contabilizada na cota.

As solicitações que falham por outros motivos (INVALID_ARGUMENT, NOT_FOUND etc.) são contabilizadas na cota de taxa porque o serviço ainda precisa avaliá-las.

As falhas de validação de vector_schema são contabilizadas. Elas são rejeitadas na camada da API depois que a verificação de cota de taxa é feita.

Exceder cotas

Quando uma solicitação é limitada, a API retorna:

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

A mensagem de erro inclui a métrica exata que foi excedida.

Exemplo:

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

Quando isso acontecer, solicite um aumento de cota.

Os clientes precisam:

  • Tente de novo com espera exponencial e instabilidade para erros transitórios de limitação de taxa. Comece em cerca de 1 segundo e recue até cerca de 32 segundos.
  • Erros não tentar novamente causados por cotas de alocação (por exemplo, "too many collections"). Exclua um recurso ou solicite um aumento.
  • Distribua as gravações entre coleções ou regiões se uma única coleção criar pontos de acesso nas cotas de data_object_writes ou data_object_write_bytes.
  • Pré-aquecimento. Se você sabe que um lançamento vai exceder seus limites atuais, peça um aumento com alguns dias úteis de antecedência.

Solicitação de aumento de cota (QIR)

Para solicitar um aumento de cota:

  1. Abra a página IAM e administrador > Cotas no console do Cloud de Confiance .
  2. Selecione as linhas que você quer aumentar.
  3. Clique em Editar cotas, insira o novo valor e uma breve justificativa comercial e envie. Incluir:
    • O nome da métrica (por exemplo, vectorsearch.googleapis.com/search_requests).
    • A região e (para plano de dados) o ID da coleta.
    • Seu throughput de destino e uma breve descrição da carga de trabalho (constante ou com picos, QPS de pico esperado, tamanho esperado do conjunto de dados etc.).

A solicitação é encaminhada à equipe de recuperação de agentes para análise. A maioria dos aumentos de até duas vezes o valor padrão é aprovada automaticamente. Aumentos maiores podem exigir uma análise adicional.

Ver também