LLMs
LLMs,即大型语言模型,在机器学习领域迅速成为基石,提供了从自然语言理解到代码生成等广泛的能力。然而,充分发挥LLMs的潜力通常涉及复杂的流程,从与多个提供者接口到微调特定模型以实现预期结果。
这种复杂性很容易成为开发人员和数据科学家在将LLM能力集成到他们的应用程序中时的瓶颈。
MLflow 对 LLMs 的支持 旨在通过引入一系列以最终用户为中心的功能和工具来缓解这些挑战。
GenAI 应用程序在 MLflow 中的教程和使用案例指南
有兴趣学习如何利用 MLflow 进行您的 GenAI 项目吗?
查看下面的教程和指南,了解更多有趣的用例,这些用例可能会帮助您更轻松地利用GenAI!
请注意,在 “探索原生LLM风味”部分 中还有其他教程,所以一定要查看那些内容!
MLflow 追踪
备注
MLflow Tracing 目前处于 实验状态 ,可能会在没有弃用警告或通知的情况下发生变更。
MLflow 提供了全面的追踪能力,用于监控和分析 GenAI 应用程序的执行。这包括对 LangChain、OpenAI、LlamaIndex 等 GenAI 框架的自动追踪,使用高级流畅 API 和低级客户端 API 进行手动追踪工具,以实现细粒度控制。此功能使您能够捕获详细的追踪数据,从而实现更好的调试、性能监控,并深入了解复杂的工作流程。无论是通过装饰器、上下文管理器,还是显式 API 调用,MLflow 都提供了所需的灵活性,以追踪和优化您的 GenAI 模型的操作,并将追踪数据保留在追踪服务器中,以便进一步分析。
使用GenAI库进行自动追踪: 与LangChain、OpenAI、LlamaIndex和AutoGen等库的无缝集成,用于自动追踪数据收集。
使用高级流畅API进行手动跟踪注入: 易于使用的装饰器和上下文管理器,用于通过最小的代码更改添加跟踪。
用于追踪的低级客户端API: 提供线程安全的方法,用于对追踪数据管理进行详细和明确的控制。
要了解更多关于追踪是什么的信息,请参阅我们的 追踪概念概述 指南。要深入探索 MLflow 追踪的结构及其模式,请参阅 追踪模式 指南。
如果你对贡献 MLflow Tracing 的开发感兴趣,请参考 贡献 MLflow Tracing 指南。
LLMs 的 MLflow AI 网关
作为一个统一的接口,MLflow AI Gateway 简化了与多个LLM提供者的交互。除了支持最流行的SaaS LLM提供者外,MLflow AI Gateway还提供了一个与MLflow模型服务的集成,使您能够在自己的服务基础设施中提供自己的LLM或微调的基础模型。
备注
MLflow AI 网关正在积极开发中,并已被标记为 实验性。随着根据反馈对该新功能进行改进和扩展其功能,API 可能会发生变化。
MLflow AI Gateway 的好处
统一端点: 不再需要在多个提供者API之间切换。
简化集成:一次性设置,无需重复复杂的集成。
安全凭证管理:
集中存储防止了分散的API密钥。
无硬编码或用户处理的密钥。
一致的API体验:
所有提供商的统一API。
易于使用的 REST 端点和客户端 API。
无缝提供者切换:
无需修改代码即可更换供应商。
零停机时间提供者、模型或路由交换。
探索 MLflow AI 网关的原生提供者
MLflow AI 网关支持来自流行 SaaS 模型供应商的大量基础模型,并提供通过与 MLflow 模型服务集成来托管您自己的开源模型的方法。
请参阅 支持的提供商模型 以获取支持的提供商和模型的完整列表。
如果你对如何为特定提供者设置 MLflow AI 网关感兴趣,请点击以下链接查看我们在 GitHub 上的最新文档。每个链接将带你到一个 README 文件,该文件将解释如何为该提供者设置路由。在 README 文件的同一目录下,你将找到一个可运行的示例,该示例展示了如何查询示例创建的路由,为你提供了一个快速入门的参考,以便开始使用你喜欢的提供者!
备注
MLflow 和 Hugging Face TGI 提供者用于自托管的LLM服务,支持基础开源LLM模型、微调开源LLM模型或您自己的自定义LLM。这些提供者的示例文档将向您展示如何开始使用这些服务,使用来自 Hugging Face Hub 的免费开源模型。
LLM 评估
在大型语言模型(LLMs)的广阔领域中导航可能会让人望而生畏。确定与项目需求相符的正确模型、提示或服务绝非易事。传统的机器学习评估指标在评估生成模型的细微性能时往往显得力不从心。
进入 MLflow LLM 评估。此功能旨在简化评估过程,提供一种简化的方法来比较基础模型、提供者和提示。
MLflow 的 LLM 评估的好处
简化评估:轻松导航LLM领域,通过可用于比较生成文本的标准指标,确保为您的项目找到最佳匹配。
特定用例指标: 利用 MLflow 的
mlflow.evaluate()
API 实现高级、无摩擦的评估体验。可定制的指标:除了提供的指标外,MLflow 支持插件风格的定制评分,增强了评估的灵活性。
比较分析:轻松比较基础模型、提供商和提示,以做出明智的决策。
深度洞察:深入探索生成模型的复杂性,配备一套全面的与大型语言模型相关的指标。
MLflow 的 LLM 评估旨在弥合传统机器学习评估与 LLM 带来的独特挑战之间的差距。
提示工程用户界面
有效利用大型语言模型(LLMs)通常取决于设计正确的提示。高质量提示的开发是一个反复试验的过程,后续的实验并不保证会带来质量的累积提升。随着通过提示实验进行迭代的速度和数量增加,快速记住或保持尝试过的不同提示的状态历史变得非常困难。
作为提示工程的强大工具,MLflow 提示工程 UI 彻底改变了开发者与大语言模型提示的交互和优化方式。
MLflow 提示工程 UI 的优点
迭代开发:简化的流程,便于试错,避免复杂的困扰。
基于UI的原型设计:无需深入代码,即可原型化、迭代和优化提示。
无障碍工程:使提示工程更加用户友好,加速实验进程。
优化配置:快速找到最适合问答或文档摘要等任务的模型配置。
透明追踪:
每个模型迭代和配置都经过精心跟踪。
确保开发过程中的可重复性和透明度。
备注
MLflow 提示工程 UI 正在积极开发中,并已被标记为 实验性。随着反馈的收集和工具的完善,功能和界面可能会发生变化。
LLMs 的原生 MLflow 风格
利用LLMs的力量变得轻而易举,特别是有专门为使用LLM库和框架设计的工具。
对流行包的原生支持:为保存、记录和管理推理配置等任务提供标准化的接口。
PyFunc 兼容性:
将模型作为 PyFuncs 加载,以实现跨服务基础设施的广泛兼容性。
加强LLMs的MLOps流程,确保顺利部署。
利用 代码生成模型功能 简化 GenAI 应用开发。
紧密的生态系统:
所有必要的工具和功能都整合在 MLflow 下。
专注于从大型语言模型(LLMs)中获取价值,而不会被接口和优化的复杂性所困扰。
探索原生 LLM 风格
选择以下集成以阅读有关如何利用 MLflow 与这些流行库的原生集成的文档:
在 MLflow 中跟踪 LLM
赋予开发者先进的跟踪能力,MLflow LLM 跟踪系统 作为管理和分析与大型语言模型(LLMs)交互的首选解决方案脱颖而出。
MLflow LLM 跟踪系统的优势
强大的交互管理:全面跟踪每次LLM交互,以获取最大洞察。
为大型语言模型量身定制:
专为大型语言模型设计的独特功能。
从记录提示到跟踪动态数据,MLflow 都能应对。
深度模型洞察:
将 ‘predictions’ 引入为核心实体,与现有的 artifacts、parameters 和 metrics 并列。
深入了解文本生成模型的行为和性能。
清晰性和可重复性:
确保在所有LLM交互中实现一致且透明的跟踪。
促进在LLM部署和使用中的明智决策和优化。