Compartir a través de


Usar el punto de conexión de inferencia del modelo de Azure AI para consumir modelos

La inferencia del modelo de Azure AI en los servicios de Azure AI permite a los clientes consumir los modelos más eficaces de los proveedores de modelos insignia mediante un único punto de conexión y las mismas credenciales. Esto significa que puede cambiar entre modelos y consumirlos desde la aplicación sin cambiar una sola línea de código.

En este artículo se explica cómo usar el punto de conexión de inferencia para invocarlos.

Puntos de conexión

Los servicios de Azure AI exponen varios puntos de conexión en función del tipo de trabajo que busca:

  • Punto de conexión de inferencia del modelo de Azure AI
  • Punto de conexión de Azure OpenAI

El punto de conexión de inferencia de Azure AI (normalmente con el formato https://<resource-name>.services.ai.azure.com/models) permite a los clientes usar un único punto de conexión con la misma autenticación y esquema para generar inferencia para los modelos implementados en el recurso. Todos los modelos admiten esta funcionalidad. Este punto de conexión sigue la API de inferencia del modelo de Azure AI.

Los modelos de Azure OpenAI implementados en los servicios de IA también admiten la API de Azure OpenAI (normalmente con el formato https://<resource-name>.openai.azure.com). Este punto de conexión expone las funcionalidades completas de los modelos de OpenAI y admite más características, como asistentes, subprocesos, archivos e inferencia por lotes.

Para más información sobre cómo aplicar el punto de conexión de Azure OpenAI, consulte la documentación del servicio Azure OpenAI.

Usar la funcionalidad de enrutamiento en el punto de conexión de inferencia del modelo de Azure AI

El punto de conexión de inferencia enruta las solicitudes a una implementación determinada mediante la coincidencia del parámetro name dentro de la solicitud con el nombre de la implementación. Esto significa que las implementaciones funcionan como un alias de un modelo determinado en determinadas configuraciones. Esta flexibilidad le permite implementar un modelo determinado varias veces en el servicio, pero en configuraciones diferentes si es necesario.

Ilustración en la que se muestra cómo funciona el enrutamiento para un modelo Meta-llama-3.2-8b-instruct indicando dicho nombre en el parámetro

Por ejemplo, si crea una implementación denominada Mistral-large, esta implementación se puede invocar como:

Instale el paquete azure-ai-inference mediante el administrador de paquetes, como pip:

pip install azure-ai-inference>=1.0.0b5

Advertencia

El recurso de Servicios de Azure AI necesita la versión azure-ai-inference>=1.0.0b5 para Python.

A continuación, puede usar el paquete para consumir el modelo. En el ejemplo siguiente se muestra cómo crear un cliente para consumir finalizaciones de chat:

import os
from azure.ai.inference import ChatCompletionsClient
from azure.core.credentials import AzureKeyCredential

model = ChatCompletionsClient(
    endpoint="https://<resource>.services.ai.azure.com/models",
    credential=AzureKeyCredential(os.environ["AZUREAI_ENDPOINT_KEY"]),
)

Explore nuestros ejemplos y lea la documentación de referencia de API para empezar a trabajar.

Para un modelo de chat, puede crear una solicitud de la siguiente manera:

from azure.ai.inference.models import SystemMessage, UserMessage

response = client.complete(
    messages=[
        SystemMessage(content="You are a helpful assistant."),
        UserMessage(content="Explain Riemann's conjecture in 1 paragraph"),
    ],
    model="mistral-large"
)

print(response.choices[0].message.content)

Si especifica un nombre de modelo que no coincide con ninguna implementación de modelo determinada, obtendrá un error que indica que el modelo no existe. Puede controlar qué modelos están disponibles para los usuarios mediante la creación de implementaciones de modelo, como se explica en Agregar y configurar implementaciones de modelo.

Limitaciones

  • Azure OpenAI Batch no se puede usar con el punto de conexión de inferencia del modelo de Azure AI. Tiene que usar la dirección URL de implementación dedicada, como se explica en la documentación de compatibilidad con la API Batch en Azure OpenAI.
  • La API en tiempo real no se admite en el punto de conexión de inferencia. Use la dirección URL de implementación dedicada.

Pasos siguientes