跳到主要内容

追踪 Instructor

Instructor Tracing via autolog

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

MLflow 追踪通过为底层 LLM 库启用自动追踪来与 Instructor 配合工作。例如,如果您将 Instructor 用于 OpenAI LLM,您可以使用 mlflow.openai.autolog() 启用追踪,生成的追踪将捕获来自 Instructor 的结构化输出。

类似地,您也可以通过在 MLflow 中启用相应的自动日志记录,使用其他 LLM 提供商(如 Anthropic、Gemini 和 LiteLLM)来追踪 Instructor。

使用示例

以下示例展示了如何追踪包装了 OpenAI API 的 Instructor 调用。

import instructor
from pydantic import BaseModel
from openai import OpenAI

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

# Optional, create an experiment to store traces
mlflow.set_experiment("Instructor")


# 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}")