Partager via


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

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-instructen 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