Udostępnij przez


Rozpocznij wykonywanie zapytań do LLM na platformie Databricks

W tym artykule opisano, jak rozpocząć korzystanie z interfejsów API modeli bazowych do udostępniania modeli LLM i ich zapytań w usłudze Databricks.

Najprostszym sposobem rozpoczęcia obsługi i wykonywania zapytań dotyczących modeli LLM w usłudze Databricks jest użycie API modelu Foundation na zasadzie płatności za token. Interfejsy API zapewniają dostęp do popularnych modeli bazowych z punktów końcowych płatnych za tokeny, które są automatycznie dostępne w interfejsie obsługi użytkownika w przestrzeni roboczej Databricks. Zobacz modele bazowe hostowane w usłudze Databricks dostępne w interfejsach API modeli bazowych.

Możesz również przetestować modele płatności za token i porozmawiać z nimi przy użyciu narzędzia AI Playground. Zobacz Rozmawiaj z modelami językowymi (LLM) i twórz prototypy aplikacji generatywnej sztucznej inteligencji w AI Playground.

W przypadku obciążeń produkcyjnych, szczególnie tych z dostosowanym modelem lub wymagających gwarancji wydajności, usługa Databricks zaleca używanie interfejsów API modelu bazowego na punkcie końcowym zapewniającym przepływność.

Requirements

  • Obszar roboczy usługi Databricks w regionie obsługiwanym dla interfejsów API modelu bazowego, opłata za token.
  • Osobisty token dostępu usługi Databricks umożliwiający wykonywanie zapytań i uzyskiwanie dostępu do punktów końcowych usługi Mosaic AI Model Serving przy użyciu klienta OpenAI.

Important

Najlepszą praktyką w zakresie zabezpieczeń w scenariuszach produkcyjnych jest użycie tokenów OAuth maszyny do maszyny do uwierzytelniania, co zaleca Databricks.

W przypadku testowania i rozwoju oprogramowania usługa Databricks zaleca używanie osobistego tokenu dostępu należącego do głów usług zamiast użytkowników obszaru roboczego. Aby utworzyć tokeny dla jednostek usługi, zobacz Zarządzanie tokenami dla jednostki usługi.

Zacznij korzystać z interfejsów API modelu podstawowego

Poniższy przykład jest przeznaczony do uruchomienia w notatniku usługi Databricks. Przykładowy kod wysyła zapytanie do modelu Meta Llama 3.1 405B Instruct, który jest obsługiwany na punkcie końcowym płatności za każdy użyty token databricks-meta-llama-3-1-405b-instruct.

W tym przykładzie używasz klienta OpenAI do wykonywania zapytań dotyczących modelu, wypełniając model pole nazwą punktu końcowego obsługującego model, który hostuje model, którego chcesz wykonać zapytanie. Użyj swojego osobistego tokenu dostępu, aby wypełnić DATABRICKS_TOKEN oraz połączyć instancję obszaru roboczego Databricks z klientem OpenAI.

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)

Note

Jeśli wystąpi następujący komunikat ImportError: cannot import name 'OpenAI' from 'openai', zaktualizuj wersję openai przy użyciu !pip install -U openai. Po zainstalowaniu pakietu uruchom polecenie dbutils.library.restartPython().

Oczekiwane dane wyjściowe:


{
  "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
    }
}

Dalsze kroki