[FEATURE] Extend shared native LLM content and usage contracts to Bedrock

这不是用户侧运行报错,而是 CrewAI 仓库中为 Bedrock 提供商补充共享 LLM 内容与用量契约测试的功能请求。若你在做同类测试改造时遇到契约不匹配,优先排查 Bedrock Converse 的内容块是否被字符串化、以及测试是否依赖 AWS 凭证。

快速结论:这不是用户侧运行报错,而是 CrewAI 仓库中为 Bedrock 提供商补充共享 LLM 内容与用量契约测试的功能请求。若你在做同类测试改造时遇到契约不匹配,优先排查 Bedrock Converse 的内容块是否被字符串化、以及测试是否依赖 AWS 凭证。

适用环境:Issue 仅确认为 crewAI 的 Python 库(lib/crewai)与 Bedrock 提供商实现,测试应使用伪造的 Converse 响应,不需要真实 AWS 凭证;未确认具体 Python、CUDA、显卡或 boto3 版本。

最快修复方案:暂无确认的一步修复方案。Issue 处于待分配状态,尚未合并对应 PR。

注意事项:该 Issue 由维护者协调分配给 Stanford 学期合作 cohort,评论表达兴趣不等于获得所有权;相关共享测试套件(#8037/#8039/#8062)和 Bedrock 格式化工作(#7930)仍在并行推进,需避免重复实现。

问题场景

在 CrewAI 中为 Bedrock 提供商扩展共享的原生 LLM 内容与用量契约测试时触发。目标是给共享 provider 契约套件加入一个 Bedrock Converse fixture,在保留其 content-block 表示的前提下,测试通用文本、多模态和 token 用量行为;覆盖字符串、parts-list 和 None 内容三种情况,并在同步/异步路径上验证 token 用量与返回文本,且不依赖 AWS 凭证。

报错原文

[FEATURE] Extend shared native LLM content and usage contracts to Bedrock

原因分析

可能原因:Bedrock Converse 的内容块表示(content-block)与共享契约预期的通用内容约定不一致。若测试中把 content 列表直接字符串化,会导致多模态块与模型可见文本的断言失真;若未拆分 provider 专属语义与真正通用的期望,也会让共享套件无法复用。此外,同步与异步路径的用量统计可能出现行为差异。

环境排查

  • 确认 crewAI 库版本,以及该版本是否已包含 #8037/#8039/#8062 的共享契约套件。
  • 确认 Bedrock 提供商实现位置:lib/crewai/src/crewai/llms/providers/bedrock/completion.py。
  • 确认现有 Bedrock 测试目录 lib/crewai/tests/llms/bedrock 与共享测试目录 lib/crewai/tests/llms 的状态。
  • 确认测试是否使用伪造的 boto3 Session/client 与 Converse 响应,而不是真实 AWS 调用。
  • 确认是否有与本 Issue 竞争的改动,尤其是 #7930 的 Bedrock formatter 工作。

解决步骤

  1. 在维护者 @lorenzejay 明确确认分配前不要实施;该 Issue 保留给 Stanford cohort 协调分配。
  2. 若获得分配,在 lib/crewai/tests/llms/bedrock 下新增 hermetic Bedrock Converse fixture,用伪造的 boto3 Session/client 构造字符串、parts-list 和 None 内容响应。
  3. 断言模型可见文本与多模态块时不把 content 列表字符串化。
  4. 在同步与异步路径上分别验证 token 用量和返回文本,全程不调用付费 API、不需要 AWS 凭证。
  5. 把 Bedrock 专属语义保留在 fixture 内,只在共享套件中放真正通用的期望。
  6. 与 #8037/#8039/#8062 及 #7930 协调,避免重复的运行时实现,并纳入已跟踪的多模态/finish-reason 修复。

验证方法

运行新增的 Bedrock Converse fixture 测试,确认字符串、parts-list、None 三类内容均通过,多模态块未被字符串化,token 用量与返回文本在同步/异步路径下一致,且整个测试过程在无 AWS 凭证环境中完成。

参考来源

crewAIInc/crewAI #8128

GamsGo AI

AI 工具推荐

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

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

了解 GamsGo AI

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

这个方案解决了吗?

celebrityanime
celebrityanime
文章: 34298

发表回复

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