研究AWS Machine Learning·原文 2026年9月17日

AWS开源 38 个HCLS领域技能,评测显示代理对比胜率 70–86%

技能以SKILL.md结构化提示形式发布,遵循Agent Skills开放标准,采用MIT-0许可,覆盖基因组学、药物发现、理赔运营、医学影像等 11 个医疗与生命科学领域。

AI解读:大模型代理在医疗与生命科学场景里经常“背得出指南、用不对条款”:以按ACMG/AMP标准分类TP53错义变异为例,模型会引用正确框架却错用证据类别、跳过人群频率阈值,甚至编造计算预测分数。这类静默失败出现在变异解读、理赔裁定、临床试验设计和影像分析中,输出看起来正确但判据错误。

AWS发布 38 个开源代理技能,覆盖 11 个HCLS领域,用SKILL.md结构化文档把领域决策流程编码成代理在推理时可读入的格式,遵循Agent Skills开放标准,YAML frontmatter声明触发条件、依赖和元数据,全部以MIT-0许可发布。它既不是RAG(检索片段)也不是微调,而是随查询触发模式激活的结构化提示。

真正受影响的是需要跑这些流程的人:药物重定位研究者、Medicare Advantage理赔分析师、神经影像研究人员。技能把“先做偏置场校正再做颅骨剥离”这类顺序依赖和V28层级解析规则写进流程,减少返工和审计风险;代价是全部 38 个技能一次性载入约 8 万token,需要多代理路由把每个专家控制在约 1.5 万token。

评测覆盖 410 个领域提示(380 个单技能、30 个跨技能),在Kiro CLI和Strands SDK + Claude Sonnet 4.6两种配置下对比有无技能,带技能的代理在正面比较中胜率 70–86%,批判性思维维度最高(78–85%,效应量d = 0.65–1.03)。这是代理输出层面的对比结果,不等于临床验证,来源也未给出真实业务流程的效果数据。

AWS机器学习博客作者Michael Hsieh发布了一组开源代理技能(agent skills),共 38 个,覆盖 11 个医疗与生命科学(HCLS)领域,用于解决基础模型代理在专业决策框架上“知道却不会用”的问题。

文章举例:让代理按ACMG/AMP标准分类TP53错义变异,它会引用正确框架,但错用证据类别、跳过人群频率阈值或编造计算预测分数。文章称这类错误在变异解读、理赔裁定、临床试验设计和影像分析中造成静默失败,输出看起来正确但判据错误,涉及监管和患者安全后果。

技能是结构化的markdown文档(SKILL.md),遵循Agent Skills开放标准,在YAML frontmatter中声明触发条件、依赖和元数据,正文包含决策框架、参数表、代码模式和验证标准。全部以MIT-0许可发布,仓库按推理技能和管道技能两类组织。

推理技能编码方法论与决策框架,例如genomic-variant-interpretation技能包含完整的ACMG/AMP分类框架,涵盖证据类别、人群频率阈值和计算预测器截断值。管道技能编码工具专属命令、经验证的参数和代码模板,例如variant-calling技能提供GATK4 HaplotypeCaller命令、正确的注释组、VQSR tranche灵敏度目标和Mutect2肿瘤-正常样本配置。

文章称技能与RAG不同,编码的是决策流程和错误条件本身,而不是从索引文档中检索有限段落;也不是微调,而是根据用户查询中的触发模式按上下文激活的结构化提示。文章列出三个特性:可审计(判据以markdown人类可读,不藏在权重里)、可移植(无需逐一适配即可用于 20 多个服务)、易维护(年度医疗政策或新实验标准改文本文件即可,不需重训模型)。

安装与支持的运行环境

文章要求Python 3.10+配uv,以及Git用于克隆仓库。支持的AWS服务包括:Kiro或Kiro CLI(交互式使用和多代理编排)、AWS Strands Agents SDK配Amazon Bedrock基础模型访问、AgentCore harness(需已有代理实现)、Quick Desktop(图形界面管理技能);也可使用其他编码代理,如Claude Code或OpenAI Codex。

  • 克隆仓库:git clone https://github.com/awslabs/hcls-agent-skills.git后进入目录
  • 仅安装技能、不配置代理:npx skills add awslabs/hcls-agent-skills
  • Kiro:运行 ./install.sh --target kiro,代理自动处理技能路由,用 /agent hcls切换;多代理模式运行 ./install.sh --target kiro --mode multiagent,用 /agent hcls-multiagent
  • Strands SDK:Python代码中from strands import Agent、from strands.skills import AgentSkills,构造Agent(model=model_id, skills=AgentSkills(skills="./skills/"))
  • AgentCore:按文档“Skills”一节向托管代理注入技能,提供托管、自动扩缩容、安全边界和可观测性
  • Quick Desktop:运行 ./install.sh --target quick-desktop,或按Amazon Quick文档中的“Skills”说明操作

三种部署模式与上下文开销

文章演示三种模式:Quick Desktop单代理、Kiro CLI多代理编排、Strands SDK在Amazon Bedrock AgentCore上的生产部署。

文中指出,把全部 38 个技能载入单个代理上下文约消耗 8 万token。大上下文模型可以承受,但带来上下文工程挑战:代理每次查询都要从 38 个技能中选对子集,不相关技能内容会争夺注意力。另一种做法是显式调用技能(如 /risk-adjustment),但要求提问前就知道该调哪个技能,而这正是技能想要弥合的专长缺口。

Kiro CLI的多代理架构用一个轻量协调代理(不加载技能)把查询路由到 8 个领域专家,每个专家只加载相关技能,约 1.5 万token。协调代理负责意图分类,专家负责领域推理。多代理配置写在JSON代理文件中。

在Quick Desktop中,代理会根据查询中的触发模式自动激活相关技能,且只激活相关技能。文章举例,问“把编码从E11.42改成E11.9对RAF有何影响”,会触发risk-adjustment技能,返回具体HCC映射、层级解析和量化的RAF差值,而不是笼统建议“复核文档”。

Strands SDK代码示例定义了带各自技能集的基因组学和影像专家代理,再用MultiAgentOrchestrator做协调,示例查询为“Classify NM_000546.6:c.743G>A in TP53 using ACMG criteria”。部署到AgentCore后,除了把技能嵌入Strands代理代码,还可以在环境层面配置技能,让该harness中运行的代理都能使用。

三个用例:技能改变了什么

用例一来自药物发现。一家生物技术公司研究特发性肺纤维化(IPF)的药物重定位,想评估通过受体激酶TGFBR1(ALK5)调节TGF-β1 信号的已获批药物。加技能前,代理给出泛泛的文献综述,罗列已知TGFBR1抑制剂,没有结构化排名标准、证据层级或可转化性评估框架。

加技能后,代理触发drug-repurposing和translational-research技能:按DGIdb查询框架优先考虑相互作用类型(抑制剂 > 调节剂 > 结合剂)和来源数据库(ChEMBL、DrugBank);用结构化证据层级排名,直接靶点结合高于通路级证据,后者高于表型关联,并以现有适应症相关性作为修正项;把TGFBR1抑制映射到IPF关键病理过程(成纤维细胞向肌成纤维细胞转化、上皮-间充质转化、细胞外基质沉积);用T0→T1标准评估临床可转化性,检查原适应症的安全性数据、治疗窗兼容性以及临床前纤维化模型与人类疾病的一致性。

用例二来自医疗理赔运营。一个有 1.2 万名成员的Medicare Advantage计划,需要用CMS-HCC模型V28系数从ICD-10诊断理赔数据计算风险调整因子(RAF)分数,要求应用ICD-10到HCC的对照表、正确解析疾病层级、并按人口学调整计算成员级风险分数。加技能前,代理产出的管道看似合理但不完整:常常完全漏掉层级解析、使用过时的V24系数,或在求和后应用层级(导致分数虚高)。

加技能后,代理触发risk-adjustment和claims-billing-rules技能:生成正确SQL,把诊断码连接到ICD-10到HCC对照表,并在测量年度内去重,确保每个成员每个HCC只计一次;正确实现V28层级解析,例如HCC 18(伴慢性并发症的糖尿病)取代HCC 19(不伴并发症的糖尿病),HCC 326(CKD 5期)取代HCC 327(CKD 4期),避免在多个特异度层级重复计数;在求和HCC系数前,把成员分为社区、机构或双重资格人群并按年龄/性别调整;并主动说明跳过层级解析会在多个特异度层级重复计数、系统性抬高RAF分数,在CMS RADV审查下造成审计责任。文章称技能有助于产出可经受审计的RAF分数。

用例三来自医学影像研究。一项 45 名健康成年人的神经影像研究需要标准的T1加权预处理管道做基于体素的形态学分析(VBM),原始DICOM已转成NIfTI,要求在FSL/ANTs混合环境中按正确顺序重定向、校正偏置场、剥离颅骨并配准到MNI152空间。加技能前,代理给出看似合理的管道,但可能把偏置校正放在颅骨剥离之后(使脑掩膜有偏)、使用不合适的阈值,或省略失败模式检测策略。

加技能后,代理触发radiology-preprocessing和imaging-study-design技能:明确正确的处理顺序并给出理由——先重定向到标准空间,再在颅骨剥离前做偏置场校正,然后用针对健康成年人调优的参数做脑提取,最后配准到MNI152模板;解释关键顺序依赖:若未先做偏置校正,脑边界处的强度不均匀会让颅骨剥离算法在颞叶和额叶等区域去除过多或过少组织;提供带每阶段错误检查和质量控制输出的完整bash脚本,用于目视检查中间结果;记录每步失败模式,包括方向元数据错误、表面线圈附近残余信号阴影、提取阈值过宽时纳入颈部组织,以及老年受试者脑室边界配准失败。

410 个提示的配对评测

文章称做了一次配对评测,覆盖 410 个领域提示(380 个单技能、30 个跨技能),使用两种harness配置。配置一是Kiro CLI,使用Auto模型让Kiro为任务选择最优模型,代理可使用思考工具和文件读取操作。配置二是用AWS Strands Agents SDK构建的代理,Agent(model=BedrockModel(...), callback_handler=None),模型显式固定为Claude Sonnet 4.6;技能条件额外加载AgentSkills(skills="./skills/") 插件。两种条件都对称提供think工具,配置见eval/execute.py。

两种配置都对比两种情况:无技能的基线代理,和通过渐进式加载获得全部 38 个技能的代理。评测用LLM评审在五个维度打分:科学准确性(事实、机制、引用、领域知识是否正确)、连贯性(逻辑结构、推理链清晰、内部一致)、相关性(是否以合适深度回答提示所有部分且不跑题)、批判性思维(能否挑战假设、识别局限、考虑替代方案,而非给出单一未经审视的回答)、可执行性。

结果显示,有技能的代理在与无技能代理的正面对比中胜率 70–86%,随代理harness配置不同而变化。效果最强的是批判性思维维度,胜率 78–85%,效应量d = 0.65–1.03。文章称这可衡量地改善了药物发现、医疗运营和医学影像工作流的表现。来源摘要在此处截断,五个评分维度的完整结果未在提供的文本中给出。

信息来源