Introducción a la consulta de LLM en Databricks
En este artículo se describe cómo empezar a usar las API de Foundation Model para servir y consultar los Modelos de lenguaje grande (LLM) en Databricks.
La manera más fácil de empezar a trabajar y consultar el servicio de modelos LLM en Databricks es usarFoundation Model APIde pago por token. Las API proporcionan acceso a modelos de base populares desde puntos de conexión de pago por token que están disponibles automáticamente en la interfaz de usuario de servicio del área de trabajo de Databricks. Consulte Modelos admitidos para pago por token.
También puede probar y chatear con modelos de pago por token mediante AI Playground. Consulte Chatear con LLM y crear prototipos de aplicaciones GenAI mediante AI Playground.
En el caso de las cargas de trabajo de producción, especialmente aquellas con un modelo ajustado o que requieren garantías de rendimiento, Databricks recomienda usar las API de Foundation Model en un punto de conexión de rendimiento aprovisionado.
Requisitos
- Área de trabajo de Databricks en una región compatible para las API de Foundation Model de pago por token.
- Token de acceso personal de Databricks para consultar y acceder a los puntos de conexión de Servicio de modelos de Mosaic AI mediante el cliente de OpenAI.
Importante
Como procedimiento recomendado de seguridad para escenarios de producción, Databricks recomienda usar Tokens de OAuth de máquina a máquina para la autenticación durante la producción.
Para pruebas y desarrollo, Databricks recomienda usar un token de acceso personal que pertenezca a entidades de servicio en lugar de usuarios del área de trabajo. Para crear tókenes para entidades de servicio, consulte Administración de tokens de acceso para una entidad de servicio.
Introducción al uso de las API de Foundation Model
El ejemplo siguiente está diseñado para ejecutarse en un cuaderno de Databricks. El ejemplo de código consulta el modelo Meta Llama 3.1 405B Instruct que se sirve en el punto de conexión de pago por token databricks-meta-llama-3-1-405b-instruct
.
En este ejemplo, usará el cliente OpenAI para consultar el modelo rellenando el model
campo con el nombre del punto de conexión de servicio del modelo que hospeda el modelo que desea consultar. Use el token de acceso personal para rellenar el DATABRICKS_TOKEN
y la instancia del área de trabajo de Databricks para conectar el cliente de OpenAI a Databricks.
from openai import OpenAI
import os
DATABRICKS_TOKEN = os.environ.get("DATABRICKS_TOKEN")
client = OpenAI(
api_key=DATABRICKS_TOKEN, # your personal access token
base_url='https://<workspace_id>.databricks.com/serving-endpoints', # your Databricks workspace instance
)
chat_completion = client.chat.completions.create(
messages=[
{
"role": "system",
"content": "You are an AI assistant",
},
{
"role": "user",
"content": "What is a mixture of experts model?",
}
],
model="databricks-meta-llama-3-1-405b-instruct",
max_tokens=256
)
print(chat_completion.choices[0].message.content)
Nota:
Si encuentra el siguiente mensaje ImportError: cannot import name 'OpenAI' from 'openai'
, actualice la versión de openai
mediante !pip install -U openai
. Después de instalar el paquete, ejecute dbutils.library.restartPython()
.
Resultado esperado:
{
"id": "xxxxxxxxxxxxx",
"object": "chat.completion",
"created": "xxxxxxxxx",
"model": "databricks-meta-llama-3-1-405b-instruct",
"choices": [
{
"index": 0,
"message":
{
"role": "assistant",
"content": "A Mixture of Experts (MoE) model is a machine learning technique that combines the predictions of multiple expert models to improve overall performance. Each expert model specializes in a specific subset of the data, and the MoE model uses a gating network to determine which expert to use for a given input."
},
"finish_reason": "stop"
}
],
"usage":
{
"prompt_tokens": 123,
"completion_tokens": 23,
"total_tokens": 146
}
}
Pasos siguientes
- Use el área de juegos de IA para probar diferentes modelos en una interfaz de chat conocida.
- Consulta de modelos de IA generativa.
- Acceda a los modelos hospedados fuera de Databricks mediante modelos externos.
- Aprenda a implementar modelos optimizados mediante puntos de conexión de rendimiento aprovisionados.
- Explore métodos para supervisar la calidad del modelo y el estado del punto de conexión.