Files
duocthu/README.md
T
VuQuangBao 54cea00906 Add a concrete 3-step quickstart to README
Borrowed the shape from Langfuse's own README (log first call, see
results): ask a real question, check ArgoCD, check the trace -- three
clickable steps instead of a wall of status text before anything is
provable.
2026-08-25 17:40:52 +07:00

3.7 KiB

Dược Thư RAG — Demo GitOps trên Gitea cá nhân

Chatbot y dược tra cứu Dược thư Quốc gia Việt Nam 2018, có căn cứ trích dẫn trang thật cho từng câu trả lời. Repo này là bản demo độc lập, dựng lại để chứng minh một điều cụ thể: toàn bộ hạ tầng có thể chạy qua GitOps đọc từ Gitea cá nhân (git.vinmec.tech/VuQuangBao), thay vì GitHub — cùng kiến trúc, khác nguồn Git, khác hạ tầng vật lý, không đụng gì tới sản phẩm chính hay hạ tầng của team.

Chạy thật tại: https://finalduocthu.realvuxbaro.me

Thử ngay

  1. Mở finalduocthu.realvuxbaro.me, hỏi Metformin chống chỉ định trong trường hợp nào? — trả lời kèm trích dẫn trang thật (tr. 956), không phải tóm tắt chung chung.
  2. Mở ArgoCD — 4 Application đều Synced + Healthy, đọc từ chính repo này.
  3. Mở Langfuse → Tracing — câu hỏi vừa hỏi hiện ra thành 7 bước xử lý (hiểu câu hỏi → truy hồi → sinh câu trả lời → kiểm chứng), kèm chi phí thật tính theo token.

Trạng thái

Phần Thế nào
Corpus 15.100 chunk, embed và nạp vào Qdrant duocthu_v1
Chat RAG có căn cứ — chỉ định, chống chỉ định, ADR theo tần suất, tương tác thuốc, thận trọng thai kỳ, giữ ngữ cảnh nhiều lượt
Eval toàn sách 673/684 (98,4%) trả lời được trong phạm vi có thể trả lời
ArgoCD 4 Application: clickhouse-operator, langfuse, medical-chatbot-app, medical-chatbot-data — tất cả đọc từ repo này
Quan sát Grafana (độ trễ, phân bố quyết định, lỗi provider) + Langfuse tự host (trace từng bước xử lý, chi phí thật theo token)

Hai năng lực chưa có: tính liều theo cân nặng, so sánh nhiều thuốc. Đo trực tiếp và ghi lại trung thực tại apps/ai-service/evals/known_gaps.jsonl, không phải suy đoán. Xem thêm ở docs/rag-chat.md.

Đọc gì trước

Bắt đầu ở docs/README.md — bộ tài liệu chuẩn của dự án (kiến trúc, ingestion, RAG/chat, local dev, vận hành, API, cấu hình, eval). Bộ tài liệu này mô tả sản phẩm, không riêng cho bản demo — máy demo chỉ khác ở nguồn Git và hạ tầng chạy, hành vi chatbot thì y hệt.

Cấu trúc

apps/
  web/            Next.js — giao diện chat + BFF
  ai-service/     Python FastAPI — pipeline RAG, gọi AWS Bedrock
  api-gateway/    NestJS — cổng vào công khai
  auth-service/   NestJS — đăng ký/đăng nhập/JWT
packages/         DTO dùng chung, HTTP client, UI components
ingestion/        pipeline offline: PDF -> chuyên luận -> chunk -> embedding -> Qdrant
infra/helm/       Helm chart 4 Application đọc bởi ArgoCD (chart giống hệt production)
docs/             tài liệu chuẩn của dự án

Vì sao repo này tồn tại

Không phải để thay thế sản phẩm chính. Team dùng git.vinmec.tech/ai-team/* cho hạ tầng thật — repo này nằm trong namespace cá nhân (VuQuangBao/duocthu), tách biệt hoàn toàn: EC2 riêng, cluster k3s riêng, Postgres/Qdrant riêng, ArgoCD riêng, Langfuse riêng. Mục đích duy nhất: chứng minh khả năng migrate GitOps sang Gitea mà không đổi gì về kiến trúc hay hành vi hệ thống.