news 2026/9/3 10:24:24

如何为 SIA 选对 agent impl:claude、openhands、pydantic-ai 选择决策树指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
如何为 SIA 选对 agent impl:claude、openhands、pydantic-ai 选择决策树指南

如何为 SIA 选对 agent impl:claude、openhands、pydantic-ai 选择决策树指南

【免费下载链接】siaSIA is a Self Improving AI framework to autonomously improve the performance of any AI system (Model / Agent) on a benchmark task.项目地址: https://gitcode.com/GitHub_Trending/sia4/sia

SIA(Self Improving AI)是一个让 AI 系统自主迭代的自改进框架。很多新手在跑sia run时卡在第一道选择题:meta agent 的agent impl到底该选claudeopenhands还是pydantic-ai?本文用一张决策树 + 快速对照表,帮你在 3 分钟内选对实现,避开“provider 不匹配被拒”“缺 SDK 报 ImportError”这两个最常见的坑。

先搞懂:agent impl 决定的是谁?

很多教程没讲清楚这一点,导致选型混乱:

  • Target Agent(目标 agent)是 SIA生成出来的代码,SIA 从不把它当"引擎"来跑,它的模型/供应商由--target-agent-profile决定,与 agent impl 无关
  • Meta / Feedback Agent才是运行在 SIA 内部、负责"生成初始 agent + 复盘改进"的执行者,它才需要选 agent impl。

也就是说:你在为"改进者"选执行引擎,而不是为"被改进的对象"。上图右侧每代数的提升,正是由 meta/feedback agent 驱动的。agent impl 的注册与调度逻辑在 sia/agent_impls/base.py——三个实现各用一次register(...)注册自己,orchestrator 按名字分发。

三种 agent impl 逐个拆解

1.claude:Anthropic 专属,最省心

基于 Claude Agent SDK(sia/agent_impls/claude.py):

  • 只支持 Anthropic 供应商,且只认haiku/sonnet/opus三个快捷名,配非 Anthropic provider 会在加载 profile 时直接报错
  • 自带 Bash、Read、Write、Edit、Glob 工具,bypassPermissions模式直接干活
  • 轨迹自动存在~/.claude/projects/
  • 默认 meta profile(default-meta.json)就是它 + Haiku,所以pip install 'sia-agent[claude]'后零配置就能跑

一句话:你的 meta 模型是 Claude,闭眼选它。

2.openhands:多供应商通吃,灵活性最强

基于 OpenHands SDK(sia/agent_impls/openhands.py):

  • 多供应商路由:Gemini、OpenAI、Anthropic、Together、Nebius、OpenRouter 等都行,模型名用provider/model全限定格式(如moonshotai/Kimi-K2.6
  • 对接 OpenAI 兼容端点时会自动加 litellm 路由前缀;provider 里配置litellm_prefix(如openrouter)还能保住prompt caching不被网关悄悄关掉——跑长循环时这直接影响 token 成本
  • 轨迹落在工作目录的openhands_trajectory/,方便复盘

内置的kimi-nebius-metaopenrouter-meta两个 profile 用的都是它。一句话:跑非 Claude 模型、或走 OpenRouter 一把梭,选它。

3.pydantic-ai:Python 原生 SDK,轻量可控

基于 PydanticAI(sia/agent_impls/pydantic_ai.py):

  • 模型用 PydanticAI 原生规格(openai:gpt-4oanthropic:claude-sonnet-4-5-20250929google-gla:gemini-3.1-pro-preview
  • 工具是纯 Python 函数:write_fileread_filebash,迭代次数用UsageLimits精确封顶,路径解析严格限定在工作目录内,行为最"可控"
  • 对供应商返回非 JSON 的 200 响应有专门的诊断报错,排障信息最友好

一句话:你已经在 PydanticAI 生态里、或想要最轻量的工具循环,选它。

快速对照表

维度claudeopenhandspydantic-ai
底层 SDKClaude Agent SDKOpenHands SDK (litellm)PydanticAI
供应商范围仅 Anthropic多供应商 / OpenAI 兼容端点多供应商(原生规格)
模型写法haiku/sonnet/opusprovider/model全限定openai:gpt-4o等原生格式
安装命令pip install 'sia-agent[claude]'pip install 'sia-agent[openhands]'pip install 'sia-agent[pydantic-ai]'
轨迹位置~/.claude/projects/工作目录/openhands_trajectory/日志输出
适合谁只用 Claude 的人多模型/网关用户(默认推荐)PydanticAI 生态 / 测试场景

选择决策树:3 个问题定答案

你的 meta agent 模型是 Anthropic(Claude)的吗? ├─ 是 ──► 选 claude │ · 装 [claude] extra,配 ANTHROPIC_API_KEY │ · 直接用内置 default-meta profile,零配置 │ └─ 否(Gemini / OpenAI / Kimi / Qwen / OpenRouter...) ├─ 需要 litellm 路由 / prompt caching / 自定义 base_url? │ └─ 是 ──► 选 openhands │ · 装 [openhands] extra,模型名写 provider/model │ · 参考内置 openrouter-meta / kimi-nebius-meta │ └─ 偏好 Python 原生 SDK、轻量工具循环? └─ 是 ──► 选 pydantic-ai · 装 [pydantic-ai] extra,模型用原生规格

两条容易踩的铁律:

  1. claudeimpl 只配 Anthropic provider,写错会在加载 profile 时直接拒绝(见 docs/configuration.md 末尾 Notes)。
  2. 换 impl 要装对应 extra,否则启动时抛ImportError并告诉你该pip install什么。

最快上手:一步切换 agent impl

agent impl 写在meta profile里,命令行只用--meta-agent-profile引用,不需要改任何代码:

# 默认:claude impl + Claude Haiku(装 [claude] extra 即可) export ANTHROPIC_API_KEY="..." sia run --task gpqa --max_gen 5 --run_id 1 # 换 openhands impl + OpenRouter 一把梭(一个 key 管 400+ 模型) pip install 'sia-agent[openhands]' export OPENROUTER_API_KEY="..." sia run --task gpqa --meta-agent-profile openrouter-meta \ --target-agent-profile openrouter-target --max_gen 5 --run_id 3

想自定义?在./profiles/放一个 JSON 即可(无需改代码),格式参考内置的 kimi-nebius-meta.json:

{ "profile_id": "gemini-meta", "name": "Gemini meta agent", "agent_impl": "openhands", "model": "gemini/gemini-3.1-pro-preview", "provider_id": "gemini" }

然后sia run --meta-agent-profile gemini-meta就生效了。内置 profile 全集与 provider 字段说明见 docs/configuration.md,目录里还有 anthropic.json、openrouter.json 等现成 provider 配置可抄。

选错了会报什么错?

症状原因解法
加载 profile 时被拒claudeimpl 配了非 Anthropic provider改用openhandspydantic-aiprofile
ImportError: OpenHands SDK not installed没装对应 extrapip install 'sia-agent[openhands]'
Unknown agent impl: xxxprofile 里拼错了 impl 名只能用claude/openhands/pydantic-ai三个注册名
OpenRouter 上 prompt caching 失效未设litellm_prefixprovider 里加"litellm_prefix": "openrouter"

总结

  • 只用 Claudeclaude(默认,最省心)
  • 多供应商 / 网关 / 自定义端点openhands(灵活性最强,内置 profile 最多的选择)
  • Python 原生生态 / 精细控制工具循环pydantic-ai

选错的成本很低:改一行 profile JSON、重装一个 pip extra 就能切换,三个实现共享同一套 CLI 与运行产物结构,可以随时对比不同组合在同一任务上的表现。更多细节查阅 docs/configuration.md 与 docs/troubleshooting.md。

【免费下载链接】siaSIA is a Self Improving AI framework to autonomously improve the performance of any AI system (Model / Agent) on a benchmark task.项目地址: https://gitcode.com/GitHub_Trending/sia4/sia

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/3 10:20:55

BRF-GS:当高光谱BRF建模遇上三维高斯泼溅

高光谱成像与 3D Gaussian Splatting(3DGS)在多数人眼中属于两条不同的技术路线:前者处理几十上百个波段的遥感数据,后者负责 RGB 新视角合成。可当“Hyperspectral”“Bidirectional Reflectance Factor”和“3D Gaussian Splatt…

作者头像 李华
网站建设 2026/9/3 10:19:03

Mole新手入门:mo clean深度清理缓存、日志与应用残留完全指南

Mole新手入门:mo clean深度清理缓存、日志与应用残留完全指南 【免费下载链接】Mole 🐹 Clean, uninstall, analyze, optimize, and monitor your Mac. Free open-source CLI, plus a native Mac app. 项目地址: https://gitcode.com/GitHub_Trending/…

作者头像 李华
网站建设 2026/9/3 10:13:52

【单片机课程设计/毕业设计】基于 STM32 的药盒状态感知与服药提醒系统实现 基于 STM32 的多药品余量实时监测智能装置设计(012906)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于嵌入式单片机,Java、小程序技术领域和毕业项目实战 ✌️…

作者头像 李华
网站建设 2026/9/3 10:12:07

从零构建数据库内核:学生团队实战解析存储引擎与并发控制

简介:本资源是2024年全国大学生计算机系统能力大赛数据库管理系统赛道一等奖获奖作品“RMDB-2024”,面向高校计算机专业本科生、数据库系统课程学习者及系统级开发初学者,聚焦关系型数据库核心机制的工程化实现,涵盖存储管理、查询…

作者头像 李华
网站建设 2026/9/3 10:11:50

流体瞬态分析中Zielke非定常摩阻模型的MOC求解器实现

简介:本资源是一套基于特征线法(MOC)求解含动态摩阻的一维非稳态管道流动问题的完整工程实现,面向流体力学、水力瞬变分析及管道系统仿真方向的研究生、工程师与科研人员。聚焦压力波传播、流量响应与摩阻耦合建模,特别…

作者头像 李华
网站建设 2026/9/3 10:08:21

IDM-MOBIL智能驾驶模型:微观交通流仿真核心算法解析

简介:本资源是一套面向智能交通系统研究者与车辆控制算法开发者的Matlab仿真代码,聚焦高速公路场景下的跟车与变道协同决策问题,基于IDM(智能驾驶模型)实现纵向跟车行为建模,结合MOBIL(最优加速…

作者头像 李华