← 返回列表

Insurance-Policy-RAG:基于 Gemini 与 ChromaDB 的保单 PDF 问答助手

arashshams/Insurance-Policy-RAG · A RAG assistant that answers plain-English questions about an insurance policy PDF, grounded in the document and cited by page. Built with Gemini embeddings, ChromaDB, and a Streamlit app you can try live.

GitHub原文发布 未知首次收录 2026-10-31上架 2026-10-31 07:01

☆ 收藏查看项目 ↗

ELI5:它是什么,解决什么问题

该项目是一个面向单一保险保单 PDF 的检索增强生成(RAG)问答助手,能够用自然语言回答保险条款问题,并基于文档内容给出页码引用,在文档未覆盖时明确回答“我不知道”。系统使用 Gemini 嵌入模型生成向量,存入 ChromaDB,通过 Streamlit 提供可在线试用的界面,同时也提供 FastAPI 后端和可导入的 Python 管道。项目包含评估工具,覆盖拒答、检索命中率、引用准确性等指标,并支持上传自己的保单 PDF 进行问答。

核心能力与快速开始

★ 0 · Python

能做什么
从保险保单 PDF 中提取文本,按重叠分块并嵌入到 ChromaDB 向量库;对用户问题检索最相关段落,并基于 Gemini 模型生成仅依据检索段落的回答,附带页码引用;检索为空或模型拒绝时明确输出“我不知道”;提供可导入的 Python 并行化管道(build_index_from_pdf、answer_question 等),支持在内存中处理上传 PDF 而不落盘;提供 FastAPI 接口(GET /health、POST /ask)和 Streamlit 界面(演示与上传模式);附带评估工具,用于计算拒答精确率/召回率、检索命中率、引用正确性等指标。
适用场景
用户希望快速查询自己保单 PDF 中的保险覆盖范围、免赔额、除外责任等条款;开发者想要参考一个端到端的 RAG 应用实现,包含文档摄入、嵌入、检索、生成与评估;需要构建文档问答系统并强调引用与拒答能力的场景;通过 Streamlit 在线演示或上传个人保单进行问答。
项目形态
可直接使用的工具
部署方式
提供 Streamlit 在线演示(无需安装);也可本地运行(make run-app)或运行 FastAPI 后端(make run-api)。上传模式下文档以内存方式处理,不落盘。
主要依赖
Python 3.11;需要 Gemini API 密钥(材料称可在免费层使用);依赖包括 ChromaDB、Streamlit、FastAPI 等(见 requirements.txt);上传的文本会发送至 Google Gemini API 进行嵌入与回答。
使用限制
仅针对单一保单文档,不跨保险公司或保单类型泛化;不提供法律或财务建议;距离阈值 0.37 仅在示例保单上校准,可能不适用于其他保单;上传的 PDF 文本会发送给 Gemini API;未说明商业使用限制;示例保单为 Manulife FlexCare(32 页),答案仅对相同保单有效。
许可证
MIT
最近推送
2026-10-30 08:58

资料检查:2026-10-31 07:00 · 卡片整理:2026-10-31 07:00
卡片由 AI 根据仓库资料整理,未进行安装或运行验证

职业应用

程序员

作为可导入的 Python RAG 管道(src/rag_pipeline.py),供开发者构建和评估基于 PDF 的检索增强问答系统:调用 build_index_from_pdf 与 answer_question,并复用其评估工具(拒答、检索命中率、引用准确性)与 FastAPI 后端。

查看内容依据
The whole pipeline is consolidated into a single importable module, **`src/rag_pipeline.py`**, so notebooks, evaluation, and future apps all share one code path and one config block.

官方使用入口 ↗

由 AI 根据来源材料整理,未进行安装或运行验证

这是基于来源内容整理的摘要。原文链接失效后,本页摘要和讨论仍会保留。

讨论 0

登录后参与讨论,阅读资讯无需注册。

还没有评论,来分享第一个看法。