尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

OpenMed数据仓库远程函数指南:在Snowflake与BigQuery里跑脱敏

OpenMed数据仓库远程函数指南:在Snowflake与BigQuery里跑脱敏 OpenMed数据仓库远程函数指南在Snowflake与BigQuery里跑脱敏【免费下载链接】openmedLocal-first healthcare AI: clinical NER HIPAA PII de-identification that runs 100% on-device. 2,200 medical models, 21 languages, Apple MLX Python, no cloud, no patient data leaving your network. Apache-2.0项目地址: https://gitcode.com/GitHub_Trending/ope/openmedOpenMed是一个本地优先local-first的医疗 AI 脱敏工具临床命名实体识别NER HIPAA PII 去标识化100% 在本地运行支持 2,200 医疗模型与 21 种语言。它的数据仓库远程函数Warehouse Remote Function能力让你直接在 Snowflake 和 BigQuery 里对病历文本批量脱敏——数据不出仓库医生和分析师照常写 SQL。为什么需要数据仓库远程函数传统做法是把病历文本从仓库导出到外部系统做脱敏再导回来。这既慢又有患者数据离开网络边界的合规风险。OpenMed 的思路反过来把脱敏函数搬进仓库旁边用 SQL 调用SELECT openmed_deidentify(note, hipaa_safe_harbor) FROM synthetic_notes;一行 SQL整列病历自动完成 HIPAA Safe Harbor 脱敏。项目为此提供两条落地路径平台集成方式核心模块BigQueryHTTP Remote Function批处理协议remote_function.pySnowflakeSnowpark Python UDF / SQL 函数snowflake_udf.py其他 SQL 引擎通用分布式 SQL UDF 描述符distributed_sql_udf.mdBigQueryHTTP 远程函数接入步骤OpenMed 内置了一个 FastAPI 应用实现了 BigQuery 官方的HTTP 远程函数协议。工作流程分四步启动服务安装可选依赖后启动批处理服务uv pip install -e .[hf,service] uvicorn openmed.integrations.remote_function:app --host 127.0.0.1 --port 8080打包部署用示例里的 Dockerfile 构建镜像部署到 Cloud Run务必关闭未认证访问端点绝不能公开。注册 SQL 函数运行 create_function.sql把项目 ID、连接、端点占位符替换掉即可max_batching_rows控制单个 HTTP 请求的批量行数。像本地函数一样查询BigQuery 会成批发来一行行callsOpenMed 按脱敏策略分组做向量化批量推理再按原始行序返回replies。关键实现都在 remote_function.py 的redact_remote_function_batch中相同策略的行合并成一次process_batch调用NULL 和空字符串直接透传、不加载模型。Snowflake注册 Python UDFSnowflake 侧更简单——OpenMed 提供一个纯净 Python 处理器 deidentify_udf无 Snowpark 依赖类型方便序列化与单测两种注册方式任选Snowpark 注册register_udf(session)一键创建OPENMED_DEIDENTIFY(text)函数默认通过 Snowpark 的packages参数引入openmed包详见 snowflake-udf.md。生成纯 SQLgenerate_create_function_sql(nameOPENMED_DEIDENTIFY)直接产出带RUNTIME_VERSION、PACKAGES、HANDLER的CREATE FUNCTION语句适合不想用 Snowpark 的运维场景。注册完成后任何一张表都能直接脱敏SELECT OPENMED_DEIDENTIFY(note) AS redacted_note FROM clinical_notes;脱敏策略SQL 参数就能切换每个调用行都可以携带可选的策略参数如hipaa_safe_harbor。BigQuery 侧还支持请求级策略X-OpenMed-Policy请求头、?policy查询参数或userDefinedContext.policy三处必须一致行级策略不能削弱网关强制的策略冲突时请求会直接失败fail closed。-- 第 2 个参数选择脱敏策略 SELECT PROJECT_ID.DATASET_ID.openmed_deidentify(note, hipaa_safe_harbor) FROM PROJECT_ID.DATASET_ID.synthetic_notes;隐私底线与部署注意事项OpenMed 的适配器在日志层面做了严格约束这是部署前值得了解的细节零原文日志不记录请求体、策略值、输出文本、异常信息错误响应只含协议字段和行偏移量避免异常消息泄露源文本。离线推理模型预先打进加密镜像层后设置OPENMED_OFFLINE1请求期间不会再发起任何模型下载。无状态幂等BigQuery 可能重试整个批次处理器设计为无状态可安全重放。边界审查端点仍会收到原始临床文本只能部署在已批准的 VPC / 区域边界内并审查 BigQuery、Cloud Run、负载均衡器与备份的留存策略。相关文档与示例官方集成文档warehouse-remote-function.md、distributed-sql-udf.md部署示例含 DDL、合成测试请求、IAM 边界说明examples/warehouse-remote-function/README.mdSnowflake UDF 指南snowflake-udf.md配套演示examples/stream-processor/ 与 examples/notebooks/一句话总结数据仓库里跑脱敏 一次注册 一条 SQL。OpenMed 用向量化批处理把模型推理的成本摊薄到整个批次同时让患者数据全程留在你的网络边界内。【免费下载链接】openmedLocal-first healthcare AI: clinical NER HIPAA PII de-identification that runs 100% on-device. 2,200 medical models, 21 languages, Apple MLX Python, no cloud, no patient data leaving your network. Apache-2.0项目地址: https://gitcode.com/GitHub_Trending/ope/openmed创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表