📢 转载信息
原文作者:Michelle Tat, Christopher Penrose, Daniel Hansen, Rasmus Buchmann, Deepthi Paruchuri, Nishanth Mudkey, and Pijush Chatterjee
本文由 Care Access 的 Michelle Tat、Christopher Penrose、Rasmus Buchmann 和 Daniel Hansen 联合撰写。
医疗行业组织面临着一个关键挑战:如何在每天处理海量医疗记录的同时,保持严格的安全和合规标准。基于 LLM 的医疗记录分析是一个强大的解决方案,但它需要对医疗数据的很大一部分进行重新处理以回答不同的分析问题,这导致了高昂的运营成本和较慢的响应时间。
Care Access,一家全球健康服务和临床研究领导者,在扩展其健康筛查项目时,正面应对了这一挑战。他们每天需要处理 300-500 份以上的医疗记录,每次分析都需要多个独立的提示词,每个提示词都会重新处理医疗记录的大部分内容。随着每天有数百名新参与者选择共享他们的医疗记录,Care Access 需要一个既能有效扩展又严格遵守医疗合规和隐私标准的解决方案。
Amazon Bedrock 中的提示词缓存(prompt caching)功能带来了突破。通过缓存静态的医疗记录内容,而只改变分析问题,Care Access 实现了显著的成本削减和更快的处理速度。这一优化将医疗记录处理从潜在的瓶颈转变为项目增长的推动力。
在本文中,我们将演示医疗组织如何安全地实施提示词缓存技术,以简化医疗记录处理,同时满足合规性要求。
背景
Care Access 致力于让所有人的健康未来更美好。Care Access 在全球拥有数百个临床研究地点、移动诊所和临床医生,将世界一流的健康研究和医疗服务直接带给那些常常面临医疗服务障碍的社区。
其使命的核心是一个健康筛查项目,为参与者提供先进血液检测结果,并协助他们对接相关的健康资源,包括突破性的临床试验。Care Access 目前每月向全球近 15,000 名新参与者提供健康筛查,并预计在未来几个月和几年内迅速增长。
参与者通常选择共享他们的医疗记录,使 Care Access 能够提供更个性化的医疗监督,并识别与其健康状况相符的潜在健康资源,包括临床研究机会。这种创新方法深受参与者的欢迎,每天都有数百人要求与 Care Access 共享其医疗记录。
然而,快速的增长和成功可能会给运营规模以快速满足日益增长的需求的组织带来后勤挑战。对于 Care Access 而言,在保持严格的合规、隐私和安全标准的同时,处理大量多样化的医疗数据格式需要创新的解决方案。该公司使用 Amazon Bedrock 实施了一个大型语言模型(LLM)解决方案来分析这些记录。虽然电子病历可能遵循某些规范化的数据标准,但每份记录的内容可能因不同医疗服务提供商记录信息的方式而大不相同。虽然存在传统的基于规则的系统和基于 OCR 的提取方法,但 LLM 在此挑战中特别有效,因为它们可以理解上下文并解释不同医疗服务提供商记录医疗信息的方式的差异,而无需为每种数据源格式进行大量的规则定制。
最初的实施要求对每次分析使用多个单独的提示词,每个提示词都需要重新处理医疗记录的大部分内容。随着项目的扩展,由于重复处理大量输入 Token,这种方法导致了显著的每日运营成本。
提示词缓存概述
在深入探讨 Care Access 的实施细节之前,了解 Amazon Bedrock 的提示词缓存功能及其为何对医疗记录处理特别有效非常重要。
提示词缓存允许重用提示词中那些在每次推理时本应重新计算的部分。在使用提示词缓存功能时,Amazon Bedrock 会存储或缓存初始提示词(称为前缀),并为其分配一个唯一的 promptId。随着后续记录的处理,提示词前缀通过 promptId 从缓存中检索出来,并用于每次后续记录的推理。
何时使用提示词缓存与其他优化技术
提示词缓存是可用于大幅度提高性能的多种优化技术之一。标记组件提示词缓存(Labeled component prompt caching)可用于缓存请求之间静态的提示词部分,同时仍允许提示词的其他部分发生变化。对于 Care Access 而言,标记组件提示词缓存恰好满足了他们的使用场景。其他优化技术,例如问题捆绑(question bundling),也可以与此结合使用以进一步改善结果。
显示缓存与非缓存组件的示例提示词结构
参与者的医疗记录在请求之间保持静态,而关于记录的确切医疗问题会有所不同。这种方法使得缓存绝大部分 Token 成为可能,同时允许提示词的最后一部分具有可变性。例如:
{ "content": [ { "cache-control": { "type": "ephemeral" }, "text": [ ], "type": "text" }, { "text": "The question is: ", "type": "text" } ] }
在这里,对参与者医疗记录的缓存使得可以在不重新处理大部分 Token 的情况下,快速迭代大量医疗问题。
解决方案架构
Care Access 选择使用 Amazon Bedrock,是基于他们与 AWS 的长期合作关系,AWS 一直支持 Care Access 从初创公司发展成为跨国企业。患者隐私和安全合规对 Care Access 来说仍然是最高优先级,因此,只使用和实施能够确保患者数据安全的解决方案至关重要。AWS 解决方案通过其与 Care Access 的合作历史,持续证明其严格遵守 Care Access 的高安全标准和隐私措施,确保医疗记录数据的安全。Amazon Bedrock 中的提示词缓存功能为 Care Access 提供了一个解决方案,以优化通过 LLM 处理数千份医疗记录时相关的速度和成本。
Care Access 推理管道的总体架构遵循以下编号阶段:

阶段 1:医疗记录检索
从 Amazon S3 存储桶中检索单个电子健康记录(EHR),进行规范化处理,并移除不必要的数据以供推理。
阶段 2:提示词缓存管理
医疗记录内容成为静态缓存的前缀,而特定的分析问题则构成随每次查询变化的动态部分。
阶段 3:LLM 推理
每个缓存的健康记录都会使用 Amazon Bedrock 接收多个分析问题。当前缀与现有缓存匹配且超过最低 1,000 Token 要求时,缓存检查点将被激活。
阶段 4:输出处理
结果被组合成每个参与者的单个 JSON 文件,并存储在 Amazon S3 中,以便通过 Amazon Athena 进行下游分析。然后将参与者匹配到相关的临床试验。
实施细节
Care Access 的实施基于其自定义数据架构,该架构结合了其输入数据源,每个数据源都有自己的标准。记录由多个部分组成,例如既往健康史、药物和既往就诊记录。
数据架构和格式:
以下是一个参与者记录结构的极度简化的示例:
{ participant_id: "6951cd6c-d166-47e4-9810-e19c5c5a140d", participant_name: "Jane Doe", participant_city: "Metropolis", participant_state: "IL", participant_address: "123 Lois Ln", participant_zipcode: "55555-5555", content: { clinicals: { careResources: { organizations: { { resourceType: "Organization", name: "Metropolis General Hospital"} }, practitioners: { { resourceType: "Practitioner", name: "Clark Kent"} } }, resourceGroups: { medications: [ { title: "Simvastatin 80 MG [Zocor]", subTitle: "active", IsActive: "Yes - status is 'active'" }, { title: "Bupropion Hydrochloride 300 MG Extended Release Oral Tablet [Wellbutrin]", subTitle: "active", IsActive: "Yes - status is 'active'" } ], encounters: [ { title: "Office Visit", date: "2022-01-07T00:00:00.000", subTitle: ""}, { title: "Emergency Department Visit", subTitle: "finished", date: "2022-06-24T19:03:45.352"} ], conditions: [ { title: "Type 2 Diabetes Mellitus", subTitle: "resolved", date: "2022-10-10T19:03:45.341"}, { title: "Depression", subTitle: "resolved", date: "2007-08-10T19:03:45.351"} ], diagnosticReports: [ { title: "LabCorp - Hemoglobin A1c", subTitle: "preliminary", date: "2021-07-10T19:03:45.342" } ], familyMemberHistory: [ { title: "Maternal grandmother - Diabetes", subTitle: "completed" } ], socialHistory: [ { title: "Current smoker", subTitle: "final", date: "2022-01-10T19:03:45.344" } ] } } } }
数据安全与隐私
安全与隐私要求:
Care Access 在处理医疗记录时面临严格的要求:
- 所有 PHI(受保护的健康信息)处理必须符合高隐私和安全标准(HIPAA 或类似标准)。
- 坚持最少必要信息原则。
- 所有数据访问都需要审计跟踪。
- 安全的数据传输和存储。
如何满足这些要求:
通过推理管道处理的每份 EHR 都包含个人健康信息(PHI)和个人身份信息(PII)。Care Access 通过以下方式满足这些要求:
- AWS Lake Formation:管理所有服务(Amazon S3、Amazon Bedrock、Amazon Athena)的特权 IAM 权限。
- 数据最小化:遵循基于 HIPAA 合规性的指南,仅使用最少必要的 PHI(医疗状况),丢弃不必要的 PHI。
- PII 移除:移除所有 PII(姓名、地址、电话号码),仅保留用于记录索引的唯一标识符。
- 审计日志记录:通过 Amazon CloudWatch 获取所有数据和服务访问的完整审计跟踪。
效益与影响
在 Amazon Bedrock 中实施提示词缓存带来了变革性的成果:
成本优化:
- Amazon Bedrock 成本降低 86%(下降 7 倍)。
性能提升:
- 每条记录的处理时间减少 66%(速度提高 3 倍)。
- 每天节省 4-8 小时以上的处理时间。
运营效益:
- 通过上下文重用减少了 Token 消耗。
- 提高了顺序查询的响应时间。
- 在所有医疗记录处理操作中保持了上下文完整性。
- 尽管时间表很紧张,仍满足了所有实施期限。
Care Access 的应用机器学习与分析主管 Josh Brandoff 表示:“在推出第一代 LLM 驱动的解决方案时,AWS 是一个了不起的合作伙伴。Amazon Bedrock 迅速与我们现有的数据湖架构集成,使我们能够在六周内(而不是几个月)推出医疗史审查解决方案,并为我们的健康筛查参与者识别和匹配更多的健康资源机会,包括临床试验。当记录摄入量比预期激增时,Bedrock 的提示词缓存功能使我们能够通过最少的技术更改来管理成本。”
最佳实践与技术考量
实施建议:
Care Access 团队发现提示词缓存功能对其使用场景具有很高的灵活性。关键经验教训包括:
- Token 阈值策略:大多数 EHR 包含数千到数万个 Token。通过使用 1,000 Token 的最低阈值,其管道在记录足够大时自动启用缓存。
- 默认缓存方法:当预期的提示词大小不同时,尤其是在偏向较大 Token 计数时,应默认启用缓存。
- 缓存优化:合理组织提示词,使医疗记录内容(静态、大)成为缓存前缀,而分析问题(动态、小)则保持在非缓存状态。
结论
Care Access 成功地将其医疗记录处理挑战转变为一项可扩展的能力和组织优势。通过战略性地实施 Amazon Bedrock 的提示词缓存功能,Care Access 的数据处理在保持严格合规和隐私标准的同时,实现了显著的成本削减和更快的处理速度。
这一成功展示了选择正确的技术战略如何能够解决眼前的业务挑战,同时支持长期的使命目标。对于 Care Access 而言,这项技术优化使其健康筛查项目得以持续增长,将更多社区与可能改变人生的健康资源和临床研究机会联系起来。
有关在 Amazon Bedrock 上使用提示词缓存的更多信息,请参阅提示词缓存以实现更快的模型推理。
关于 Care Access
Care Access 致力于让所有人的健康未来更美好。我们在全球拥有数百个研究地点、移动诊所和临床医生,将世界一流的研究和健康服务直接带给那些常常面临医疗服务障碍的社区。我们致力于确保每个人都有机会了解自己的健康状况、获得所需的护理,并为明天的医疗突破做出贡献。
我们通过“未来医疗”(Future of Medicine)等项目,使全球社区能够获得先进的健康筛查和研究机会,以及“变革者”(Difference Makers)项目,支持当地领导者拓展其社区健康和福祉工作,将人置于医疗进步的核心。通过合作、技术和毅力,我们正在重塑临床研究和健康服务触达世界的方式。我们共同致力于建设一个更美好、更易获得的健康未来。
要了解有关 Care Access 的更多信息,请访问www.CareAccess.com。
关于作者
Deepthi Paruchuri 是 AWS 的高级解决方案架构师。Deepthi 专注于生成式 AI 和分析领域,与客户紧密合作,通过设计安全、可扩展且经济高效的 AWS 云解决方案来制定云采用战略并解决其业务需求。
Nishanth Mudkey 是亚马逊云计算公司(AWS)的数据、人工智能/机器学习专家解决方案架构师。他专注于帮助客户设计和实施利用 AWS AI/ML 服务(包括 Amazon Bedrock 和 Amazon SageMaker)的创新解决方案。Nishanth 在大数据、深度学习和生成式 AI 方面拥有专业知识,为云架构带来了技术深度和实践经验。
Pijush Chatterjee 是位于纽约的 AWS 生成式 AI/ML 专家。他在数据、分析和 ML 领域拥有 25 年以上的经验。他专注于利用生成式 AI 和云进行业务转型。
Michelle Tat 是 Care Access 的高级数据科学家,专注于利用机器学习帮助优化临床试验实施成果。
Christopher Penrose 是 Care Access 的首席数据工程师,专注于构建可持续的 ModelOps 和 LLMOps 系统。
Rasmus Buchmann 是 Care Access 的高级首席数据工程师,专注于开发和架构可扩展的企业级机器学习应用。
Daniel Hansen 是 Care Access 的高级数据工程师,专注于机器学习和生成式 AI 解决方案工程和架构。
🚀 想要体验更好更全面的AI调用?
欢迎使用青云聚合API,约为官网价格的十分之一,支持300+全球最新模型,以及全球各种生图生视频模型,无需翻墙高速稳定,文档丰富,小白也可以简单操作。
评论区