Evalite发布:专为AI应用打造的TypeScript测试工具
快速阅读: Evalite,由Matt Pocock开发的TypeScript原生评估运行器,为LLM应用提供测试框架,支持可复现评估、调用轨迹捕获及本地迭代,v1测试版强调开发者体验与迭代速度,获社区积极反馈。
由 Matt Pocock 开发的 TypeScript 原生评估运行器 Evalite,为依赖于大语言模型(LLM)的应用程序提供了一个专门设计的测试框架。Evalite 允许开发人员编写可复现的评估、捕获调用轨迹,并通过网页界面在本地迭代。该项目达到了 v1 测试版里程碑,定位为类似于 Vitest 或 Jest 的工具,专为依赖 LLM 的应用程序设计,提供评分、追踪和成本意识迭代等功能。
Evalite 的模型将评估视为测试套件,但输出更加丰富。除了简单的通过或失败结果,Evalite 运行 .eval.ts 文件,每个数据点成为评分案例,并提供一级评分器和调用轨迹捕获功能,以便团队可以检查模型输出、链式调用并以编程方式评估行为。它运行带有实时重载和交互界面的本地开发服务器,由于构建在 Vitest 上,因此可以重用熟悉的测试特性,如模拟对象和生命周期钩子。
v1 测试版重点在于开发者体验和迭代速度。快速入门指南展示了如何安装 Evalite,添加 eval:dev npm 脚本,并编写使用现成评分器(如 autoevals)的简单评估。Evalite 还可以以编程方式运行,支持不同的运行模式,包括监控模式和一次性运行,并将结果持久化到自定义存储后端,以便团队可以跟踪评估趋势。
Evalite 在底层提供了针对生产工作流的功能。内置评分器和对自定义评分器的支持让团队能够编码特定领域的成功指标。Evalite 的追踪系统捕获输入、LLM 调用和中间状态,使得调试和根本原因分析更加确定。最近宣布 Evalite 可以缓存 AI SDK 模型,这一特性得到了用户的积极反响,一位评论者称其为“加速和迭代的游戏规则改变者”。
社区反应非常积极。该项目的 GitHub 仓库吸引了超过一千颗星,并且有活跃的发布节奏。作者在 X 平台上发布的 v1 测试版公告迅速获得了早期采用者的关注,其中一位评论者表示他们将在明天的实际项目中开始使用 Evalite。另一位用户解释了他们认为该项目存在的原因:“由于仍在开发中,预计会出现一些早期问题,例如最近提出的依赖声明问题。此问题已得到解决,作者表示正在积极修复来自早期采用者的 bug。”
Evalite 采用 MIT 许可证开源,并有意避免供应商锁定,支持任何 LLM,并提供可插拔的存储和评分器集成。随着组织构建更多自主性和 LLM 驱动的功能,Evalite 致力于使评估可复现、类型安全,并足够快速地成为日常开发工作流程的一部分。尽管早期采用者应该预期会有活跃的迭代,但该工具已经为测试 AI 驱动的应用程序提供了一条引人注目的、TypeScript 优先的路径。
关于作者
Daniel Curtis 是位于英国伯明翰的软件咨询公司 Griffiths Waite 的 UI 开发经理。他在前端工程方面领导工作,专注于利用 TypeScript 跨栈交付创新的企业解决方案。Daniel 对现代 Web 架构、开发者体验以及 AI 在支持软件交付和解决产品内真实客户问题中的应用充满热情。
(以上内容均由Ai生成)