SuperAPI AI 工具集

fhir-basics

编程与开发

查看项目

更新于 10-16 02:34

技能介绍

用途:教智能体理解 FHIR R4(美国医疗互操作标准)API 的工作方式、可用资源与查询方法,并正确解析各种响应格式。默认端点为 https://r4.smarthealthit.org(SMART on FHIR 公共测试服务器,合成数据,无需鉴权);生产医院端点需 SMART on FHIR OAuth2 流程,使用 Authorization: Bearer {token}。

主要能力:覆盖 Patient、Condition、Observation、MedicationRequest、Encounter、DiagnosticReport 等资源的 REST GET 查询与搜索参数(name、birthdate、gender、patient、code、category、status、date、_sort、_count),并给出常见 LOINC 代码(如 4548-4 HbA1c、2345-7 血糖、2160-0 肌酐、85354-9 血压面板等)。

使用方式:沙箱内用 python(非 python3)运行脚本,HTTP 调用改用 subprocess.run(["curl", "-sf", url], capture_output=True, text=True)(requests 无法穿过代理),再用 json.loads 解析。测试服务器须用裸代码(如 code=44054006),不支持带 system URI 的限定写法,否则返回空。查询返回 Bundle,遍历前先检查 bundle.get('entry', []),并处理分页 link 中的 next。性能上避免逐患者循环调用:优先按 code 单次批量取回后在 Python 侧过滤;也可用逗号分隔的 patient 参数,或 POST batch Bundle 一次完成多类查询。

限制:公共测试服务器不支持 Bulk FHIR;上游资料给出了生产环境 FHIR Bulk Data Access($export、NDJSON)的背景说明,但未提供实现细节。需处理 OperationOutcome 错误、可能缺失字段与超时(curl --max-time);缺失数据应标注“Not recorded”,不得编造。测试服务器无速率限制,生产端点可能有限制。