MLflow OpenAI 风格

注意

openai 风格正在积极开发中,并被标记为实验性。公共API可能会发生变化,随着风格的演进,可能会添加新功能。

介绍

OpenAI 的 GPT 模型 代表了自然语言处理(NLP)能力的一次重大飞跃。生成式预训练变压器(GPT)模型以其生成类人文本、理解复杂查询、总结大量文档等能力而闻名。OpenAI 一直处于 NLP 技术的前沿,提供在各个领域广泛适用的多功能模型。

利用 MLflow 强大的实验跟踪和模型管理框架,与 OpenAI 的 基于 GPT 的模型 的集成使从业者能够在其项目中高效地利用这些先进的 NLP 工具。从简单的文本生成到复杂的对话 AI 应用,MLflow-OpenAI 的集成为管理这些强大的模型带来了新的便捷性和有效性。

集成包括:

  • 文本分析与生成: 利用 GPT-3.5 和 GPT-4 等模型进行多样化的文本相关任务。

  • 对话式AI:探索 Chat Completions API 在交互式、上下文感知应用中的能力。

  • 嵌入生成: 为高级文档检索用例提供语料库和文本嵌入生成功能。

OpenAI 集成的自动日志支持

如果你想了解更多关于 MLflow 中对 OpenAI 的自动日志记录支持,请访问 OpenAI 自动日志记录 页面。

使用 OpenAI 风格的追踪

MLflow 的 OpenAI 风格包括一个集成的自动跟踪功能,使用 mlflow.openai.autolog() API。要了解更多关于如何记录您对 OpenAI SDK 的开发使用情况,请访问此风格的 自动记录跟踪指南

是什么让这个集成如此特别?

结合 MLflow 的实验跟踪和模型管理与 OpenAI 的尖端 NLP 模型,为 AI 应用开启了新的潜力。这种针对 OpenAI 的 MLflow 风格简化了以下过程:

  • 开发 一个利用 OpenAI 模型强大功能的应用程序。通过简化跟踪高度迭代和创意的提示工程过程,MLflow 提示工程 确保你不会错过任何好主意。

  • 审计和审查 你最有希望的实验。MLflow 跟踪服务 意味着你可以轻松分享你的工作成果,并获得同行对你工作的审查。

  • 自定义 应用程序的界面。无论您是想通过暴露 temperature 等参数来允许创造性控制,还是通过暴露 max_tokens 来放松成本控制,MLflow 都允许您配置默认值并限制修改用于推理的参数的能力。

  • 标记和注释 在迭代提示工程阶段使用 标签 来标记特别有希望的想法,以便你和其他人以后可以重新审视以获取灵感、进一步测试或部署。

房间里的大象:提示工程

在应用机器学习的其他领域,迭代假设的过程是耗时的、乏味的,并且容易形成细致记录特征精炼和训练过程每一步的习惯。随着生成式AI的出现以及OpenAI等提供的最先进大型语言模型的潜在能力,优化解决方案性能的过程大大缩短。在一个小时内,你可以轻松地设计和测试十几个提示。

尽管这种速度和易用性非常令人振奋,但它通常会导致在几个小时的实验后,你意识到自己无法记住几个小时前创建的数十个提示中,哪一个是你记得产生最佳结果的那个。

这就是 MLflow 的用武之地。使用 MLflow,您可以轻松跟踪您使用的提示、获得的结果以及生成的工件。

下图展示了一个MLflow帮助解决的有趣问题。

MLflow OpenAI 提示工程

使用 MLflow 进行太空飞行的提示工程

通过记录测试过程中使用的每个提示,你不仅可以轻松重现你得到的结果,还可以与他人分享这些结果,以便他们可以评估结果的主观质量。如果没有跟踪机制,你将被迫想出一个解决方案来记录各种参数、提示、测试输入和结果。

通过使用MLflow与OpenAI,你可以节省所有这些时间和精力,从而有更多时间来构思有趣的提示。

特性

通过 MLflow OpenAI 风格,用户可以:

  • 保存记录 使用 OpenAI 模型的应用程序在 MLflow 中使用 mlflow.openai.save_model()mlflow.openai.log_model()

  • 无缝跟踪详细的实验,包括与模型运行相关的 参数提示工件

  • 部署 OpenAI 模型以轻松应用于各种 NLP 应用。

  • 利用 mlflow.pyfunc.PythonModel 进行灵活的 Python 函数推理,实现定制化和创新的机器学习解决方案。

你能在OpenAI和MLflow上做什么?

将OpenAI的高级NLP模型与MLflow强大的模型管理能力相结合,开启了大量潜在的现实应用。以下是一些强大且有影响力的用例:

  • 自动化客户支持:开发复杂的聊天机器人,能够以类似人类的方式理解和回应客户咨询,显著提高客户服务效率和满意度。

  • 内容生成与管理:自动生成高质量、上下文相关的内容,适用于文章、博客或社交媒体帖子。通过总结和分类大量文本数据来管理内容,增强内容管理策略。

  • 语言翻译服务: 创建先进的翻译工具,不仅能将文本从一种语言转换为另一种语言,还能捕捉细微差别、习语和文化背景,更有效地弥合沟通差距。

  • 市场调研的情感分析: 分析客户反馈、社交媒体帖子或产品评论,以评估公众对品牌、产品或服务的情感,为营销和产品开发团队提供有价值的见解。

  • 个性化教育和培训工具: 开发由人工智能驱动的教育平台,能够根据个人学习偏好调整内容和教学风格,使教育更具吸引力和效果。

  • 法律与合规文件分析:自动化审查和分析法律文件、合同及合规材料,提高准确性并减少法律工作流程所需的时间和资源。

  • 医疗援助与研究:通过总结和分析医学文献、患者记录或临床试验数据,协助医学研究,有助于在医疗领域更快、更明智的决策。

  • 财务分析与预测:利用自然语言处理模型分析财务报告、市场趋势和新闻文章,为投资策略和经济预测提供更深入的见解和预测。

通过MLflow的集成,这些应用程序不仅受益于OpenAI模型的语言能力,还从简化的 跟踪版本控制部署 流程中获益。这种协同作用使开发者和企业能够构建复杂的、AI驱动的解决方案,以应对复杂的挑战并在各个行业中创造新的机会。

轻松部署

使用 MLflow 部署 OpenAI 模型变得轻而易举。像 mlflow.openai.load_model()mlflow.pyfunc.load_model() 这样的功能简化了模型服务。了解更多关于 使用 MLflow 部署模型 的信息,探索 部署 API,并学习如何 启动本地模型服务端点 以充分利用 MLflow 的部署能力。

开始使用 MLflow OpenAI 风格 - 教程和指南

下面,你会发现一些专注于不同方式的指南,这些方式可以帮助你利用 openai 库的强大功能,通过使用 MLflow 的 API 来实现跟踪和推理能力。

下图展示了教程所涵盖的基本复杂程度范围。

MLflow OpenAI 教程

OpenAI 风格教程中的内容范围

入门教程

高级教程

在这些教程中,主题涵盖了与 OpenAI 模型的应用交互,利用自定义 Python 模型来增强功能,超越入门教程中基于基本提示的交互。如果你是新手,请从上面的入门教程开始,因为它包含了你需要了解的环境配置信息,以便让本节中的笔记本正常工作。

详细文档

要了解更多关于OpenAI的MLflow风格细节,请深入阅读下面的综合指南。

View the Comprehensive Guide