本页提供 GenAI 应用程序中使用的 MLflow API 的综合索引,并提供了指向官方 MLflow 文档的直接链接。
标记为“仅 Databricks”的 MLflow 功能仅在 Databricks 托管的 MLflow 上可用。
官方文档链接
重要
此页上引用的某些 API 目前处于 Beta 或 实验 阶段。 这些 API 在将来的版本中可能会更改或删除。 实验 API 适用于所有客户,Beta API 可自动提供给大多数客户。 如果你无权访问 Beta API 并且需要请求访问权限,请联系 Databricks 支持代表。
试验管理
管控 MLflow 实验和运行,以追踪 GenAI 应用程序开发进度:
SDK
-
mlflow.search_runs()- 按条件搜索和筛选作业 -
mlflow.set_experiment()- 设置 MLflow 活动实验 -
mlflow.start_run()- 启动新的 MLflow 运行实例以进行跟踪
实体
-
mlflow.entities.Experiment- 实验元数据和配置 -
mlflow.entities.Run- 运行元数据、指标和参数
提示管理
GenAI 应用程序中使用的提示的版本控制和生命周期管理:
SDK
-
mlflow.genai.load_prompt()- 从注册表加载已版本化提示 -
mlflow.genai.optimize_prompt()- 使用优化算法自动改进提示 -
mlflow.genai.register_prompt()- 向注册器注册新提示 -
mlflow.genai.search_prompts()- 按名称或标记搜索提示 -
mlflow.genai.delete_prompt_alias()- 从提示版本中删除别名 -
mlflow.genai.set_prompt_alias()- 为提示版本分配别名
实体
-
mlflow.entities.Prompt- 提示元数据和版本信息
评估和监视
记分器生命周期管理(仅限 Databricks)
重要
此功能在 Beta 版中。
在生产环境中持续跟踪质量的记分器生命周期管理:
记分器实例方法
-
Scorer.register()- 向服务器注册自定义记分器 -
Scorer.start()- 使用采样开始联机评估 -
Scorer.update()- 修改采样配置 -
Scorer.stop()- 停止联机评估 -
Scorer.delete()- 完全删除记分器
记分器注册表函数
-
mlflow.genai.scorers.get_scorer()- 按名称检索已注册的记分器 -
mlflow.genai.scorers.list_scorers()- 列出所有已注册的评分者 -
mlflow.genai.scorers.delete_scorer()- 按名称删除已注册的记分器
记分器属性
-
Scorer.sample_rate- 当前采样率 (0.0-1.0) -
Scorer.filter_string- 当前跟踪筛选器
配置类
-
mlflow.genai.ScorerSamplingConfig- 采样配置数据类
核心评估 API
用于脱机评估和生产监视的核心 API:
-
mlflow.genai.evaluate()- 使用评分器和数据集协调脱机评估的评估集成框架 -
mlflow.genai.to_predict_fn()- 将模型输出转换为标准化预测函数格式 -
mlflow.genai.Scorer- 使用状态管理实现面向对象的自定义记分器类 -
mlflow.genai.scorer()- 用于评分器创建和评估逻辑的记分器修饰器
预定义的评分器
质量评估打分工具已准备好立即使用:
-
mlflow.genai.scorers.Safety- 内容安全评估 -
mlflow.genai.scorers.Correctness- 答案准确性评估 -
mlflow.genai.scorers.RelevanceToQuery- 查询相关性评分 -
mlflow.genai.scorers.Guidelines- 自定义准则符合性 -
mlflow.genai.scorers.ExpectationsGuidelines- 具有期望的准则评估 -
mlflow.genai.scorers.RetrievalGroundedness- RAG 地面评估 -
mlflow.genai.scorers.RetrievalRelevance- 检索的上下文相关性 -
mlflow.genai.scorers.RetrievalSufficiency- 评估上下文的充分性
记分员助手
-
mlflow.genai.scorers.get_all_scorers()- 检索所有内置评分器
判断函数
基于 LLM 的评估函数,可直接使用或用于评分器封装:
-
mlflow.genai.judges.is_safe()- 安全评估 -
mlflow.genai.judges.is_correct()- 正确性评估 -
mlflow.genai.judges.is_grounded()- 地面验证 -
mlflow.genai.judges.is_context_relevant()- 上下文相关性 -
mlflow.genai.judges.is_context_sufficient()- 上下文是否足够 -
mlflow.genai.judges.meets_guidelines()- 自定义指导原则评估 -
mlflow.genai.make_judge()- 创建自定义法官(建议用于 MLflow 3.4.0 及更高版本) -
mlflow.genai.judges.custom_prompt_judge()- 具有自定义提示的法官(在 MLflow 3.4.0 中弃用,请改用make_judge())
判断输出实体
-
mlflow.genai.judges.CategoricalRating- 分类判决响应的枚举
评估数据集
创建和管理版本控制的测试数据集,以便进行系统评估:
SDK
-
mlflow.genai.create_dataset()- 创建新的评估数据集 -
mlflow.genai.delete_dataset()- 删除评估数据集 -
mlflow.genai.get_dataset()- 检索现有评估数据集
实体
-
mlflow.genai.datasets.EvaluationDataset- 版本控制测试数据容器-
merge_records()- 合并来自多个源的记录 -
set_profile()- 配置数据集档案设置 -
to_df()- 将数据集转换为 pandas 数据帧 -
to_evaluation_dataset()- 转换为评估数据集格式
-
人工标记和审阅应用(Databricks 专用)
系统性质量评估的人工反馈收集与审查工作流:
实体
mlflow.genai.Agent- 用于查看应用测试的代理配置mlflow.genai.LabelingSession- 人工标记工作流管理器-
add_dataset()- 将评估数据集添加到标记会话 -
add_traces()- 添加供人工评审的追踪日志 -
set_assigned_users()- 将审阅者分配到会话 -
sync()- 同步会话状态
-
mlflow.genai.ReviewApp- 交互式评审应用程序-
add_agent()- 添加用于测试的代理 -
remove_agent()- 从审阅应用中删除代理
-
标记会话 SDK
-
mlflow.genai.create_labeling_session()- 创建新的标记会话 -
mlflow.genai.delete_labeling_session()- 删除标注会话 -
mlflow.genai.get_labeling_session()- 按 ID 检索标记会话 -
mlflow.genai.get_labeling_sessions()- 列出所有标注会话 -
mlflow.genai.get_review_app()- 检索评审应用实例
标签架构类型
-
mlflow.genai.label_schemas.InputCategorical- 分类输入字段类型 -
mlflow.genai.label_schemas.InputCategoricalList- 多选分类输入 -
mlflow.genai.label_schemas.InputNumeric- 数字输入字段类型 -
mlflow.genai.label_schemas.InputText- 文本输入字段类型 -
mlflow.genai.label_schemas.InputTextList- 多文本输入字段类型 -
mlflow.genai.label_schemas.LabelSchema- 标签架构定义 -
mlflow.genai.label_schemas.LabelSchemaType- 架构类型枚举
标签架构 SDK
-
mlflow.genai.label_schemas.create_label_schema()- 创建新的标签架构 -
mlflow.genai.label_schemas.delete_label_schema()- 删除现有标签架构 -
mlflow.genai.label_schemas.get_label_schema()- 按名称检索标签架构
提示优化
重要
此功能在 Beta 版中。
使用数据驱动的优化算法自动改进提示:
实体
-
mlflow.genai.optimize.LLMParams- LLM 配置参数 -
mlflow.genai.optimize.OptimizerConfig- 优化算法配置 -
mlflow.genai.optimize.PromptOptimizationResult- 优化结果和指标
SDK
-
mlflow.genai.optimize.optimize_prompt()- 运行提示优化过程
追踪
检测和捕获 GenAI 应用程序中的执行跟踪:
SDK
-
mlflow.delete_trace_tag()- 从跟踪中删除标记 -
mlflow.get_current_active_span()- 获取当前活动范围 -
mlflow.get_last_active_trace()- 获取最近完成的跟踪 -
mlflow.get_last_active_trace_id()- 获取最后一个活动跟踪的 ID -
mlflow.get_trace()- 按 ID 检索追踪记录 -
mlflow.search_traces()- 搜索和筛选踪迹 -
mlflow.set_trace_tag()- 向跟踪添加标记 -
mlflow.start_span()- 手动启动新范围 -
mlflow.trace- 修饰器自动跟踪函数执行 -
mlflow.traceName- 用于设置跟踪名称的上下文管理器 -
mlflow.traceOutputs- 用于设置跟踪输出的上下文管理器 -
mlflow.tracing- 包含配置函数的跟踪模块 -
mlflow.tracing.disable- 全局禁用跟踪 -
mlflow.tracing.disable_notebook_display()- 禁用笔记本中的跟踪显示 -
mlflow.tracing.enable- 全局启用跟踪 -
mlflow.tracing.enable_notebook_display()- 在笔记本中启用跟踪显示 -
mlflow.update_current_trace()- 更新当前跟踪的元数据
实体
-
mlflow.entities.Trace- 包含所有跨度和元数据的完整跟踪 -
mlflow.entities.TraceData- 跟踪执行数据 -
mlflow.entities.TraceInfo- 跟踪元数据和摘要信息 -
mlflow.entities.Span- 跟踪中的单个范围 -
mlflow.entities.SpanEvent- 跨度内发生的事件 -
mlflow.entities.SpanType- 跨度类型分类枚举 -
mlflow.entities.Document- RAG 应用程序的文档实体
评估实体
用于存储评估结果和反馈的数据结构:
-
mlflow.entities.Assessment- 评估结果容器 -
mlflow.entities.AssessmentError- 评估时发生的错误的详细信息 -
mlflow.entities.AssessmentSource- 评估的来源 -
mlflow.entities.AssessmentSourceType- 评估源类型枚举 -
mlflow.entities.Expectation- 预期真实数据结果 -
mlflow.entities.Feedback- 具有值和理由的记分器输出
跟踪集成
适用于常用生成式AI框架和库的自动化工具。
-
mlflow.anthropic.autolog- 人类 Claude 集成 -
mlflow.autogen.autolog- Microsoft AutoGen 集成 -
mlflow.bedrock.autolog- AWS Bedrock 集成 -
mlflow.crewai.autolog- CrewAI 集成 -
mlflow.dspy.autolog- DSPy 集成 -
mlflow.gemini.autolog- Google Gemini 集成 -
mlflow.groq.autolog- Groq 集成 -
mlflow.langchain.autolog- LangChain 集成 -
mlflow.litellm.autolog- LiteLLM 集成 -
mlflow.llama_index.autolog- LlamaIndex 集成 -
mlflow.mistral.autolog- Mistral AI 集成 -
mlflow.openai.autolog- OpenAI 集成
版本跟踪
跟踪和管理生产中的 GenAI 应用程序版本:
SDK
-
mlflow.set_active_model()- 设置用于版本跟踪的活动模型 -
mlflow.clear_active_model()- 清除活动模型上下文 -
mlflow.get_active_model_id()- 获取当前活动模型 ID -
mlflow.create_external_model()- 注册外部模型部署 -
mlflow.delete_logged_model_tag()- 从记录的模型中删除标记 -
mlflow.finalize_logged_model()- 完成存储的模型 -
mlflow.get_logged_model()- 按 ID 检索已记录的模型 -
mlflow.initialize_logged_model()- 初始化新的日志模型 -
mlflow.last_logged_model()- 获取最近记录的模型 -
mlflow.search_logged_models()- 搜索已保存的模型 -
mlflow.set_logged_model_tags()- 将标记添加到记录的模型 -
mlflow.log_model_params()- 模型日志参数
实体
-
mlflow.entities.LoggedModel- 记录的模型元数据和信息 -
mlflow.entities.LoggedModelStatus- 已记录的模型状态枚举 -
mlflow.ActiveModel- 活动模型上下文管理器