7 điểm bởi skanxhakr12 6 ngày trước | 1 bình luận | Chia sẻ qua WhatsApp

Tóm tắt một dòng

Một engine tri thức Graph-RAG 100% cục bộ, lấy bảo mật làm nguyên tắc thiết kế.
Khi đạt tới v0.3.0 Platform Skeleton (2026-05-17), lớp middleware nhận thức
không còn chỉ là thiết kế mà đã được đưa lên nhánh chính dưới dạng mã nguồn.

  • GitHub: https://github.com/Hashevolution/James-RAG-Evol
  • Phiên bản hiện tại: v0.3.0 (đã vượt qua Foundation Hardening 6/6 axes, hoàn tất cổng kiểm duyệt ngày 2026-05-13)
  • Giấy phép: MIT
  • Xác thực bên ngoài: huy hiệu OpenSSF Best Practices passing (Tiered 111%, project #12806)
  • Biệt danh: "Mini Palantir" (Palantir là thương hiệu của Palantir Technologies, không liên quan trực tiếp đến JAMES — chỉ là phép so sánh vì mẫu typed-graph + lưu vết audit khá giống nhau)

[IMG] Hình ảnh trực quan ontology 3D của JAMES

v0.2 → v0.3, trong 9 ngày đã thay đổi những gì

  1. Lớp middleware nhận thức Phase 2 đã ổn định trên nhánh chính
    • verification engine (PR #290) / planner·task decomposition (PR #297) / tool router (PR #295)
    • kiểm chứng, lập kế hoạch và định tuyến công cụ không còn là design doc mà đã thành các module có thể import
  2. Knowledge Cascade Phase A → E: hoàn tất migration lên production với 213 entities / 656 relations
  3. Duy trì pipeline bảo mật 3 giai đoạn: input pre_check → truy xuất ABAC → output post_filter + PII mask
  4. Nhật ký audit tự tiến hóa: mọi bản vá đều có approver_username, không thể bỏ qua
  5. Mật khẩu bcrypt + migration trong suốt SHA-256 (PR #173), baseline ruff F-class + workflow lint GitHub Actions (PR #205)

Những gì đã diễn ra ở bên ngoài (bằng chứng đây không phải dự án làm một mình)

  • Đang triển khai hợp tác bên ngoài đầu tiên với Ali Afana (nhà sáng lập Provia, dev.to Featured) — 6 lượt DM trên LinkedIn + một thread bình luận trên dev.to
    • Cùng thực hiện: tách riêng bộ regression 83 mục cho injection, benchmark các biến thể Gemma 4 cho v0.3 (E4B / 26B MoE / 31B Dense)
    • Kết quả hợp tác: injection-fixtures schema v1.1 (PR #311 → #317 → #322, đã phản ánh đầy đủ các đề xuất của Ali về normalization invariant, expected_block_stage, catalog_context, và ghi rõ nguồn trong diff-log)
    • Đăng ký trước: kế hoạch đánh giá 3×3 (3 biến thể × 3 nhiệt độ × 1 cấu trúc prompt, 4 giả thuyết + decision matrix, được khóa bằng PR #315 trước khi chạy bất kỳ ô nào)
    • Điểm tiếp xúc cho người triển khai bên ngoài: LLM Provider contract (PR #316, 6 hành vi bắt buộc + reserved kwargs/env vars, kèm phác thảo backend Gemini API khoảng 30 dòng)
  • Ứng viên hợp tác thứ hai — Matija Fućek(@mfucek_, naumu.ai) đã trả lời tweet về trực quan hóa 3D bằng cách chia sẻ demo dự án của mình (ứng dụng company brain plug-and-play), qua đó mở ra kênh hợp tác
  • Đã hoàn tất gửi bài cho 2 track của Gemma 4 Challenge:

Giới hạn thẳng thắn (giai đoạn alpha, không có gì phải giấu)

  • Middleware nhận thức Phase 2 đã lên nhánh chính, nhưng kiểm chứng cho đa người dùng và tải lớn là cổng của v0.4
  • Đa phương thức đã được nối dây tới LLaVA·Whisper·ffmpeg (working prototype). Tích hợp retrieval sẽ nằm trong v0.3.x ~ v0.4
  • Bộ khung tự tiến hóa đã được kiểm chứng trong môi trường một người dùng, chưa kiểm chứng workflow nhiều approver
  • Gemma 4 E4B đã tạo ra 5 phản hồi rỗng ở giai đoạn nhận thức, và cả 4 giả thuyết vẫn chưa xác định được root cause (được công khai nguyên trạng trong bài viết ở track Write)

Có thể dùng vào đâu

  • Khi muốn xử lý wiki/ghi chú nội bộ hoàn toàn cục bộ mà không gửi lên API bên ngoài
  • Cho các demo/nghiên cứu RAG mà đường suy luận (typed graph_path dạng A --[CAUSES]--> X --[REQUIRES]--> Y) phải được hiển thị dưới dạng đồ thị cùng với câu trả lời
  • Tài liệu tham chiếu cho các mẫu security RAG (pipeline 3 giai đoạn, instruction isolation, migration bcrypt, baseline ruff đều được công khai ở cấp độ PR)
  • Dành cho ai cần điểm vào plugin — loader JAMES_PLUGINS và Backend Protocol đang được ổn định trong v0.3.x

Bắt đầu

git clone https://github.com/Hashevolution/James-RAG-Evol  
cp .env.example .env  
pip install -r requirements.txt  
ollama pull gemma2:2b      # nếu không có GPU thì bắt đầu với bản này  
python server_llmwiki.py   # http://localhost:8000

1 bình luận

 
skanxhakr12 6 ngày trước

Xin chào. Luôn hoan nghênh mọi câu hỏi —

Dưới đây là phần so sánh ở mức thiết kế hệ thống.

Kiến trúc hiện tại của JAMES (v0.3.0) như sau.

  1. Không có tầng formal query language — tìm kiếm hybrid trong core/retrieval_engine.py sử dụng hợp nhất điểm số 4 hướng gồm dense embedding + BM25 + keyword + name, và không chuyển đổi truy vấn NL sang ngôn ngữ hình thức như SPARQL/RDF/SQL. Điểm embedding và BM25 được dùng nguyên trạng để chọn các node ứng viên.

  2. Phản hồi của LLM là NL — trong core/reasoning/modes/chat.py, LLM nhận prompt NL và tạo câu trả lời dưới dạng văn bản NL, không có bước trung gian bằng ngôn ngữ hình thức.

  3. Việc cập nhật KG được tách riêng bằng cổng phê duyệt của con người — được nêu rõ ở câu đầu tiên của module docstring trong core/change_request.py: "Every write inside JAMES becomes a proposal in this module first; only a separate reviewer's approval turns the proposal into a real write." Tức là bản thân hệ thống không có đường dẫn nào để tự động add/modify/remove vào KG dựa trên phản hồi của LLM. wiki_edit cũng có cổng quyền admin, và bắt buộc luồng propose → review → apply của change_request (tham khảo CLAUDE.md §3, ARCHITECTURE.md §5.6).

Xin hãy cân nhắc rằng JAMES hiện đang ở giai đoạn alpha, phi thương mại.

Ngoài ra, nếu bạn muốn phân tích sâu hơn, sẽ rất tuyệt nếu cùng xem qua trên GitHub Issue.

Tôi nghĩ những phản hồi đa dạng là điều có giá trị nhất vì chúng giúp chúng tôi kiểm tra một cách trung thực các lựa chọn thiết kế của dự án. Xin cảm ơn.