ChainForge 项目介绍
ChainForge 是一个开源码的可视化编程环境,专为针对大型语言模型(LLM)的提示进行压力测试而设计。
什么是 ChainForge?
ChainForge 是一个数据流提示工程环境,旨在用于分析和评估大型语言模型(LLM)的响应。它主要用于早期的、简明的提示探索,超越了与单个 LLM 的随意聊天。通过 ChainForge,用户可以:
- 同时查询多个 LLM,以快速有效地测试提示想法和变体。
- 比较不同模型设置和提示排列的响应质量,以选择最适合自己使用场景的提示和模型。
- 设置评估指标(评分函数),并立即可视化跨提示、提示参数、模型和模型设置的结果。
- 同时在多个模板参数和聊天模型上保持对话。不仅可以模板提示,还可以模板化后续聊天消息,并在每次聊天对话轮次检查和评估输出。
ChainForge 提供了一系列示例评估流程,包括根据 OpenAI 的评估基准生成的 188 个示例流程,让用户了解应用的可能性。
支持的模型提供商
此项目目前处于开放测试版本,支持的模型提供商包括:OpenAI、HuggingFace、Anthropic、Google PaLM2、Microsoft Azure OpenAI 端点,以及 Alpaca 和 Llama 等 Dalai 托管的模型。用户可以更改确切的模型和个体模型设置。可视化节点支持数值和布尔型评估指标。
如何安装与使用
用户可以在本地安装 ChainForge,或在网络版上进行试验。要在本地安装,请确保已拥有 Python 3.8 或更高版本,然后运行以下命令安装 ChainForge:
pip install chainforge
安装完成后,执行以下命令启动服务:
chainforge serve
然后在浏览器(如 Google Chrome、Firefox、Microsoft Edge 或 Brave)中打开 localhost:8000 即可访问。
功能亮点
ChainForge 旨在简化提示和模型的比较与评估。其基本功能包括:
- 提示排列:设置提示模板并输入变量的不同变体。
- 聊天回合:超越提示,模板化后续的聊天消息,测试用户询问如何影响 LLM 的输出。
- 模型设置:改变支持模型的设置并进行对比。
- 评估节点:探测 LLM 的响应并进行链式测试。
- 可视化节点:在图表中可视化评估结果,如箱形图和直方图。
这些功能使用户能够轻松地跨提示和提示参数进行比较,选择最佳提示集合,并进行模型的比较。
共享与协作
ChainForge 的网页版包含“共享”按钮,用户可以生成唯一链接来分享自己的流程。同时,欢迎开源合作伙伴参与开发,用户可以通过 GitHub 的 Issue 功能报告 BUG 或请求新功能。
欢迎任何对此项目感兴趣的用户进行试用并提供反馈。若在科研中使用 ChainForge 或基于其进行开发,建议引用相关文献。
ChainForge 是为了帮助开发提示分析流程或审计 LLM 输出的人士而设计,并希望其功能能为项目带来帮助。