提示流
提示流是一套开发工具,旨在简化基于LLM的AI应用程序的端到端开发周期,从概念化、原型制作、测试、评估到生产部署和监控。它使提示工程更加容易,并使您能够构建具有生产质量的LLM应用程序。
通过提示流,您将能够:
- 创建和迭代开发流程
- 评估流程质量和性能
- 使用较大的数据集评估您的流程的质量和性能。
- 将测试和评估集成到您的CI/CD系统中,以确保流程质量。
- 简化生产开发周期
- 将您的流程部署到您选择的服务平台或轻松集成到您的应用程序代码库中。
- (可选但强烈推荐)通过利用Azure AI中的云版本的提示流与您的团队进行协作。
安装
为了快速入门,您可以使用预构建的开发环境。点击下面的按钮在GitHub Codespaces中打开仓库,然后继续阅读!
如果您想在本地环境中开始,首先安装这些包:
确保您有一个Python环境,推荐版本为python>=3.9, <=3.11
。
pip install promptflow promptflow-tools
快速开始 ⚡
使用提示流创建聊天机器人
运行命令从聊天模板启动一个提示流,它将创建名为my_chatbot
的文件夹并在其中生成所需的文件:
pf flow init --flow ./my_chatbot --type chat
为您的API密钥设置连接
对于OpenAI密钥,通过运行命令使用my_chatbot
文件夹中的openai.yaml
文件建立连接,该文件存储您的OpenAI密钥(使用--set覆盖密钥和名称以避免更改yaml文件):
pf connection create --file ./my_chatbot/openai.yaml --set api_key=<your_api_key> --name open_ai_connection
对于Azure OpenAI密钥,通过运行命令使用azure_openai.yaml
文件建立连接:
pf connection create --file ./my_chatbot/azure_openai.yaml --set api_key=<your_api_key> api_base=<your_api_base> --name open_ai_connection
与您的流程进行聊天
在my_chatbot
文件夹中,有一个flow.dag.yaml
文件,它概述了流程,包括输入/输出、节点、连接和LLM模型等
请注意,在
chat
节点中,我们使用了名为open_ai_connection
的连接(在connection
字段中指定)和gpt-35-turbo
模型(在deployment_name
字段中指定)。deployment_name字段用于指定OpenAI模型或Azure OpenAI部署资源。
运行以下命令与您的聊天机器人互动:(按Ctrl + C
结束会话)
pf flow test --flow ./my_chatbot --interactive
核心价值:确保从原型到生产的“高质量”
探索我们的15分钟教程,该教程引导您完成提示微调 ➡ 批量测试 ➡ 评估,所有这些设计都是为了确保高质量并准备好生产。
下一步!继续教程👇部分,深入了解提示流。
教程 🏃♂️
提示流是一个旨在构建高质量LLM应用程序的工具,提示流中的开发过程遵循以下步骤:开发流程、提高流程质量、将流程部署到生产环境。
开发您自己的LLM应用程序
VS Code扩展
我们还提供了一个VS Code扩展(一个流程设计器),用于提供带UI的互动流程开发体验。
您可以从visualstudio marketplace上安装它。
深入探讨流程开发
开始使用提示流:逐步指南,调用您的第一个流程运行。
从用例中学习
教程:与PDF聊天:关于如何使用提示流构建高质量的聊天应用程序的端到端教程,包括流程开发和使用指标评估。
更多示例可以在这里找到。我们欢迎新的使用案例贡献!
贡献者设置
如果您有兴趣贡献,请从我们的开发设置指南开始:dev_setup.md。
下一步!继续贡献👇部分,为提示流做出贡献。
贡献
本项目欢迎贡献和建议。大多数贡献需要您同意一个贡献者许可协议(CLA),声明您有权利,并且确实授予我们使用您的贡献的权利。详情请访问https://cla.opensource.microsoft.com。
当您提交拉取请求时,CLA机器人会自动确定您是否需要提供CLA,并适当地为PR添加装饰(例如,状态检查、评论)。只需按照机器人提供的指示进行操作。您只需要在所有使用我们CLA的仓库中做一次。
本项目已采用Microsoft开源行为准则。 更多信息请参见行为准则FAQ或联系opencode@microsoft.com以获取任何其他问题或评论。
商标
本项目可能包含项目、产品或服务的商标或徽标。Microsoft商标或徽标的授权使用必须遵守Microsoft的商标和品牌指南。 对本项目的修改版本中使用Microsoft商标或徽标不得引起混淆或暗示Microsoft的赞助。 任何第三方商标或徽标的使用均需遵守第三方的政策。
行为准则
本项目已采用Microsoft开源行为准则。 更多信息见行为准则FAQ或联系opencode@microsoft.com以获取其他任何问题或评论。
数据收集
软件可能会收集有关您和您的软件使用的信息,并在启用遥测的情况下将其发送给Microsoft。Microsoft可能会使用此信息来提供服务并改进我们的产品和服务。您可以按照存储库中的描述开启遥测。 软件中还有一些功能可以使您和Microsoft从您的应用程序用户那里收集数据。如果使用这些功能,您必须遵守适用法律,包括向您的应用程序用户提供适当的通知以及Microsoft的隐私声明副本。我们的隐私声明位于https://go.microsoft.com/fwlink/?LinkID=824704。您可以在帮助文档和我们的隐私声明中了解更多有关数据收集和使用的信息。使用该软件即表示您同意这些做法。
遥测配置
默认情况下开启遥测收集。
要退出,请运行pf config set telemetry.enabled=false
以关闭它。
许可证
版权所有(c) Microsoft Corporation。保留所有权利。
根据MIT许可证授权。