Modelos básicos de codificadores compatibles en watsonx.ai

Utiliza modelos base «solo codificador» implementados en IBM watsonx.ai para facilitar las tareas de búsqueda semántica, comparación de documentos y reordenación de resultados.

Puedes elegir el tipo de modelo base «solo codificador» que mejor se adapte a tus necesidades o utilizar ambos tipos como parte de un flujo de trabajo de búsqueda y recuperación en dos pasos. En watsonx.ai: puedes utilizar los siguientes tipos de modelos base «solo codificador»:

Incorporación de modelos base

Utiliza modelos de incrustación cuando quieras generar representaciones vectoriales de texto que luego puedas comparar matemáticamente. Los modelos de incrustación son más rápidos y eficientes que los modelos de reordenación, pero menos precisos.

Para obtener más información, consulta la sección «Incorporación de modelos ».

Modelos de base con reclassificador

Utiliza modelos de reordenación cuando quieras generar puntuaciones para cada fragmento de un conjunto reducido de fragmentos, con el fin de encontrar el que más se relacione con una consulta, o los dos que más se relacionen con ella. Los modelos de reordenación son más precisos, pero menos eficientes que los modelos de incrustación. Cuantas más entradas envíes, más tiempo tardarán los modelos de reordenación en procesar el texto.

Para obtener más información, consulta «Modelos Reranker ».

Para utilizar conjuntamente los dos tipos de modelos base «solo codificador» en tareas de búsqueda y recuperación, puedes hacer lo siguiente:

  1. Utiliza un modelo de incrustación para realizar una búsqueda semántica amplia que arroje muchos resultados.
  2. Utiliza un modelo de reordenación para reducir los resultados principales del paso 1 a una única respuesta o a una breve lista de las mejores respuestas.
Nota:

Tareas compatibles con modelos base que utilizan únicamente codificadores

Puedes utilizar modelos basados únicamente en el codificador en watsonx.ai para las siguientes tareas:

Vectorización de texto desde la API
Especifica un modelo de incrustación que se utilizará para convertir texto en incrustaciones de texto mediante la API REST de watsonx.ai. Consulta «Vectorización de texto ».
Reordenación de fragmentos de la API
Especifica un modelo de reordenación que se utilizará para comparar los fragmentos con una consulta y clasificarlos de mayor a menor relevancia mediante la API REST de watsonx.ai. Consulta «Reordenación de fragmentos de documentos ».
AutoAI para RAG
Utiliza modelos de incrustación con AutoAI para crear flujos de trabajo de generación aumentada por recuperación mediante programación. Consulta «Automatización de un patrón RAG con el SDK de AutoAI ».
Chatea con documentos en Prompt Lab
Utiliza modelos de incrustación para vectorizar documentos y utilizarlos como información de referencia que se envía al modelo base a partir de las indicaciones del « Prompt Lab ». Consulta la sección «Añadir documentos vectorizados para fundamentar las indicaciones del modelo base ».

La siguiente tabla muestra los tipos de tareas que admiten los modelos base «solo codificador» disponibles en IBM watsonx.ai. Una marca de verificación (✓) indica que la tarea que figura en el encabezado de la columna es compatible con el modelo base.

Tabla 1. Compatibilidad con tareas de modelos base que utilizan únicamente codificadores
Modelo Vectorizar texto desde la API Reordenar fragmentos desde la API AutoAI para RAG Chatea con documentos en Prompt Lab
all-minilm-l6-v2
all-minilm-l12-v2
ELSER ( EncodeR elástico y escaso aprendido)
granite-embedding-107m-multilingual
granite-embedding-278m-multilingual
granite-embedding-english-reranker-r2
ms-marco-minilm-l-12-v2
multilingual-e5-large
slate-30m-english-rtrvr
slate-125m-english-rtrvr

Modelos de incrustación

Los modelos de incrustación son modelos que se utilizan para vectorizar documentos y generar incrustaciones de texto con el fin de facilitar las tareas de búsqueda y comparación. Una representación textual codifica el significado de una frase o un fragmento en una matriz de números conocida como vector. Para obtener más información sobre la vectorización, consulta «Generación de representaciones de texto ».

Una vez convertidos los fragmentos en vectores, se puede calcular la similitud entre los fragmentos vectorizados independientes utilizando funciones matemáticas, como la similitud coseno. La mayoría de los modelos de incrustación son modelos con dos codificadores. Utiliza un modelo de doble codificador cuando sea esencial obtener un alto nivel de recuperación, es decir, cuando no quieras pasar por alto ninguna coincidencia posible y necesites comprobar de forma eficiente la similitud de muchos fragmentos.

Puedes utilizar los siguientes tipos de modelos de incrustación disponibles en watsonx.ai:

Para obtener una lista de los modelos de incrustación disponibles, utiliza el método «List the available foundation models » de la API de « watsonx.ai ». Especifica el parámetro filters=function_embedding para que solo se muestren los modelos de incrustación.

curl -X GET \
  'https://{cluster_url}/ml/v1/foundation_model_specs?version=2024-07-25&filters=function_embedding'

IBM incrustar modelos

En la siguiente tabla se enumeran los modelos de incrustación desarrollados por IBM que puedes utilizar en watsonx.ai.

Tabla 2. IBM Incorporación de modelos en watsonx.ai
Nombre de modelo ID del modelo de la API Tokens de entrada máximos Número de dimensiones Más información
granite-embedding-278m-multilingual ibm/granite-embedding-278m-multilingual 512 768 Tarjeta del modelo
slate-30m-english-rtrvr ibm/slate-30m-english-rtrvr 512 384 Tarjeta del modelo

IBM Los modelos de Slate también dan lugar a un conjunto de bibliotecas que puedes utilizar para tareas habituales de procesamiento del lenguaje natural (NLP), como la clasificación, la extracción de entidades, el análisis de opiniones y otras.

Para obtener más información sobre cómo utilizar las funciones de PLN de los modelos Slate, consulta la biblioteca de PLN de Watson.

Modelos de incrustación de terceros

En la siguiente tabla se enumeran los modelos de incrustación desarrollados por terceros que puedes utilizar en watsonx.ai.

Tabla 3. Modelos de incrustación de terceros en watsonx.ai
Nombre de modelo ID del modelo de la API Proveedor Tokens de entrada máximos Número de dimensiones Más información
all-minilm-l6-v2 sentence-transformers/all-minilm-l6-v2 Comunidad de código abierto de procesamiento del lenguaje natural (PLN) y visión por ordenador (CV) 128 384 Tarjeta del modelo
all-minilm-l12-v2 sentence-transformers/all-minilm-l12-v2 Comunidad de código abierto de procesamiento del lenguaje natural (PLN) y visión por ordenador (CV) 128 384 Tarjeta del modelo
multilingual-e5-large intfloat/multilingual-e5-large Microsoft 512 1.024
Ficha del modeloTrabajo de investigación

Modelos de reordenación

Los modelos «reranker» son modelos de codificadores cruzados que se utilizan para clasificar los fragmentos de texto en orden de mayor a menor relevancia respecto a una consulta. A diferencia de los modelos con dos codificadores, los modelos con codificador cruzado procesan un pasaje y una consulta al mismo tiempo, y generan una puntuación que refleja la similitud entre ambas entradas. El modelo repite este paso de comparación de similitudes para cada fragmento que incluyas. Este método es la mejor opción cuando hay que puntuar un número reducido de pasajes y se quiere encontrar la respuesta más adecuada.

Nota:Los modelos de reordenación disponibles en watsonx.ai no se pueden utilizar para generar representaciones de texto.

Para obtener una lista de los modelos de reordenación disponibles, utiliza el método «List the available foundation models » de la API de « watsonx.ai ». Especifica el parámetro filters=function_rerank para que solo se muestren los modelos de reordenación disponibles.

curl -X GET \
  'https://cpd-<namespace-name>.apps.<OCP-domain>/ml/v1/foundation_model_specs?version=2024-07-25&filters=function_rerank'

En la siguiente tabla se enumeran los modelos de reordenación que puedes utilizar en watsonx.ai:

Tabla 4. Modelos «Reranker» en watsonx.ai
Nombre de modelo ID del modelo de la API Proveedor Tokens de entrada máximos Más información
granite-embedding-english-reranker-r2 ibm/granite-embedding-english-reranker-r2 IBM 8192 Tarjeta del modelo
ms-marco-minilm-l-12-v2 cross-encoder/ms-marco-minilm-l-12-v2 Microsoft 512 Tarjeta del modelo

Detalles del modelo «solo codificador»

Puedes utilizar la biblioteca watsonx.ai Python o la API REST para enviar frases o fragmentos de texto a uno de los modelos base «solo codificador» compatibles, o bien especificar distintos modelos de codificador al configurar un recurso de índice vectorial en tu proyecto.

all-minilm-l6-v2

El modelo de integración « all-minilm-l6-v2 » ha sido desarrollado por la comunidad de código abierto dedicada al procesamiento del lenguaje natural (NLP) y la visión artificial (CV), y lo ofrece Hugging Face. Utilice el modelo como codificador de frases y párrafos cortos. A partir de un texto de entrada, el modelo genera un vector que recoge la información semántica del texto.

El modelo de incrustación « all-minilm-l6-v2 » es similar al modelo de incrustación « all-minilm-l12-v2 », salvo que el modelo « all-minilm-l6-v2 » tiene seis capas de incrustación en lugar de las doce capas del modelo « all-minilm-l12-v2 ».

Uso: Utiliza los vectores de frases que genera el modelo de incrustación all-minilm-l6-v2 para tareas como la recuperación de información, la agrupación y para detectar la similitud de las frases.

Número de dimensiones: 384

Límite de tokens de entrada : 128

Idiomas naturales soportados: Inglés

Información sobre el ajuste: este modelo de incrustación es una versión del modelo MiniLM-L6-H384-uncased de Microsoft preentrenado y ajustado en un conjunto de datos que contiene mil millones de pares de frases.

Arquitectura de modelo: sólo codificador

Licencia : Apache 2.0 license

Más información

all-minilm-l12-v2

El modelo de incrustación « all-minilm-l12-v2 » ha sido desarrollado por la comunidad de código abierto dedicada al procesamiento del lenguaje natural (NLP) y la visión artificial (CV), y lo ofrece Hugging Face. Utilice el modelo como codificador de frases y párrafos cortos. A partir de un texto de entrada, genera un vector que recoge la información semántica del texto.

El modelo de incrustación « all-minilm-l12-v2 » es similar al modelo de incrustación « all-minilm-l6-v2 », salvo que el modelo « all-minilm-l12-v2 » cuenta con doce capas de incrustación, en lugar de las seis capas del modelo « all-minilm-l6-v2 ».

Uso : Utiliza los vectores de oraciones generados por el modelo de incrustación « all-minilm-l12-v2 » para tareas como la recuperación de información, la agrupación en clústeres y la detección de similitudes entre oraciones.

Número de dimensiones: 384

Límite de tokens de entrada : 128

Idiomas naturales soportados: Inglés

Información sobre el ajuste fino : Este modelo de incrustación es una versión del modelo preentrenado « MiniLM-L12-H384-uncased » de Microsoft, que se ha ajustado con pares de frases procedentes de más de mil millones de frases.

Arquitectura de modelo: sólo codificador

Licencia : Apache 2.0 license

Más información

granite-embedding-107m-multilingual

El modelo « granite-embedding-107m-multilingual » es un modelo de 107 millones de parámetros perteneciente al conjunto de modelos « Granite Embeddings», proporcionado por IBM. El modelo se puede utilizar para generar representaciones de texto de alta calidad. El modelo se entrena utilizando una combinación de conjuntos de datos de pares de relevancia de código abierto, con licencias flexibles y adaptadas al ámbito empresarial, y conjuntos de datos generados y recopilados por IBM. Es compatible con 12 idiomas: inglés, alemán, español, francés, japonés, portugués, árabe, checo, italiano, coreano, neerlandés y chino.

Uso : Utiliza el modelo « granite-embedding-107m-multilingual » para generar una representación de una entrada determinada, como una consulta, un fragmento o un documento. El modelo está entrenado para maximizar la similitud coseno entre dos fragmentos de texto de entrada.

Número de dimensiones: 384

Límites de señal de entrada: 512

Idiomas naturales admitidos : inglés, alemán, español, francés, japonés, portugués, árabe, checo, italiano, coreano, neerlandés y chino

Información sobre el ajuste fino : El modelo « granite-embedding-107m-multilingual » es una versión del modelo XLM « RoBERTa », que a su vez es una versión multilingüe de « RoBERTa » y que ha sido preentrenado con « 2.5 » TB de datos filtrados de « CommonCrawl ». El modelo se entrenó de forma continua con una combinación de conjuntos de datos multilingües para tareas basadas en la recuperación de información.

Arquitectura de modelo: sólo codificador

Licencia : Apache 2.0 license

Más información

granite-embedding-278m-multilingual

El modelo « granite-embedding-278m-multilingual » es un modelo de 278 millones de parámetros perteneciente al conjunto de modelos « Granite Embeddings», proporcionado por IBM. El modelo se puede utilizar para generar representaciones de texto de alta calidad. El modelo se entrena utilizando una combinación de conjuntos de datos de pares de relevancia de código abierto, con licencias flexibles y adaptadas al ámbito empresarial, y conjuntos de datos generados y recopilados por IBM. Es compatible con 12 idiomas: inglés, alemán, español, francés, japonés, portugués, árabe, checo, italiano, coreano, neerlandés y chino.

Uso : Utiliza el modelo « granite-embedding-278m-multilingual » para generar una representación de una entrada determinada, como una consulta, un fragmento o un documento. El modelo está entrenado para maximizar la similitud coseno entre dos fragmentos de texto de entrada.

Número de dimensiones: 768

Límites de señal de entrada: 512

Idiomas naturales admitidos : inglés, alemán, español, francés, japonés, portugués, árabe, checo, italiano, coreano, neerlandés y chino

Información sobre el ajuste fino : El modelo « granite-embedding-107m-multilingual » es una versión del modelo XLM « RoBERTa », que a su vez es una versión multilingüe de « RoBERTa » y que ha sido preentrenado con « 2.5 » TB de datos filtrados de « CommonCrawl ». El modelo se entrenó de forma continua con una combinación de conjuntos de datos multilingües para tareas basadas en la recuperación de información.

Arquitectura de modelo: sólo codificador

Licencia : Apache 2.0 license

Más información

granite-embedding-english-reranker-r2

El modelo « granite-embedding-english-reranker-r2 » es un modelo de reordenación de la suite « Granite Embeddings», proporcionada por IBM. El modelo utiliza una arquitectura de codificador cruzado para calcular puntuaciones de relevancia de alta calidad entre consultas y documentos mediante la codificación conjunta de su texto, y ofrece una reclasificación precisa basada en la alineación contextual.

Uso : Utiliza el modelo « granite-embedding-english-reranker-r2 » para calcular las puntuaciones de relevancia de los pares consulta-documento. Es ideal para tareas de reordenación en aplicaciones de recuperación de información y búsqueda.

Límites de tokens de entrada : 8192

Idiomas naturales soportados: Inglés

Información sobre el ajuste fino : El modelo se entrena con funciones de pérdida específicas para la clasificación, como la estimación de máxima verosimilitud con ponderación posicional ( pListMLE ), junto con técnicas de fusión de modelos para mejorar el rendimiento. El modelo de reordenación muestra un excelente rendimiento en pruebas de referencia estándar de recuperación de información (BEIR, MIRACL), en pruebas de referencia de búsqueda en documentos largos (MLDR) y en numerosos casos de uso empresarial.

Arquitectura de modelo: sólo codificador

Licencia : Apache 2.0 license

Más información

ms-marco-minilm-l-12-v2

El modelo de reordenación « ms-marco-minilm-l-12-v2 » ha sido desarrollado por Microsoft y lo ofrece Hugging Face. Utiliza el modelo como un sistema de reordenación de pasajes y documentos. A partir de un texto de consulta y un conjunto de fragmentos de documentos, clasifica la lista de fragmentos de mayor a menor relevancia con respecto a la consulta.

Uso : Utiliza el modelo de reordenación « ms-marco-minilm-l-12-v2 » cuando dispongas de un conjunto reducido de pasajes que desees puntuar en función de una consulta y la precisión sea fundamental. Por ejemplo, cuando tienes menos de 100 fragmentos y quieres puntuarlos en función de su similitud con el texto de la consulta.

Límites de señal de entrada: 512

Idiomas naturales soportados: Inglés

Información sobre el ajuste fino : El modelo « ms-marco-minilm-l-12-v2 » se entrenó en la tarea «MS Marco Passage Ranking». MS MARCO (Microsoft Machine Reading Comprehension) es un conjunto de datos a gran escala que se utiliza para la comprensión lectora automática, la respuesta a preguntas y la clasificación de pasajes.

Arquitectura de modelo: sólo codificador

Licencia : Apache 2.0 license

Más información

multilingual-e5-large

El modelo de incrustación « multilingual-e5-large » ha sido desarrollado por Microsoft y está disponible en Hugging Face.

La arquitectura del modelo de incrustación tiene 24 capas que se utilizan secuencialmente para procesar los datos.

Uso: Utilícelo para casos de uso en los que desee generar incrustaciones de texto para texto en un idioma distinto del inglés. El modelo « multilingual-e5-large » resulta útil para tareas como la recuperación de pasajes o de información, la similitud semántica, la minería de textos paralelos y la recuperación de paráfrasis.

Número de dimensiones : 1.024

Límites de señal de entrada: 512

Lenguas naturales soportadas: Hasta 100 idiomas. Para más detalles, consulte la ficha del modelo.

Información sobre el ajuste fino : El modelo « multilingual-e5-large » es una versión del modelo XLM « RoBERTa », que a su vez es una versión multilingüe de « RoBERTa » y que ha sido preentrenado con « 2.5 » TB de datos filtrados de « CommonCrawl ». El modelo se entrenó de forma continua con una combinación de conjuntos de datos multilingües.

Arquitectura de modelo: sólo codificador

Licencia: Código de conducta de Microsoft para el código abierto

Más información

slate-125m-english-rtrvr

El modelo base « slate-125m-english-rtrvr » (versión 2.0.1 ) lo proporciona IBM. El modelo genera incrustaciones para diversas entradas, como consultas, pasajes o documentos.

El objetivo de entrenamiento es maximizar la similitud de coseno entre una consulta y un pasaje. Este proceso produce dos incrustaciones de frase, una que representa la pregunta y otra que representa el pasaje, permitiendo la comparación de los dos a través de la similitud coseno.

Uso: De dos a tres veces más lento pero rinde ligeramente mejor que el modelo de incrustación IBM Slate 30m.

Número de dimensiones: 768

Límites de señal de entrada: 512

Idiomas naturales soportados: Inglés

Información de ajuste preciso: esta versión del modelo se ha ajustado para ser mejor en las tareas basadas en la recuperación de sentencias.

Arquitectura de modelo: sólo codificador

Licencia :

Más información

slate-30m-english-rtrvr

El modelo base « slate-30m-english-rtrvr » ( 2.0.1 ) es una versión simplificada del « slate-125m-english-rtrvr », y lo proporciona IBM. El modelo de incrustación « IBM » de Slate está entrenado para maximizar la similitud coseno entre dos textos de entrada, de modo que las incrustaciones puedan evaluarse posteriormente en función de dicha similitud.

La arquitectura del modelo de inclusión tiene 6 capas que se utilizan secuencialmente para procesar datos.

Uso: De dos a tres veces más rápido y tiene puntuaciones de rendimiento ligeramente inferiores al modelo de incrustación IBM Slate 125m.

Pruébalo : patrón de generación reforzada por recuperación

Número de dimensiones: 384

Límites de señal de entrada: 512

Idiomas naturales soportados: Inglés

Información de ajuste preciso: esta versión del modelo se ha ajustado para ser mejor en las tareas basadas en la recuperación de sentencias.

Arquitectura de modelo: sólo codificador

Licencia :

Más información

Más información