Pular para o conteúdo principal

Dimensionar a taxa de transferência do endpoint de Pesquisa de IA com QPS alto

info

Visualização

Esse recurso está em Prévia Pública.

Por default, endpoints padrão suportam 20–200 QPS dependendo do tamanho do índice. Aplicações em tempo real, como barras de pesquisa, sistemas de recomendação e correspondência de entidades, frequentemente exigem 100 a 1.000+ QPS. Somente em endpoints padrão, é possível definir um QPS alvo. A Databricks provisiona a infraestrutura para melhor corresponder àquele nível de taxa de transferência (melhor esforço, não garantido).

importante

Configurar um alvo de QPS prevê capacidade adicional, o que aumenta o custo do endpoint. Você é cobrado por esta capacidade adicional independentemente do tráfego de queries real. O escalonamento da taxa de transferência é de melhor esforço e não é garantido durante a Prévia Pública.

Usar alta QPS quando:

  • Seu aplicativo requer mais de 50 QPS de taxa de transferência sustentada.
  • Você recebe erros 429 (excesso de solicitações) sob carga normal.
  • A latência é comprometida com o aumento do tráfego, mesmo quando a utilização média aparenta ser baixa.

Requisitos

  • Alta QPS está disponível apenas para endpoints padrão. Endpoints otimizados para armazenamento não são suportados.
  • Use a autenticação OAuth para entidade de serviço e o URL do índice para cargas de trabalho de produção de alto QPS. Tokens de acesso pessoal (PATs) e o URL de consulta do workspace são apropriados para prototipagem, mas não usam a rota de consulta otimizada e são limitados a algumas dezenas de QPS.
  • Para índices Delta Sync que usam modelos de incorporação gerenciados para consultas de texto, a rota de consulta otimizada não está disponível quando o workspace usa listas de acesso IP ou conectividade privada, como o Google Cloud Private Serviço Connect. Nessa configuração, o endpoint pode não atingir o QPS de destino configurado.

Configurar QPS alvo

Defina um QPS alvo ao criar um novo endpoint ou ao atualizar um existente. A capacidade adicional necessária para melhor corresponder à taxa de transferência de destino é provisionada automaticamente. Na Pré-visualização Pública, o dimensionamento da taxa de transferência é baseado no melhor esforço e não é garantido: o QPS real depende do tamanho do seu índice, da dimensionalidade do vetor, da complexidade da consulta e do uso do filtro.

Ao criar um novo endpoint:

  1. Na barra lateral esquerda, clique em Compute .

  2. Clique na tab Pesquisa de IA e clique em Criar endpoint .

    Criar compute de pesquisa de IA.

  3. Em Configurações avançadas , insira o valor de QPS alvo .

    Crie a caixa de diálogo do endpoint de Pesquisa de AI.

Ao atualizar um endpoint existente:

  1. Acesse a página de detalhes do endpoint.

  2. No painel direito, clique no ícone de lápis Ícone de lápis. ao lado de **QPS alvo**.

    Editar QPS alvo.

  3. Insira o novo valor e clique em Salvar .

    Insira o valor de QPS de destino.

Consultar a URL do Índice

Depois que o estado de escala do endpoint for SCALING_CHANGE_APPLIED, envie consultas ao URL do índice usando um token OAuth de entidade de serviço. Este URL é necessário para usar a capacidade de consulta adicional provisionada por target_qps.

Para aplicativos Python, chame get_index() uma vez e reutilize o objeto de índice retornado. O Python SDK envia queries para a URL do Índice.

Python
from databricks.ai_search.client import AISearchClient

client = AISearchClient(
service_principal_client_id="...",
service_principal_client_secret="...",
workspace_url="https://<workspace-url>",
)

index = client.get_index(endpoint_name="my-high-qps-endpoint", index_name="catalog.schema.index")

# Reuse this index object for every query.
index.similarity_search(query_vector=[...], columns=["id", "text"], num_results=10)

Para aplicativos REST ou não-Python, primeiro obtenha o URL do índice e, em seguida, envie solicitações de consulta para esse URL. O token deve ser um token OAuth para entidade de serviço.

sh
export WORKSPACE_URL=https://<workspace-url>
export INDEX_NAME=catalog.schema.index
export TOKEN=<oauth-token>

export INDEX_URL=$(curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"$WORKSPACE_URL/api/2.0/vector-search/indexes/$INDEX_NAME" \
| jq -r '.status.index_url')

case "$INDEX_URL" in
http://*|https://*) ;;
*) INDEX_URL="https://$INDEX_URL" ;;
esac

curl -X POST \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
"$INDEX_URL/query" \
--data '{"num_results": 10, "query_vector": [...], "columns": ["id", "text"]}'

Não use o URL de query do workspace, como /api/2.0/vector-search/indexes/<index_name>/query, para tráfego de produção de alto QPS. Esse URL não usa a rota de consulta otimizada e pode retornar erros 429 antes que o endpoint atinja o QPS de destino configurado.

Como o dimensionamento se aplica

Após definir um QPS de destino, a capacidade necessária é provisionada automaticamente. O novo nível de Taxa de transferência se aplica após o provisionamento ser concluído; não é necessário sincronizar os índices para acionar a alteração.

nota

A tentativa de atualizar o QPS alvo enquanto uma operação de escalonamento está em andamento retorna um erro RESOURCE_CONFLICT. Aguarde a conclusão da operação atual antes de tentar novamente.

Solucionar problemas de erros 429

Para cargas de trabalho de alto QPS, use estas verificações para encontrar o gargalo:

  • Se você usa um PAT ou a URL de consulta do workspace, mude para a autenticação OAuth da entidade de serviço e a URL do índice.
  • Se scaling_info.state for SCALING_CHANGE_IN_PROGRESS, aguarde até que o estado mude para SCALING_CHANGE_APPLIED.
  • Se seu aplicativo enviar queries de vetor com query_vector, o modelo de embedding não estará no caminho da query. Se os erros 429 continuarem após a conclusão do dimensionamento, reduza a concorrência da solicitação ou defina um target_qps mais alto.
  • Se o aplicativo enviar consultas de texto para um índice Delta Sync com modelos de incorporação gerenciados pelo Databricks, o modelo de incorporação pode ser o gargalo. Use um modelo de incorporação menor, como databricks-qwen3-embedding-0-6b, em vez de databricks-gte-large-en, ou use um endpoint provisionado de Taxa de transferência para Foundation Model APIs ou outro endpoint dedicado de Model Serving para incorporações.

Limitações

  • No autoscale : é preciso definir o QPS alvo manualmente com base no tráfego esperado. Se o tráfego exceder o nível de provisionamento, erros 429 ocorrerão. Ver Plano para picos de consulta
  • Somente endpoints padrão: endpoints otimizados para armazenamento não target_qps suportam.
  • Rota otimizada necessária : o QPS de destino configurado se aplica ao tráfego que usa autenticação OAuth de entidade de serviço e o URL do índice. O tráfego PAT e o tráfego de URL de consulta do workspace são limitados a algumas dezenas de QPS.
  • Modelos de incorporação gerenciados podem adicionar um segundo limite : para índices Delta Sync que usam um modelo de incorporação gerenciado para consultas de texto, a taxa de transferência de consulta também depende do endpoint de servindo modelo de incorporação. Aumente a capacidade de servindo modelo, use taxa de transferência provisionada ou use incorporações autogerenciadas para uma taxa de transferência de consulta previsível.