qdrant-indexing-performance-optimization
Corrige problemas de lentidão na indexação e inserção de dados no Qdrant.
O que ela faz
Esta ferramenta ajuda a identificar e corrigir problemas que deixam o processo de indexação e envio de dados para o Qdrant muito lento. Ela sugere ajustes para acelerar o upload e a busca de informações.
Quando usar
- ✓Quando o envio de dados para o Qdrant está demorando muito.
- ✓Se o processo de otimização do índice está travado ou leva tempo demais.
- ✓Quando a construção do índice HNSW (um tipo de índice para busca rápida) está muito lenta.
Exemplo do que pedir para a IA
“Minha indexação no Qdrant está muito lenta, o que posso fazer?”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
A ferramenta analisa se o problema está no seu computador/rede ou no servidor Qdrant. Ela sugere otimizar o envio de dados em lotes, ajustar configurações do Qdrant como o número de 'shards' e a estratégia de indexação para acelerar o processo.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add github/awesome-copilot --skill qdrant-indexing-performance-optimizationOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/github/awesome-copilot/main/skills/qdrant-performance-optimization/indexing-performance-optimization/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
O Que Fazer Quando a Indexação do Qdrant Está Muito Lenta
O Qdrant NÃO constrói índices HNSW imediatamente. Segmentos pequenos usam força bruta até excederem indexing_threshold_kb (padrão: 20 MB). A busca durante esta janela é mais lenta por design, não um bug.
- Entenda o otimizador de indexação Otimizador de Indexação
Uploads/Ingestão Muito Lentos
Use quando: chamadas de API de upload ou upsert estão lentas. Identifique o gargalo: lado do cliente (rede, loteamento) vs. lado do servidor (CPU, E/S de disco)
Para o lado do cliente, otimize o loteamento e o paralelismo:
- Use upserts em lote (64-256 pontos por solicitação) API de Pontos
- Use 2-4 fluxos de upload paralelos
Para o lado do servidor, otimize a configuração do Qdrant e a estratégia de indexação:
- Crie mais shards (3-12), cada shard tem um worker de atualização independente Sharding
- Crie índices de payload antes que os HNSW sejam construídos (necessário para índice vetorial filtrável) Índice de Payload
Adequado para carga inicial em massa de grandes conjuntos de dados:
- Desabilite o HNSW durante a carga em massa (defina
indexing_threshold_kbcomo muito alto, restaure depois) Parâmetros da Coleção - Definir
m=0para desabilitar HNSW é legado, use umindexing_threshold_kbalto em vez disso
Cuidado, uploads rápidos sem indexação podem usar temporariamente mais RAM e degradar o desempenho da busca até que o otimizador alcance.
Veja https://search.qdrant.tech/md/documentation/tutorials-develop/bulk-upload/
Otimizador Travado ou Demorando Muito
Use quando: o otimizador está rodando por horas, sem terminar.
- Verifique o progresso real através do endpoint de otimizações (v1.17+) Monitoramento de Otimização
- Grandes mesclagens e reconstruções de HNSW levam legitimamente horas em grandes conjuntos de dados
- Verifique a CPU e a E/S de disco (HNSW é limitado por CPU, mesclagem é limitada por E/S, HDD não é viável)
- Se
optimizer_statusmostrar um erro, verifique os logs por disco cheio ou segmentos corrompidos
Tempo de Construção do HNSW Muito Alto
Use quando: a construção do índice HNSW domina o tempo total de indexação.
- Reduza
m(padrão 16, bom para a maioria dos casos, 32+ raramente necessário) Parâmetros HNSW - Reduza
ef_construct(100-200 é suficiente) Configuração HNSW - Mantenha
max_indexing_threadsproporcional aos núcleos da CPU Configuração - Use GPU para indexação Indexação com GPU
Índice HNSW para Coleções Multi-Tenant
Se você tem um caso de uso multi-tenant onde todos os dados são divididos por algum campo de payload (por exemplo, tenant_id), você pode evitar a construção de um índice HNSW global e, em vez disso, confiar em payload_m para construir o índice HNSW apenas para subconjuntos de dados.
Pular o índice HNSW global pode reduzir significativamente o tempo de indexação.
Veja Coleções Multi-Tenant para detalhes.
Índices de Payload Adicionais Estão Muito Lentos
O Qdrant constrói links HNSW extras para todos os índices de payload para garantir que a qualidade da busca vetorial filtrada não se degrade.
Alguns índices de payload (por exemplo, campos text com textos longos) podem ter um número muito alto de valores únicos por ponto, o que pode levar a um longo tempo de construção do HNSW.
Você pode desabilitar a construção de links HNSW extras para um índice de payload específico e, em vez disso, confiar em estratégias ligeiramente mais lentas no tempo de consulta, como ACORN.
Leia mais sobre como desabilitar links HNSW extras na documentação
Leia mais sobre ACORN na documentação
O Que NÃO Fazer
- Não crie índices de payload DEPOIS que o HNSW foi construído (quebra o índice vetorial filtrável)
- Não use
m=0para uploads em massa em uma coleção existente, isso pode descartar o HNSW existente e causar longas reindexações - Não faça upload de um ponto por vez (o overhead por solicitação domina)
Perguntas frequentes
Por que a busca é mais lenta enquanto os dados estão sendo indexados?
O Qdrant não cria o índice HNSW imediatamente. Ele usa um método mais simples e rápido para dados menores, que é mais lento para buscas. Isso muda quando os dados atingem um certo tamanho ou são otimizados.
O que são 'shards' e como eles ajudam?
'Shards' são como divisões dos seus dados. Ter mais 'shards' permite que o Qdrant processe atualizações e indexações em paralelo, acelerando o processo geral.
Devo criar índices de 'payload' antes ou depois do HNSW?
É recomendado criar índices de 'payload' (informações adicionais associadas aos seus dados) antes de construir o índice HNSW. Isso garante que a busca filtrada funcione corretamente e pode otimizar o tempo total de indexação.
Detalhes
Descrição original do autor
Diagnoses and fixes slow Qdrant indexing and data ingestion. Use when someone reports 'uploads are slow', 'indexing takes forever', 'optimizer is stuck', 'HNSW build time too long', or 'data uploaded but search is bad'. Also use when optimizer status shows errors, segments won't merge, or indexing threshold questions arise.
repo: github/awesome-copilot
Popularidade
- Estrelas no GitHub
- 40 mil
- Posição no ranking
- #5303
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
acquire-codebase-knowledge
Ajuda seu agente a entender e documentar um projeto de código existente. É útil para novas pessoas entrarem no projeto ou para ter uma visão geral da arquitetura.
github/awesome-copilot
acreadiness-assess
Faz seu agente avaliar a prontidão de um projeto para IA e gerar um relatório. É útil para entender o quão bem um projeto está preparado para usar ferramentas de IA.
github/awesome-copilot
acreadiness-generate-instructions
Ajuda seu agente a criar instruções para ferramentas de IA baseadas em uma avaliação. É útil para melhorar a forma como a IA interage com o código e fecha lacunas identificadas.
github/awesome-copilot
acreadiness-policy
Faz seu agente ajudar a definir ou aplicar políticas para avaliação de projetos de IA. É útil para padronizar a forma como os projetos são avaliados e garantir conformidade.
github/awesome-copilot
Skills parecidas
clickhouse-io
Ajuda seu agente a otimizar consultas e esquemas no banco de dados ClickHouse. Ele aplica as melhores práticas para cargas de trabalho analíticas de alta performance. Use quando consultas analíticas demoram muito.
affaan-m/ECC
scientific-db-pubmed-database
Ajuda seu agente a buscar artigos científicos na área biomédica. É útil para pesquisas que precisam de informações médicas específicas.
affaan-m/ECC
scientific-db-uspto-database
Permite ao agente consultar dados oficiais de patentes e marcas registradas dos EUA. É útil para pesquisas de propriedade intelectual.
affaan-m/ECC