描图讲师

使用 autolog 进行讲师跟踪

讲师 是基于 Pydantic 构建的开源 Python 库,通过验证、重试和流式处理简化了结构化 LLM 输出。

MLflow 跟踪 通过为基础 LLM 库启用自动追踪来与 Instructor 合作。 例如,如果使用 Instructor for OpenAI LLM,则可以启用 mlflow.openai.autolog() 跟踪,并且生成的跟踪将捕获来自 Instructor 的结构化输出。

同样,你还可以通过在 MLflow 中启用相应的自动记录功能来跟踪其他 LLM 提供商(如 Anthropic、Gemini 和 LiteLLM)中的 Instructor。

注释

在无服务器计算群集上,不会自动启用自动记录。 必须显式调用相应的自动记录函数(例如 mlflow.openai.autolog()mlflow.anthropic.autolog()),才能为此集成启用自动跟踪。

示例用法

以下示例演示如何跟踪封装 OpenAI API 的 Instructor 功能调用。

import instructor
from pydantic import BaseModel
from openai import OpenAI
import mlflow

# Use other autologging function e.g., mlflow.anthropic.autolog() if you are using Instructor with different LLM providers
mlflow.openai.autolog()

# Set up MLflow tracking on Databricks
mlflow.set_tracking_uri("databricks")
mlflow.set_experiment("/Shared/instructor-demo")

# Use Instructor as usual
class ExtractUser(BaseModel):
    name: str
    age: int

client = instructor.from_openai(OpenAI())

res = client.chat.completions.create(
    model="gpt-4o-mini",
    response_model=ExtractUser,
    messages=[{"role": "user", "content": "John Doe is 30 years old."}],
)
print(f"Name: {res.name}, Age:{res.age}")

后续步骤