跟踪 Ollama

通过 autolog 进行 Ollama 跟踪

Ollama 是一个开源平台,允许用户在其设备上本地运行大型语言模型(LLM),例如 Llama 3.2、Gemma 2、Mistral、Code Llama 等。

由于 Ollama 提供的本地 LLM 终结点与 OpenAI API 兼容,因此可以通过 OpenAI SDK 对其进行查询,并使用 mlflow.openai.autolog() 启用对 Ollama 的跟踪。 通过 Ollama 进行的任何 LLM 交互都将记录到活动的 MLflow 试验中。

import mlflow

mlflow.openai.autolog()

注释

在无服务器计算群集上,不会自动启用 genAI 跟踪框架的自动记录。 必须通过为要跟踪的特定集成调用适当的 mlflow.<library>.autolog() 函数来显式启用自动记录。

示例用法

  1. 使用所需的 LLM 模型运行 Ollama 服务器。
ollama run llama3.2:1b
  1. 为 OpenAI SDK 启用自动跟踪。
import mlflow

# Enable auto-tracing for OpenAI
mlflow.openai.autolog()

# Set up MLflow tracking on Databricks
mlflow.set_tracking_uri("databricks")
mlflow.set_experiment("/Shared/ollama-demo")
  1. 查询 LLM,并在 MLflow UI 中查看跟踪。
from openai import OpenAI

client = OpenAI(
    base_url="http://localhost:11434/v1",  # The local Ollama REST endpoint
    api_key="dummy",  # Required to instantiate OpenAI client, it can be a random string
)

response = client.chat.completions.create(
    model="llama3.2:1b",
    messages=[
        {"role": "system", "content": "You are a science teacher."},
        {"role": "user", "content": "Why is the sky blue?"},
    ],
)

禁用自动跟踪

可以通过全局调用 mlflow.openai.autolog(disable=True)mlflow.autolog(disable=True) 来禁用 Ollama 的自动跟踪。

后续步骤