Commencer à interroger les LLM sur Databricks
Cet article décrit comment commencer à utiliser les API de Foundation Model pour servir et interroger les LLM sur Databricks.
Le moyen le plus simple de commencer à mettre en service et à interroger des modèles LLM sur Databricks consiste à utiliser les API Foundation Model sur une base paiement par jeton. Les API permettent d’accéder aux modèles de base les plus courants à partir de points de terminaison payants qui sont automatiquement disponibles dans l’interface utilisateur de votre espace de travail Databricks. Voir Modèles pris en charge pour le paiement par jeton.
Vous pouvez également tester et converser avec des modèles avec paiement par jeton en utilisant le Terrain de jeu IA. Consultez Conversation avec des LLM et prototypage d’applications d’IA générative à l’aide d’AI Playground.
Pour les charges de travail de production, en particulier celles avec un modèle affiné ou nécessitant des garanties de performances, Databricks recommande d’utiliser les API Foundation Model sur un point de terminaison à débit approvisionné.
Spécifications
- Espace de travail Databricks dans une région prise en charge pour le paiement par jeton des API Foundation Model.
- Jeton d’accès personnel Databricks pour interroger et accéder aux points de terminaison de service de modèles Mosaic AI en utilisant le client OpenAI.
Important
À titre de meilleure pratique de sécurité pour les scénarios de production, Databricks vous recommande d’utiliser des jetons OAuth machine à machine pour l’authentification en production.
Pour les tests et le développement, Databricks recommande d’utiliser un jeton d’accès personnel appartenant à des principaux de service et non pas à des utilisateurs de l’espace de travail. Pour créer des jetons d’accès pour des principaux de service, consultez la section Gérer les jetons pour un principal de service.
Prise en main des API Foundation Model
L’exemple suivant est destiné à être exécuté dans un notebook Databricks. L’exemple de code interroge le modèle Meta Llama 3.1 405B Instruct qui est servi sur le point de terminaison databricks-meta-llama-3-1-405b-instruct
en paiement par jeton.
Dans cet exemple, vous utilisez le client OpenAI pour interroger le modèle en remplissant le champ model
avec le nom du point de terminaison de service de modèle qui héberge le modèle que vous voulez interroger. Utilisez votre jeton d’accès personnel pour remplir les DATABRICKS_TOKEN
et votre instance d’espace de travail Databricks pour connecter le client OpenAI à 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)
Remarque
Si vous rencontrez le message suivant ImportError: cannot import name 'OpenAI' from 'openai'
, mettez à niveau votre version de openai
en utilisant !pip install -U openai
. Après avoir installé le package, exécutez dbutils.library.restartPython()
.
Sortie attendue :
{
"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
}
}
Étapes suivantes
- Utilisez le terrain de jeu IA pour tester différents modèles dans une interface de conversation familière.
- Interroger des modèles IA génératifs.
- Accéder à des modèles hébergés en dehors de Databricks en utilisant des modèles externes.
- Découvrez comment déployer des modèles affinés à l’aide de points de terminaison de débit approvisionnés.
- Explorer les méthodes de contrôle de la qualité des modèles et de la santé des points de terminaison.