共用方式為


開始在 Databricks 上查詢 LLM

本文說明了如何開始使用基礎模型 API 在 Databricks 上服務和查詢 LLM。

在 Databricks 上開始使用服務及查詢 LLM 模型最簡單的方式,就是以按權杖付費的方式使用基礎模型 API API 可讓您從 Databricks 工作區的服務 UI 中自動提供的每一權杖付費端點存取熱門基礎模型。 請參閱支援的按權杖付費的模型

您也可以使用 AI 遊樂場來測試每個權杖付費模型並聊天。 請參閱使用 AI 遊樂場與 LLM 和原型 GenAI 應用程式聊天

針對生產工作負載,特別是具有微調模型或需要效能保證的工作負載,Databricks 建議在佈建的輸送量端點上使用基礎模型 API。

需求

重要

作為生產案例的安全最佳做法,Databricks 建議您在生產期間使用機器對機器 OAuth 權杖進行驗證。

對於測試和開發,Databricks 建議使用屬於服務主體而不是工作區使用者的個人存取權杖。 若要建立服務主體的權杖,請參閱管理服務主體的權杖

開始使用基礎模型 API

下列範例要在 Databricks 筆記本中執行。 程式碼範例會查詢 Meta Llama 3.1 405B Instruct 模型,該模型會在每個權杖的付費端點 databricks-meta-llama-3-1-405b-instruct 上提供服務。

在此範例中,您使用 OpenAI 用戶端來查詢模型,方法是在 model 欄位中填入託管您要查詢模型的模型服務端點的名稱。 使用您的個人存取權杖填入 DATABRICKS_TOKENDatabricks 工作區執行個體 ,將 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)

注意

如果您遇到下列訊息 ImportError: cannot import name 'OpenAI' from 'openai',請使用 !pip install -U openai 升級您的 openai 版本。 安裝套件之後,請執行 dbutils.library.restartPython()

預期輸出:


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

下一步