一个用于快速工程的可视化编程环境

内容

ChainForge 是一个用于快速工程的开源可视化编程环境。使用 ChainForge,您可以以超越个别证据的方式评估提示和文本生成模型的稳健性。我们认为,提示多个LLM、比较它们的响应并对其进行假设测试不仅应该简单,而且应该有趣。

要了解更多,请阅读我们的文档

尝试 ChainForge: chainforge.ai/play

请注意,您必须使用 Chrome、Firefox、Edge 或 Brave 浏览器。

我们已经创建了一些示例流程以供开始(右上角)。例如,这是一个用于评估模型对提示注入攻击鲁棒性的示例流程:

如有任何问题、评论或功能请求,请在我们的 GitHub 上提交一个问题,或在此处提交 Google 表单。

或者... 在本地安装 ChainForge

ChainForge 的 Web 版本功能略有限。例如,在完整版本中,您可以从环境变量加载 API 密钥,编写 Python 代码来评估 LLM 响应,或查询通过 Dalai 托管的本地运行的 Alpaca/Llama 模型。

在您的计算机上安装 ChainForge,只需执行以下操作:

pip 安装 chainforge chainforge 服务

在 Chrome、Firefox、Edge 或 Brave 浏览器中打开 localhost:8000

使用 ChainForge 我可以做什么?

基于LLM调用构建的软件需要用户验证输出的质量。ChainForge提供了一套工具,可以轻松评估和可视化提示(和模型)的质量,而您只需付出最少的努力。换句话说,它旨在使LLM的评估变得轻而易举 🍰。

每天,在社交媒体上,开发者们声称某个提示对他们有效。但这些声称都是凭经验,没有数据证实其稳健性 — 没有图表,没有确凿证据,没有办法验证哪种模型对你的使用情况更好。如果你能够准确地在一瞬间知道哪个提示实际上是'最佳'的?而且不仅如此,还能知道哪个模型具有最高性能的响应?

使用 ChainForge,您可以立即:

  • 测试对提示注入攻击的鲁棒性
  • 在指示LLM仅以特定格式回复时,测试输出的一致性(例如,仅代码)
  • 发送大量参数化提示,缓存并将其导出到Excel文件,而无需编写任何代码
  • 验证相同模型的响应质量,但在不同设置下
  • 测量不同系统消息对ChatGPT输出的影响
  • 运行从OpenAI评估生成的示例评估
  • ...以及更多

开发 + 贡献

ChainForge正在积极开发中,目前提供公开测试版。我们欢迎并鼓励贡献者。如果您想做出贡献,只需提交一个问题,或者fork 存储库 并发起拉取请求

ChainForge 是由Ian Arawjo创建的,他是哈佛大学Glassman Lab的博士后学者,目前担任首席开发人员。持续合作伙伴包括Elena GlassmanMartin WattenbergPriyan VaithilingamChelse Swoopes

本工作部分资助来自NSF资助项目IIS-2107391、IIS-2040880和IIS-1955699。本材料中表达的任何观点、发现、结论或建议均属作者个人观点,不一定代表美国国家科学基金会的观点。

版权所有 © Ian Arawjo

总结
ChainForge是一个开源的视觉编程环境,用于评估提示和文本生成模型的鲁棒性。它提供了一套工具来评估和可视化提示(和模型)的质量,旨在使LLM的评估变得轻松。用户可以通过ChainForge测试提示注入攻击的鲁棒性、输出一致性、参数化提示等。ChainForge还提供了本地安装版本,并欢迎贡献者参与开发。该项目由Ian Arawjo等人开发,部分资助来自NSF资助。