Elasticsearch 9.0 y 8.18: preparado para desarrolladores, con una ración extra de velocidad asombrosa, 5 veces más rápido que OpenSearch

Estamos orgullosos de lanzar las versiones 9.0 y 8.18 de Elasticsearch para usuarios de Elastic Cloud y autogestionados. Las capacidades de estas versiones ya están disponibles para nuestros usuarios de Elastic Cloud Serverless, que tuvieron acceso a Elasticsearch totalmente gestionado en AWS,Azure,y GCP.
Ofreciendo una mejor cuantización binaria (BBQ) aún más rápido — 5 veces más rápido que OpenSearch
BBQ (Better Binary Quantization), introducido por primera vez en la versión 8.16 como una vista previa técnica, ahora está disponible de forma general, ofreciendo una alternativa de alto rendimiento a las técnicas tradicionales de cuantización como la cuantización por producto (PQ).
Nuestros clientes, como Roboflow, almacenan y actualizan cantidades cada vez mayores (es decir, miles de millones) de datos vectoriales, y en el pasado tuvieron que considerar usar algo como PQ para mantener su relevancia y rendimiento pero aprovechar de forma más eficaz su hardware existente. Ahora tienen acceso a BBQ.
BBQ ahora cuenta con un algoritmo actualizado que ofrece hasta un 20 % más de recuperación y un rendimiento 8x–30x más rápido con SIMD para una búsqueda eficiente y precisa. Elastic es el primer proveedor de bases de datos vectoriales en implementar este enfoque, permitiendo que las cargas de trabajo de búsqueda en el mundo real logren resultados más rápidos mientras reducen los recursos informáticos.
Como parte de nuestra misión de hacer de Apache Lucene la mejor base de datos vectorial, y como campeones de llevar estas innovaciones a la comunidad, recientemente fusionamos estas capacidades con Lucene.
En comparación con OpenSearch FAISS, Elasticsearch BBQ ofrece consultas hasta 5 veces más rápidas y un rendimiento 3.9 veces mayoren todos los niveles de recuperación, todo mientras mantiene la misma precisión. Diseñado para la velocidad y la eficiencia, BBQ reduce significativamente la latencia, por lo que es ideal para cargas de trabajo de producción a gran escala.
La reclasificación vectorial cuantizada ahora cuenta con una API simplificada, lo que mejora aún más la experiencia del desarrollador. BBQ realiza un escaneo completo del índice usando un vector predictor pequeño, muestrea en exceso los resultados y luego los vuelve a clasificar usando el vector más grande. Con la nueva API, simplemente define la tasa de exceso de muestreo y deja que Elasticsearch maneje la reclasificación sin problemas.
¡Con esta versión, los modelos de interacción multietapa como ColPali y ColBERT ahora también son compatibles con MaxSim!
Búsqueda semántica y reordenamiento semántico listos para usar
Con esta versión, los desarrolladores tienen acceso de fábrica a ELSER, nuestro modelo vectorial disperso, y e5, como un modelo vectorial denso multilingüe optimizado para búsqueda semántica. La reclasificación semántica también está disponible con nuestro modelo, Elastic Rerank, que puede ser de beneficio único, para quienes desean mejorar su relevancia sin cambiar la forma de sus datos almacenados.
Traer tu propia selección de modelos para agregar a lo que ya tienes de Elastic no debería ser un problema. Con nuestra API de inferencia abierta, es fácil usar la integración recién añadida para usar las nuevas incrustaciones de JinaAI y capacidades de reclasificación o la reclasificación semántica de Watsonx.ai.
Como ejemplo, la búsqueda semántica comienza con un único mapeo semantic_text:
PUT my-data
{
"mappings": {
"properties": {
"my_semantic_field": {
"type": "semantic_text" }}}}Al no especificar un punto final de inferencia, aprovechas nuestro modelo semántico predeterminado: ELSER.
Si quieres usar el último modelo de incrustación de Jina AI jina-embeddings-v3, simplemente especifica el punto final de inferencia que se utilizará con semantic_text en su lugar. Para tu comodidad, si quieres probar esto, consulta este cuaderno de Jupyter para probarlo hoy mismo.
PUT my-data-with-jina
{ "mappings": {
"properties": {
"my_semantic_field": {
"type": "semantic_text",
"inference_id": "my-jinaai-endpoint" }}}}Ahora, hagamos tu primera búsqueda semántica en lenguaje natural, legible para humanos.
POST my-data/_search
{ "query": {
"match": {
"my_semantic_field": "Which vector database was the first in the industry to introduce BBQ and contribute it to the open source community?"
}
},
"highlight": {
"fields": {
"my_semantic_field": {
"number_of_fragments": 2,
"order": "score" }}}}O, si prefieres ES|QL, prueba esto:
POST _query?format=txt
{
"query": """
FROM my-data
| WHERE my_semantic_field:"Which vector database has BBQ?"
| KEEP my_semantic_field
"""
}La respuesta a estas consultas es, por supuesto: Elasticsearch. La elección de usar nuestro modelo predeterminado o tu favorito está a solo una definición de endpoint de inferencia.
¡Espera, hay más!
En esta versión, los fanáticos de la búsqueda híbrida estarán encantados de saber que los retrievers, la abstracción del desarrollador que agregamos en versiones anteriores a la consulta DSL para una mejor componibilidad y facilidad de uso, ahora tienen la capacidad de incorporar fácilmente la recalificación lineal y genérica en los retrievers junto con Reciprocal Rank Fusion (RRF), una excelente técnica predeterminada para normalizar puntuaciones en combinaciones de diferentes tipos de búsqueda.
Continuamos agregando nuevos comandos interesantes al lenguaje de búsqueda de Elasticsearch (ES|QL), pero hay un nuevo comando que no estaba disponible en la consulta DSL. "UNAMOS" nuestras manos y demos la bienvenida a una nueva forma de consultar datos con el poder de Elasticsearch:
// join employees with their department name
FROM employees
| LOOKUP JOIN departments ON dep_id
| KEEP last_name, first_name, dep_name¡Lee más sobre esto en el blog de ES|QL JOIN!
Pruébalo
Lee sobre estas capacidades y más en las notas de lanzamiento.
Los clientes existentes de Elastic Cloud pueden acceder a muchas de estas características directamente desde la consola de Elastic Cloud. ¿No estás aprovechando Elastic en la cloud? Comienza una prueba gratuita.
¿Quieres empezar rápido con tu portátil? Ejecuta curl -fsSL https://elastic.co/start-local | sh y empieza en minutos.
También puedes descargar Elastic Stack y nuestros productos de orquestación en la nube, Elastic Cloud Enterprise (ECE) y Elastic Cloud para Kubernetes, para una experiencia autoadministrada.
El momento del lanzamiento de cualquiera de las características o funcionalidades descritas en esta publicación queda a exclusivo criterio de Elastic. Es posible que algunas características o funcionalidades que no estén disponibles en este momento no se lancen a tiempo o no se lancen en absoluto.
En esta publicación del blog, es posible que hayamos usado o nos hayamos referido a herramientas de AI generativa de terceros, que son propiedad de sus respectivos propietarios y están gestionadas por ellos. Elastic no tiene ningún control sobre las herramientas de terceros y no tenemos ninguna responsabilidad por su contenido, operación o uso, ni por ninguna pérdida o daño que pueda surgir de tu uso de dichas herramientas. Ten cuidado al usar herramientas de AI con información personal, sensible o confidencial. Cualquier dato que envíes puede usarse para el entrenamiento de la AI u otros fines. No se garantiza que la información que proporciones se mantenga segura o confidencial. Debes familiarizarte con las prácticas de privacidad y los términos de uso de cualquier herramienta de IA generativa antes de usarla.
Elastic, Elasticsearch, ESRE, Elasticsearch Relevance Engine y las marcas asociadas son marcas comerciales, logotipos o marcas comerciales registradas de Elasticsearch N.V. en Estados Unidos y otros países. Todos los demás nombres de empresas y productos son marcas comerciales, logotipos o marcas comerciales registradas de sus respectivos dueños.