Compartir a través de


Cómo implementar modelos Embed de Cohere con Inteligencia artificial de Azure Studio

Importante

Algunas de las características descritas en este artículo solo pueden estar disponibles en versión preliminar. Esta versión preliminar se ofrece sin acuerdo de nivel de servicio y no se recomienda para las cargas de trabajo de producción. Es posible que algunas características no sean compatibles o que tengan sus funcionalidades limitadas. Para más información, consulte Términos de uso complementarios de las Versiones Preliminares de Microsoft Azure.

En este artículo, aprenderá a utilizar Azure AI Studio para implementar los modelos Cohere Embed como API sin servidor con facturación basada en tokens de pago por uso.

Cohere ofrece dos modelos Embed en Inteligencia artificial de Azure Studio. Estos modelos están disponibles como API sin servidor con la facturación basada en tokens de pago por uso. Puede examinar la familia Cohere de modelos en el Catálogo de modelos filtrando por la colección Cohere.

Modelos de Cohere Embed

En esta sección, usted aprenderá acerca de los dos modelos de Cohere Embed que están disponibles en el catálogo de modelos:

  • Cohere Embed v3 : inglés
  • Cohere Embed v3 : multilingüe

Puede examinar la familia Cohere de modelos en el Catálogo de modelos filtrando por la colección Cohere.

Cohere Embed v3 : inglés

Cohere Embed en inglés es el modelo de representación de texto líder del mercado que se usa para la búsqueda semántica, la generación aumentada por recuperación (RAG), la clasificación y la agrupación en clústeres. La iniciativa Embed English obtiene los mejores resultados en la prueba de referencia HuggingFace MTEB y obtiene buenos resultados en casos de uso para diversos sectores, como el financiero, el jurídico y el corporativo de uso general. Embed English también tiene los siguientes atributos:

  • Embed en inglés tiene 1024 dimensiones.
  • La ventana de contexto del modelo es de 512 tokens

Cohere Embed v3: multilingüe

Cohere Embed multilingüe es el modelo de representación de texto líder del mercado que se usa para la búsqueda semántica, la generación aumentada por recuperación (RAG), la clasificación y la agrupación en clústeres. Embed multilingüe admite más de 100 idiomas y se puede usar para buscar dentro de un idioma (por ejemplo, buscar con una consulta en francés en documentos en francés) y entre idiomas (por ejemplo, buscar con una consulta en inglés en documentos chinos). Embed multilingual ofrece el mejor rendimiento en pruebas multilingües como Miracl. Embed Multilingual también tiene los siguientes atributos:

  • Embed multilingüe tiene 1024 dimensiones.
  • La ventana de contexto del modelo es de 512 tokens

Implementación como API sin servidor

Algunos modelos del catálogo de modelos pueden implementarse como API sin servidor con facturación de pago por uso. Este tipo de implementación proporciona una manera de consumir modelos como una API sin hospedarlos en la suscripción, a la vez que mantiene la seguridad empresarial y el cumplimiento que necesitan las organizaciones. Esta opción de implementación no requiere cuota de la suscripción.

Los modelos de Cohere mencionados anteriormente se pueden implementar como un servicio con facturación de pago por uso y son ofrecidos por Cohere a través de Microsoft Azure Marketplace. Cohere puede cambiar o actualizar las condiciones de uso y los precios de estos modelos.

Requisitos previos

  • Una suscripción de Azure con un método de pago válido. Las suscripciones gratuitas o de evaluación de Azure no funcionarán. Si no tiene una suscripción de Azure, cree una cuenta de Azure de pago para comenzar.

  • Un centro de AI Studio.

    Importante

    En el caso de los modelos de la familia Cohere, la oferta de implementación de modelos de API sin servidor solo está disponible con centros creados en las regiones Este de EE. UU. 2 o Centro de Suecia.

  • Un proyecto de AI Studio en Azure AI Studio.

  • Los controles de acceso basado en rol de Azure se usan para conceder acceso a las operaciones en la Inteligencia artificial de Azure Studio. Para realizar los pasos descritos en este artículo, la cuenta de usuario debe tener asignado el rol Desarrollador de Azure AI en el grupo de recursos. Para más información sobre los permisos, consulte control de acceso basado en rol en Inteligencia artificial de Azure Studio.

Crear una nueva implementación

Los siguientes pasos demuestran la implementación de Cohere Embed v3 - Inglés, pero puede utilizar los mismos pasos para implementar Cohere Embed v3 - Multilingüe reemplazando el nombre del modelo.

Para crear una implementación:

  1. Inicie sesión en Azure AI Studio.

  2. Seleccione Catálogo de modelos en la barra lateral izquierda.

  3. Busque Cohere.

  4. Seleccione Cohere-embed-v3-english para abrir la página Detalles del modelo.

    Una captura de pantalla que muestra cómo acceder a la página de detalles del modelo recorriendo el catálogo de modelos.

  5. Seleccione Implementar para abrir una ventana de implementación de API sin servidor para el modelo.

  6. Como alternativa, puedes iniciar una implementación empezando por el proyecto en AI Studio.

    1. En la barra lateral de la izquierda del proyecto, seleccione Componentes>Implementaciones.

    2. Seleccione + Crear implementación.

    3. Busque y seleccione Cohere-embed-v3-english. para abrir la página Detalles del modelo.

      Captura de pantalla en la que se muestra cómo acceder a la página de detalles del modelo desde la página Implementaciones del proyecto.

    4. Seleccione Confirmar para abrir una ventana de implementación de API sin servidor para el modelo.

    Captura de pantalla en la que se muestra cómo implementar un modelo con la opción de pago por uso.

  7. Selecciona el proyecto en el que deseas implementar el modelo. Para implementar el modelo, el proyecto debe estar en la región Este de EE. UU. 2 o Centro de Suecia.

  8. En el Asistente para la implementación, selecciona el vínculo a Términos de Azure Marketplace para obtener más información sobre los términos de uso.

  9. Seleccione la pestaña Precios y términos para obtener información sobre los precios del modelo seleccionado.

  10. Seleccione el botón Suscribir e implementar. Si esta es la primera vez que implementas el modelo en el proyecto, debes suscribirte al proyecto para la oferta concreta. Para este paso es necesario que la cuenta tenga los permisos del rol Desarrollador de Azure AI en el grupo de recursos, como se muestra en los requisitos previos. Cada proyecto tiene su propia suscripción a la oferta concreta de Azure Marketplace del modelo, lo que te permite controlar y supervisar los gastos. Actualmente solo puede tener una implementación para cada modelo dentro de un proyecto.

  11. Una vez que suscribas el proyecto para la oferta concreta de Azure Marketplace, las implementaciones posteriores de la misma oferta en el mismo proyecto no requieren la suscripción de nuevo. Si este escenario le afecta, podrá seleccionar la opción Continuar para implementar.

    Captura de pantalla que muestra un proyecto que ya está suscrito a la oferta.

  12. Asigne un nombre a la implementación. Este nombre forma parte de la dirección URL de la API de implementación. Esta dirección URL debe ser única en cada región de Azure.

    Captura de pantalla que muestra cómo indicar el nombre de la implementación que desea crear.

  13. Seleccione Implementar. Espere hasta que la implementación esté lista y se le redirigirá a la página Implementaciones.

  14. Seleccione Abrir en el área de juegos para empezar a interactuar con el modelo.

  15. Vuelva a la página Implementaciones, seleccione la implementación y anote la URL de Objetivo del punto de conexión y la Clave secreta. Para obtener más información sobre el uso de las API, consulte la sección de referencia.

  16. Puede encontrar los detalles, la dirección URL y las claves de acceso del punto de conexión si navega a la página Información general del proyecto. Después, en la barra lateral de la izquierda del proyecto, seleccione Componentes>Implementaciones.

Para obtener información sobre la facturación de los modelos Cohere implementados como API sin servidor con facturación basada en tokens de pago por uso, consulte Consideraciones sobre costes y cuotas para los modelos Cohere implementados como servicio.

Consumo de los modelos de Cohere Embed como servicio

Estos modelos se pueden consumir mediante la API de Embed.

  1. En la página Información general del proyecto, vaya a la barra lateral de la izquierda y seleccione Componentes>Implementaciones.

  2. Busque y seleccione la implementación que ha creado.

  3. Copia la dirección URL de destino y el valor clave.

  4. Cohere expone dos rutas para la inferencia con los modelos Embed v3 en inglés y Embed v3 multilingüe. v1/embeddings se adhiere al esquema de API de mensajes generativos de Azure AI y v1/embed admite el esquema de API nativa de Cohere.

    Para obtener más información sobre el uso de las API, consulte la sección de referencia.

Referencia de API para insertar modelos de Cohere Embed implementados como servicio

Cohere Embed v3 - English y Embed v3 - Multilingual aceptan tanto la API Azure AI Model Inference en la ruta /embeddings como la API nativa Cohere Embed v3 en /embed.

API de inferencia de modelos de Azure AI

El esquema de la API Azure AI Model Inference se puede encontrar en el artículo de referencia para Embeddings y se puede obtener una especificación OpenAPI del propio punto de conexión.

Cohere Embed v3

A continuación encontrará información detallada sobre la API de Cohere Embed v3.

Solicitar

    POST /v1/embed HTTP/1.1
    Host: <DEPLOYMENT_URI>
    Authorization: Bearer <TOKEN>
    Content-type: application/json

Esquema de solicitud v1/embed

Cohere Embed v3 en inglés y Embed v3 multilingüe aceptan estos parámetros para una llamada API v1/embed:

Clave Tipo Valor predeterminado Descripción
texts array of strings Obligatorio Matriz de cadenas para que el modelo se inserte. El número máximo de textos por llamada es 96. Se recomienda reducir la longitud de cada texto a menos de 512 tokens para obtener una calidad óptima.
input_type enum string Obligatorio Antepone tokens especiales para diferenciar cada tipo entre sí. No debe combinar tipos diferentes, excepto cuando se mezclan tipos para la búsqueda y recuperación. En este caso, inserte el corpus con el tipo search_document y las consultas insertadas con tipo search_query.
search_document – En casos de uso de búsqueda, use search_document al codificar documentos para inserciones que almacene en una base de datos vectorial.
search_query – Use search_query al consultar la base de datos vectorial para buscar documentos pertinentes.
classification – Use la clasificación con las inserciones como entrada para un clasificador de texto.
clustering: Use la agrupación en clústeres para agrupar las inserciones.
truncate enum string NONE NONE: Devuelve un error cuando la entrada supera la longitud máxima del token de entrada.
START: Descarta el inicio de la entrada.
END: Descarta el final de la entrada.
embedding_types array of strings float Especifica los tipos de inserciones que quiere recuperar. Puede ser uno o varios de los siguientes tipos. float, int8, uint8, binary, ubinary

Esquema de respuesta v1/embed

Cohere Embed v3 en inglés y Embed v3 multilingüe incluyen los siguientes campos en la respuesta:

Clave Tipo Descripción
response_type enum El tipo de respuesta. Devuelve embeddings_floats cuando no se especifica embedding_types o devuelve embeddings_by_type cuando se especifica embeddings_types.
id integer Identificador de la respuesta.
embeddings array o array of objects Matriz de inserciones, donde cada inserción es una matriz de floats con 1024 elementos. La longitud de la matriz de inserciones es la misma que la longitud de la matriz de textos originales.
texts array of strings Entradas de texto para las que se devolvieron las incrustaciones.
meta string Datos de uso de API, incluidos los tokens facturables y la versión actual.

Para obtener más información, vea https://docs.cohere.com/reference/embed.

Ejemplos de v1/embed

Respuesta de embeddings_floats

Solicitud:

    {
        "input_type": "clustering",
        "truncate": "START",
        "texts":["hi", "hello"]
    }

Respuesta:

    {
        "id": "da7a104c-e504-4349-bcd4-4d69dfa02077",
        "texts": [
            "hi",
            "hello"
        ],
        "embeddings": [
            [
                ...
            ],
            [
                ...
            ]
        ],
        "meta": {
            "api_version": {
                "version": "1"
            },
            "billed_units": {
                "input_tokens": 2
            }
        },
        "response_type": "embeddings_floats"
    }

Respuesta de Embeddings_by_types

Solicitud:

    {
        "input_type": "clustering",
        "embedding_types": ["int8", "binary"],
        "truncate": "START",
        "texts":["hi", "hello"]
    }

Respuesta:

    {
        "id": "b604881a-a5e1-4283-8c0d-acbd715bf144",
        "texts": [
            "hi",
            "hello"
        ],
        "embeddings": {
            "binary": [
                [
                    ...
                ],
                [
                    ...
                ]
            ],
            "int8": [
                [
                    ...
                ],
                [
                    ...
                ]
            ]
        },
        "meta": {
            "api_version": {
                "version": "1"
            },
            "billed_units": {
                "input_tokens": 2
            }
        },
        "response_type": "embeddings_by_type"
    }

Más ejemplos de inferencia

Package Cuaderno de ejemplo
CLI mediante CURL y solicitudes web de Python cohere-embed.ipynb
SDK de OpenAI (experimental) openaisdk.ipynb
LangChain langchain.ipynb
SDK de Cohere cohere-sdk.ipynb
SDK de LiteLLM litellm.ipynb
Generación aumentada de recuperación (RAG) y ejemplos de uso de herramientas
Descripción Paquete Cuaderno de ejemplo
Creación de un índice de vectores de búsqueda de similitud de IA de Facebook local (FAISS), mediante incrustaciones de Cohere: Langchain langchain, langchain_cohere cohere_faiss_langchain_embed.ipynb
Uso de Cohere Command R/R+ para responder preguntas de datos en el índice de vectores de FAISS local: Langchain langchain, langchain_cohere command_faiss_langchain.ipynb
Uso de Cohere Command R/R+ para responder preguntas de datos en el índice de vectores de búsqueda de IA: Langchain langchain, langchain_cohere cohere-aisearch-langchain-rag.ipynb
Uso de Cohere Command R/R+ para responder preguntas de datos en el índice de vectores de búsqueda de IA: SDK de Cohere cohere, azure_search_documents cohere-aisearch-rag.ipynb
Llamada a herramientas o funciones de Command R+, mediante LangChain cohere, langchain, langchain_cohere command_tools-langchain.ipynb

Coste y cuotas

Consideraciones de costos y cuotas para los modelos implementados como servicio

Los modelos de Cohere implementados como una API sin servidor con facturación de pago por uso se ofrecen mediante Cohere a través de Azure Marketplace y se integran con inteligencia artificial de Azure Studio para su uso. Puedes encontrar los precios de Azure Marketplace al implementar modelos.

Cada vez que un proyecto se suscribe a una oferta determinada de Azure Marketplace, se crea un nuevo recurso para realizar un seguimiento de los costos asociados a su consumo. El mismo recurso se usa para hacer un seguimiento de los costos asociados con la inferencia; sin embargo, hay varios medidores disponibles para hacer un seguimiento de cada escenario de forma independiente.

Para más información sobre cómo realizar un seguimiento de los costos, consulte Supervisar los costos de los modelos ofrecidos en Azure Marketplace.

La cuota se administra por implementación. Cada implementación tiene un límite de velocidad de 200 000 tokens por minuto y 1000 solicitudes de API por minuto. Sin embargo, actualmente limitamos una implementación por modelo por proyecto. Póngase en contacto con el Soporte técnico de Microsoft Azure si los límites de velocidad actuales no son suficientes para sus escenarios.

Filtrado de contenido

Los modelos implementados como una API sin servidor están protegidos por Seguridad del contenido de Azure AI. Con la seguridad de contenido de Azure AI, tanto la solicitud como la finalización pasan por un conjunto de modelos de clasificación destinados a detectar y evitar la salida de contenido dañino. El sistema de filtrado de contenido detecta y toma medidas en categorías específicas de contenido potencialmente perjudicial tanto en solicitudes de entrada como en finalizaciones de salida. Puede encontrar más información sobre el filtrado de contenido aquí.