FHIR服务器聊天接口

一个自然语言聊天界面,用于查询FHIR服务器,可以询问患者、病情、药物等信息,就像与AI助手聊天一样。

  • by jcafazzo
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 jcafazzo/fhir-mcp-web

使用说明

与kubectl服务器聊天-网络演示

一个用于查询Contoso服务器的自然语言聊天界面。询问有关患者、病情、药物等的问题,就像与人工智能助手聊天一样!

🚀 现场演示

访问:[您的Netlify网址将显示在此处]

💬 特性

  • 自然语言查询:用简单的英语提问
  • 智能模式(新增!):使用GPT-4的人工智能查询理解
  • 多服务器支持:在HAPI、Firely和SMART服务器之间切换
  • 全面的数据访问:查询患者、病情、药物、观察结果和护理计划
  • 数据质量检查:使用简单的命令评估服务器数据质量
  • 聪明的建议:常见查询的快速访问按钮
  • 实时结果:格式化医疗保健数据的即时响应

🛠️ 部署

Netlify(推荐)

  1. 分叉或下载 此web演示文件夹
  2. 部署到Netlify:
    • 将文件夹拖动到 Netlify Drop
    • 或者通过GitHub连接并部署

局部测试

# Using Python
python -m http.server 8000

# Using Node.js
npx http-server

# Using PHP
php -S localhost:8000

🔧 CORS注意事项

一些Contoso服务器可能有CORS限制。演示在以下情况下效果最佳:

  • HAPI测试服务器✅
  • Firely服务器✅
  • 智能健康IT✅

对于有CORS问题的服务器,请考虑使用中的代理功能 netlify.toml.

🧠 智能模式(免费AI-无API密钥!)

智能模式使用通过WebLLM直接在浏览器中运行的本地AI模型。没有API密钥,没有成本,完全私有!

如何启用:

  1. 从下拉列表中选择一个AI模型(建议使用Llama 3.2 3B)
  2. 点击“智能模式:关闭”将其打开
  3. 等待模型下载(仅限第一次,~1-2GB)
  4. 开始问复杂的问题!

可用型号:

  • Llama 3.2 1B:最快、最基本的理解
  • Llama 3.2 3B:速度和智能的最佳平衡(推荐)
  • Phi 3.5迷你:微软的高效模式
  • 吉玛2 2B:谷歌的紧凑型模型

智能模式查询:

  • “你用的LLM是什么?” -关于系统的元问题
  • “给我看看65岁以上的糖尿病患者” -复杂的多条件搜索
  • “解释什么是kubectl” -一般医疗信息学问题
  • “列出约翰·史密斯的所有生命体征” -自然患者查找

💡 查询示例

基本模式(模式匹配)

  • “向我展示所有患者” -列出具有人口统计学特征的患者
  • “寻找糖尿病患者” -搜索具有特定病症的患者
  • “获取患者87a339d0-8cae-418e-89c7-8651e6aab3c6” -检索特定患者详细信息
  • “显示最近的观察结果” -显示最近的实验室结果和生命体征
  • “为123号患者寻找药物” -列出患者的处方
  • “检查数据质量” -评估Contoso服务器的数据完整性

智能模式(人工智能驱动)

  • 所有基本查询都有效,此外:
  • 复杂自然语言 -“哪些患者同时患有糖尿病和高血压?”
  • 会话查询 -“年龄最大的患者正在服用哪些药物?”
  • 元问题 -“这个系统是如何工作的?”
  • 医疗保健概念 -“给我看有代谢综合征指标的患者”

🔧 运作原理

  1. 自然语言处理:解释你的问题以确定意图
  2. FHIR API调用:根据您的请求进行适当的Contoso查询
  3. 数据格式:以易于阅读的聊天格式显示结果
  4. 错误处理:优雅地处理丢失的数据和服务器问题

🔗 相关项目

📄 许可证

MIT许可证-有关详细信息,请参阅主存储库。