LegacyScoreV1 holds a non-deprecated endpoint, unlike the other Legacy*V1 tags

这个报错通常出现在使用 Langfuse OpenAPI 规范生成的客户端 SDK 中,表现为删除分数(score)的唯一接口被归入 LegacyScoreV1 标签,导致开发者按“不基于 Legacy 命名构建”的原则误判分数无法删除。优先排查你使用的 Langfuse 版本是否为 v4.59.0

快速结论:这个报错通常出现在使用 Langfuse OpenAPI 规范生成的客户端 SDK 中,表现为删除分数(score)的唯一接口被归入 LegacyScoreV1 标签,导致开发者按“不基于 Legacy 命名构建”的原则误判分数无法删除。优先排查你使用的 Langfuse 版本是否为 v4.59.0 之前。

适用环境:Langfuse 服务端 API 及由其 OpenAPI 规范生成的客户端;Issue 中提及的消费方为 quarkus-langfuse 扩展。其余 Python、CUDA、显卡等环境未在 Issue 中确认。

最快修复方案:升级到 Langfuse v4.59.0 或更高版本。该版本已移除 LegacyScoreV1 标签,删除接口改为与其他分数操作一起位于 scores.yml 中的 DELETE /api/public/scores/{scoreId}。

注意事项:升级后需要重新生成客户端 SDK,旧的生成产物仍会保留 LegacyScoreV1Api 类名。如果你无法升级,可优先尝试在生成客户端后手动核对该删除方法是否存在;Issue 未提供针对旧版本的官方兼容处理方案。

问题场景

用户在使用 Langfuse 的 OpenAPI 规范生成客户端 SDK,或在 quarkus-langfuse 这类封装扩展中调用分数删除功能时触发该问题。规范中 Legacy*V1 标签本应统一标记被取代的旧端点,但 LegacyScoreV1 下唯一用于删除分数的 DELETE /api/public/scores/{scoreId} 并未携带 deprecated: true,也没有移除提示。由于标签名会转换为生成客户端中的类名,删除分数的方法会以 LegacyScoreV1Api.legacyScoreV1Delete(...) 形式出现,让遵循“不要基于 Legacy 命名构建”的开发者误以为分数不可删除。

报错原文

LegacyScoreV1 holds a non-deprecated endpoint, unlike the other Legacy*V1 tags

原因分析

可能原因是迁移状态而非疏忽。规范中 /api/public/v3/scores 是整个文档里唯一的 v3 路径,说明分数域可能最先迁移到 v3,而 v3 当时只有列表能力,没有 create 和 delete,删除端点尚未迁移过去。由于标签名直接驱动生成客户端的类名,删除端点被继续归在 LegacyScoreV1 下,且未标记 deprecated,形成了误导信号。

环境排查

  • 确认正在使用的 Langfuse 版本号,是否为 v4.59.0 之前。
  • 确认生成客户端所用 OpenAPI 规范的来源与版本。
  • 确认生成后的 SDK 中是否存在 LegacyScoreV1Api 类及对应的 legacyScoreV1Delete 方法。
  • 确认扩展或封装(如 quarkus-langfuse)是否依赖该标签名做客户端构建。

解决步骤

  1. 将 Langfuse 升级到 v4.59.0 或更高版本。
  2. 升级后重新拉取或重新生成对应的 OpenAPI 客户端 SDK。
  3. 在生成产物中确认 LegacyScoreV1 标签已消失,分数删除操作已归入其他分数操作所在文件 scores.yml,对应路径为 DELETE /api/public/scores/{scoreId}。

验证方法

检查新生成的客户端中不再存在 LegacyScoreV1Api 类,且删除分数的方法不再以 legacy* 前缀出现;同时确认 DELETE /api/public/scores/{scoreId} 能在不含 Legacy 标签的类中被正常调用。

参考来源

langfuse/langfuse #17661

GamsGo AI

AI 工具推荐

想把多个 AI 模型放在一个入口?

GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。

了解 GamsGo AI

推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。

这个方案解决了吗?

celebrityanime
celebrityanime
文章: 29139

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注