跳到主要内容

MLflow for GenAI 入门

面向生产级 GenAI 的完整开源 LLMOps 平台

MLflow 改变了软件工程师构建、评估和部署 GenAI 应用程序的方式。您可以获得完整的可观测性、系统化的评估和部署信心——同时保持使用任何框架或模型提供商的灵活性。

GenAI 开发生命周期

MLflow 提供了一个完整的平台,支持 GenAI 应用程序开发的每个阶段。从初始原型设计到生产监控,这些集成功能确保您可以自信地构建、测试和部署。

开发与调试

跟踪每一次 LLM 调用、提示交互和工具调用。通过对执行路径、token 使用和决策点的完整可见性来调试复杂的 AI 工作流。

评估与改进

使用 LLM 裁判、人工反馈和自定义指标进行系统化测试。客观地比较版本,并在出现回归之前捕获它们。

部署与监控

使用内置的部署目标自信地提供模型。监控生产性能并根据实际使用模式进行迭代。

为什么选择开源 MLflow 进行 GenAI?

作为最初的开源 ML 平台,MLflow 为 GenAI 开发带来了经过实战检验的可靠性和社区驱动的创新。没有供应商锁定,没有专有格式——只有与您的技术栈配合使用的强大工具。

生产级可观测性

自动集成 15 多个框架,包括 OpenAI、LangChain 和 LlamaIndex。获取详细的跟踪信息,显示每次请求的 token 使用量、延迟和执行路径——没有黑盒。

智能提示管理

使用 MLflow 的提示注册表对提示进行版本控制、比较和部署。跨提示变体跟踪性能并为生产系统维护审计日志。

自动化质量保证

通过 LLM 裁判和自动化评估建立信心。对每一次更改运行系统化测试,并随着时间的推移跟踪质量指标以防止回归。

框架无关集成

使用任何 LLM 框架或提供商,无需供应商锁定。MLflow 可与您现有的工具协同工作,同时提供统一的跟踪、评估和部署。

开始构建生产 GenAI 应用程序

MLflow 将 GenAI 开发从复杂的仪器化转变为简单的单行集成。了解如何轻松地为您的 AI 应用程序添加全面的可观测性、评估和部署。访问 Tracing guide 以获取更多信息。

一行代码添加完整的可观测性

将任何 GenAI 应用程序转化为完全可观测的系统

python
import mlflow

# Enable automatic tracing for your framework
mlflow.openai.autolog() # For OpenAI
mlflow.langchain.autolog() # For LangChain
mlflow.llama_index.autolog() # For LlamaIndex
mlflow.dspy.autolog() # For DSPy

# Your existing code now generates detailed traces
from openai import OpenAI

client = OpenAI()
response = client.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role": "user", "content": "Explain quantum computing"}],
)
# ✅ Automatically traced: tokens, latency, cost, full request/response

无需代码更改。每次 LLM 调用、工具交互和提示执行都会自动捕获详细指标。

系统化管理和优化提示

注册提示并使用数据驱动技术自动优化它们。通过 Prompt Registry 指南全面管理提示。

python
import mlflow
import openai
from mlflow.genai.optimize import GepaPromptOptimizer
from mlflow.genai.scorers import Correctness

# Register an initial prompt
prompt = mlflow.genai.register_prompt(
name="math_tutor",
template="Answer this math question: {{question}}. Provide a clear explanation.",
)


# Define prediction function that includes prompt.format() call for your target prompt(s)
def predict_fn(question: str) -> str:
prompt = mlflow.genai.load_prompt("prompts:/math_tutor@latest")
completion = openai.OpenAI().chat.completions.create(
model="gpt-4o-mini",
messages=[{"role": "user", "content": prompt.format(question=question)}],
)
return completion.choices[0].message.content


# Prepare training data with inputs and expectations
train_data = [
{
"inputs": {"question": "What is 15 + 27?"},
"expectations": {"expected_response": "42"},
},
{
"inputs": {"question": "Calculate 8 × 9"},
"expectations": {"expected_response": "72"},
},
{
"inputs": {"question": "What is 100 - 37?"},
"expectations": {"expected_response": "63"},
},
# ... more examples
]

# Automatically optimize the prompt using MLflow + GEPA
result = mlflow.genai.optimize_prompts(
predict_fn=predict_fn,
train_data=train_data,
prompt_uris=[prompt.uri],
optimizer=GepaPromptOptimizer(reflection_model="openai:/gpt-4o-mini"),
scorers=[Correctness(model="openai:/gpt-4o-mini")],
)

# The optimized prompt is automatically registered as a new version
optimized_prompt = result.optimized_prompts[0]
print(f"Optimized prompt registered as version {optimized_prompt.version}")
print(f"Template: {optimized_prompt.template}")
print(f"Score: {result.final_eval_score}")

将手动提示工程转化为系统化、数据驱动的优化,并进行自动性能跟踪。在 Optimize Prompts 指南中了解更多。

先决条件

准备好开始了吗?您需要

  • 安装 Python 3.10+
  • MLflow 3.5+ (pip install --upgrade mlflow)
  • LLM 提供商(OpenAI、Anthropic 等)的 API 访问权限

必备学习路径

掌握这些核心功能,使用 MLflow 构建健壮的 GenAI 应用程序。从可观测性开始,然后添加系统化评估和部署。

这三个基础将为您提供生产 GenAI 开发所需的可见性和质量信心。每个教程都包含实际代码示例和生产部署的最佳实践。


高级 GenAI 功能

掌握了基础知识后,可以探索这些高级功能,以构建具有企业级可靠性的复杂 GenAI 应用程序。

这些功能使您能够通过系统化的质量管理和健壮的部署基础设施来构建生产就绪的 GenAI 应用程序。


框架特定集成指南

MLflow 提供与流行的 GenAI 框架的深度集成。选择您的框架,开始进行优化的集成和最佳实践。

每个集成指南都包含框架特定的示例、最佳实践和生产部署的优化技术。


开启您的 MLflow GenAI 之旅

准备好构建生产就绪的 GenAI 应用程序了吗?从上面的环境设置指南开始,然后探索跟踪以实现 AI 系统的完全可观测性。加入数千名工程师的行列,他们信任 MLflow 的开源平台进行 GenAI 开发。