Đồ án AI20K · Mã dự án BO-02

Hỏi đáp chính sách nhân sự.
Có trích dẫn, hoặc không trả lời.

Trợ lý AI trả lời dựa hoàn toàn trên tài liệu chính sách do HR kiểm duyệt. Thiếu căn cứ thì nói không biết, gặp việc nhạy cảm thì chuyển người thật — không suy đoán.

Bắt đầu hỏi →
Nghỉ việc phải xin phép trước bao nhiêu ngày?
Theo điều kiện trong tài liệu: ngày đăng ký trước 03 ngày; nghỉ từ 04 ngày trở lên đăng ký trước 07 ngày làm việc.
Lương tháng này của tôi bị trừ khoản gì vậy?
Câu hỏi gắn với dữ liệu cá nhân nên tôi không tự trả lời. Đã tạo ticket HR-2841 chuyển HR xử lý.
Nghỉ phép nămBảo hiểm & phúc lợiQuy trình onboarding

Xây trên nền tảng mã nguồn mở, embedding chạy cục bộ trên CPU — nội dung tài liệu nhân sự không rời khỏi hệ thống khi tìm kiếm

FASTAPI
LANGGRAPH
POSTGRESQL 16
PGVECTOR
FASTEMBED
NEXT.JS
SQLALCHEMY
ALEMBIC
DOCKER
GITHUB ACTIONS

Khác biệt cốt lõi

Được xây để biết mình không biết.
Không phải để đoán.

Khác với một chatbot LLM thông thường, agent này bị ràng buộc vào đúng bộ tài liệu chính sách do HR upload và kiểm duyệt. Mọi câu trả lời truy vết được tới tài liệu, điều/khoản và ngày hiệu lực — không phải “AI nói vậy” mà là “văn bản nào nói vậy”. Không đủ căn cứ thì từ chối; câu hỏi rơi vào vùng nhạy cảm thì nhường lại cho người thật.

Nguyên tắc thiết kế

100%
câu trả lời có căn cứ đều kèm trích dẫn điều khoản và ngày hiệu lực
0 ngoại lệ
câu hỏi gắn dữ liệu cá nhân luôn chuyển HR, agent không tự trả lời

Năng lực

Những gì hệ thống làm được

💬

Hỏi đáp có trích dẫn

Mọi câu trả lời đều dẫn nguồn.

Chat streaming bằng tiếng Việt tự nhiên. Câu trả lời có căn cứ luôn kèm tên tài liệu, điều/khoản và ngày hiệu lực để nhân viên tự kiểm chứng, thay vì phải tin “AI nói vậy”.

Tự kiểm chứng số liệu

Con số sai thì tự chặn.

Citation Verifier đối chiếu từng con số — số ngày phép, mức tiền, thời hạn — với nguyên văn tài liệu nguồn. Không khớp thì câu trả lời bị chặn trước khi tới người dùng.

🚦

Phân loại & chuyển HR

Biết việc nào không được tự làm.

Query Triage gán mỗi câu hỏi vào một nhãn an toàn trước khi trả lời. Câu hỏi gắn dữ liệu cá nhân, khiếu nại hay tranh chấp được dừng ngay và tự động thành ticket giao cho HR.

🔒

Phân quyền theo phòng ban

Đúng người, đúng tài liệu.

Mỗi tài liệu gắn phạm vi áp dụng: toàn công ty hoặc từng phòng ban cụ thể. Nhân viên chỉ truy vấn được phần thuộc phạm vi của mình, kể cả qua trích dẫn và cache.

📄

Quản lý tài liệu chính sách

HR làm chủ nguồn tri thức.

Upload PDF/DOCX bất đồng bộ, tự động bóc tách và chấm chất lượng. Tài liệu nghi ngờ lỗi bóc tách phải qua bước review của HR trước khi được đưa vào phục vụ.

📊

Giám sát & audit

Đo được thì cải tiến được.

Confidence trung bình, tỷ lệ từ chối, tỷ lệ escalate, chi phí token và audit log bất biến. Admin chỉ xem số liệu tổng hợp, không đọc được nội dung câu hỏi hay ticket.

Luồng xử lý

Một câu hỏi đi qua bốn bước trước khi có câu trả lời

Query Triage gán câu hỏi vào một trong ba nhãn an toàn. Nhóm dữ liệu cá nhân, khiếu nại và tranh chấp bị chặn ngay tại đây — agent không suy đoán, không có ngoại lệ.

Câu hỏi được embed cục bộ trên CPU rồi tìm trên pgvector, đã lọc sẵn theo phòng ban của người hỏi. Nội dung tài liệu nhân sự không được gửi tới API embedding bên ngoài.

Câu trả lời chỉ được dựng từ các đoạn tài liệu vừa truy xuất. Citation Verifier đối chiếu lại từng con số và từng trích dẫn với nguồn; sai lệch là chặn, không đưa ra ngoài.

Bốn loại phản hồi tách bạch: trả lời có căn cứ, từ chối vì ngoài phạm vi, từ chối vì thiếu tài liệu, hoặc thông báo đã chuyển HR. Không bao giờ trộn suy đoán vào câu từ chối.

Bài toán

Vấn đề đang tồn tại

HR trả lời lặp lại

Cùng một nhóm câu hỏi về nghỉ phép, bảo hiểm, phúc lợi quay đi quay lại, kéo HR khỏi tuyển dụng và phát triển nhân sự.

Nhân viên chờ hàng giờ

Thông tin lẽ ra tra cứu được ngay lại phải hỏi qua người; nhiều người chọn cách đoán hoặc hỏi đồng nghiệp.

Câu trả lời không nhất quán

Cùng một câu hỏi, mỗi nhân viên HR trả lời một kiểu — tiềm ẩn hiểu sai chính sách và tranh chấp lao động.

Chatbot thường thì bịa

Một LLM không có tài liệu nội bộ vẫn trả lời trôi chảy nhưng không truy vết được — rủi ro còn lớn hơn việc không có công cụ nào.

≥ 70%Tỷ lệ tự phục vụ mục tiêu
≤ 10sPhản hồi trung vị (p50)
0Câu nhạy cảm agent tự trả lời
“Agent được thiết kế để tự nhận biết giới hạn của mình và nói ‘tôi không biết’ thay vì bịa — mọi câu trả lời truy vết được tới đúng tài liệu, điều khoản và ngày hiệu lực.”

Đặc tả hệ thống v5.0 — Giá trị cốt lõiChỉ tiêu nghiệm thu: Recall@5 ≥ 85% · Faithfulness ≥ 90% · Citation accuracy ≥ 95%

Xem cách đo chất lượng

Hồ sơ dự án

Tài liệu kỹ thuật

Kiến trúc

RAG trên pgvector, embedding chạy cục bộ trên CPU

Vì sao vector store nằm trong chính PostgreSQL, hai schema tách quyền, và vì sao nội dung tài liệu không rời hệ thống khi tìm kiếm.

An toàn

Query Triage và ranh giới HITL bắt buộc

Ba nhãn an toàn, quy tắc dừng ngay với nhóm dữ liệu cá nhân, và cách một câu hỏi nhạy cảm được bàn giao thành ticket cho HR.

Chất lượng

Citation Verifier và bộ chỉ tiêu đánh giá

Cách từng con số được đối chiếu với nguyên văn nguồn, cùng ngưỡng Recall@5, Faithfulness và Citation accuracy dùng để nghiệm thu.

Xem toàn bộ tài liệu

Hỏi chính sách, nhận đúng điều khoản

Đăng nhập bằng tài khoản công ty để bắt đầu hỏi.

Bắt đầu hỏi