similarity-search-patterns
Implementa búsqueda de similitud en producción con bases de datos vectoriales
También disponible en: wshobson
La búsqueda de similitud vectorial es esencial para sistemas de búsqueda semántica y RAG, pero requiere selección cuidadosa de índices y ajuste. Esta habilidad proporciona patrones listos para usar con Pinecone, Qdrant, pgvector y Weaviate, incluyendo búsqueda híbrida y reranking.
Descargar el ZIP de la skill
Subir en Claude
Ve a Configuración → Capacidades → Skills → Subir skill
Activa y empieza a usar
Pruébalo
Usando "similarity-search-patterns". Configurar Qdrant para 1 millón de embeddings de productos con objetivo de 95% de recall
Resultado esperado:
- Colección creada con índice HNSW (m=16, ef_construct=64)
- Cuantización escalar habilitada (INT8) reduciendo memoria 4x
- Parámetros de búsqueda recomendados: ef=128 para 95% de recall a ~50ms P99
Usando "similarity-search-patterns". Búsqueda híbrida para documentos sobre 'optimización de machine learning'
Resultado esperado:
- Búsqueda vectorial recupera 20 documentos semánticamente similares
- BM25 filtra coincidencias exactas de términos en 'optimization'
- Resultados rerankeados combinan ambas señales con ponderación 0.6/0.4
Auditoría de seguridad
SeguroAll 31 static analysis findings are false positives. The scanner incorrectly flagged Markdown documentation syntax as executable code. Backticks are code fence markers, URLs are documentation links, and API key parameters represent secure credential handling. The skill contains Python code examples for vector database implementations with no security concerns.
Puntuación de calidad
Lo que puedes crear
Desarrollador de Aplicaciones RAG
Implementa generación aumentada por recuperación con búsqueda vectorial eficiente sobre embeddings de documentos. Soporta búsqueda híbrida combinando coincidencia semántica y por palabras clave para recuperación precisa de contexto.
Desarrollador de Motor de Recomendaciones
Construye sistemas de recomendación de vecinos más cercanos usando embeddings vectoriales. Aprovecha la indexación HNSW para consultas en menos de un segundo sobre millones de elementos con umbrales de recall configurables.
Ingeniero de Plataforma de Búsqueda
Despliega infraestructura de búsqueda de similitud en producción con pgvector de PostgreSQL o servicios gestionados. Implementa pipelines de pre-filtrado y reranking para calidad de búsqueda empresarial.
Prueba estos prompts
Necesito almacenar y buscar embeddings de documentos. Ayúdame a configurar un índice vectorial en Pinecone con similitud de coseno para embeddings de 1536 dimensiones. Incluye funciones de upsert y búsqueda con filtrado por metadatos.
Crea una función de búsqueda híbrida que combine similitud vectorial con coincidencia de palabras clave usando pgvector. Pondera la búsqueda vectorial en 0.7 y la búsqueda de texto completo en 0.3. Incluye el esquema SQL con índice HNSW.
Tengo 50 resultados de búsqueda vectorial pero necesito mejor ranking. Muéstrame cómo hacer reranking con un modelo cross-encoder. Incluye el código de sentence-transformers y explica la compensación entre latencia y precisión.
Tengo 10 millones de vectores y necesito latencia P99 menor a 100ms con 95% de recall. Recomienda un tipo de índice y parámetros para Qdrant. Explica las configuraciones de ef_construct, nprobe y cuantización para mi caso de uso.
Mejores prácticas
- Comienza con índice flat para conjuntos de datos pequeños (menos de 100K vectores) y migra a HNSW a medida que crecen los datos
- Siempre mide el recall en tu latencia objetivo antes de desplegar índices aproximados
- Usa pre-filtrado por metadatos para reducir el espacio de búsqueda antes de la comparación vectorial
Evitar
- Usar índices de vecinos más cercanos aproximados sin medir la degradación del recall
- Almacenar vectores sin cuantización cuando la memoria es limitada
- Consultar sin pre-filtros causando escaneos completos del índice en colecciones grandes
Preguntas frecuentes
¿Qué base de datos vectorial debería elegir para mi proyecto?
¿Cuál es la diferencia entre similitud de coseno y producto punto?
¿Cómo mejoro el recall de búsqueda sin sacrificar latencia?
¿Puedo actualizar vectores después de la inserción?
¿Qué dimensión de embeddings debería usar?
¿Cómo manejo búsqueda multilingüe?
Detalles del desarrollador
Autor
sickn33Licencia
MIT
Repositorio
https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/similarity-search-patternsRef.
main
Estructura de archivos