PageIndex là gì?

PageIndex là hệ thống RAG (Retrieval-Augmented Generation) mã nguồn mở được phát triển bởi VectifyAI, thay đổi hoàn toàn cách thức tìm kiếm tài liệu truyền thống. Khác với cơ sở dữ liệu vector truyền thống, PageIndex sử dụng phương pháp dựa trên suy luận, xây dựng cấu trúc cây phân cấp của tài liệu để tìm kiếm như con người.

  • 🌲 Cây lập chỉ mục — Tổ chức tài liệu như mục lục
  • 🧠 Tìm kiếm dựa trên suy luận — LLM suy luận thay vì độ tương đồng vector
  • Không cần vector database — Tiết kiệm chi phí lưu trữ vector đắt đỏ
  • Không cần chunking — Giữ nguyên cấu trúc tự nhiên của tài liệu
  • 📊 98.7% độ chính xác — SOTA trên bài kiểm tra FinanceBench

GitHub: https://github.com/VectifyAI/PageIndex
Stars: 29.202+ | Ngôn ngữ: Python | Giấy phép: Apache-2.0


Tại sao RAG truyền thống không đủ tốt?

Vấn đề của RAG vector truyền thống

Vấn đềGiải thích
Tương đồng ≠ Liên quanTìm kiếm vector tìm thấy những gì ngữ nghĩa tương tự, nhưng không nhất thiết là thực sự liên quan
Chunking phá hủy cấu trúcChia nhỏ bắt buộc làm đứt gãy cấu trúc logic của tài liệu
Tìm kiếm hộp đenTìm kiếm vector không thể giải thích, không thể truy vết tại sao trả về kết quả này
Chi phí caoCần duy trì cơ sở dữ liệu vector, chi phí lưu trữ và tính toán cao
Tài liệu dài kém hiệu quảĐộ chính xác tìm kiếm tài liệu chuyên nghiệp dài (báo cáo tài chính, tài liệu pháp lý) thấp

Giải pháp của PageIndex

PageIndex mô phỏng cách chuyên gia con người đọc tài liệu:

  1. Xem cấu trúc mục lục trước (cây lập chỉ mục)
  2. Suy luận nên đi đến chương nào dựa trên câu hỏi
  3. Tìm kiếm sâu trong chương liên quan

Nguyên lý công nghệ cốt lõi

1. Tạo cấu trúc cây tài liệu

PageIndex chuyển đổi PDF thành cấu trúc cây phân cấp:

{
  "title": "Financial Stability",
  "node_id": "0006",
  "start_index": 21,
  "end_index": 22,
  "summary": "The Federal Reserve monitors financial vulnerabilities...",
  "nodes": [
    {
      "title": "Monitoring Financial Vulnerabilities",
      "node_id": "0007",
      "start_index": 22,
      "end_index": 28
    },
    {
      "title": "Domestic and International Cooperation",
      "node_id": "0008",
      "start_index": 28,
      "end_index": 31
    }
  ]
}

2. Tìm kiếm cây dựa trên suy luận

Khi người dùng đặt câu hỏi, LLM sẽ:

  1. Hiểu câu hỏi — Phân tích ý định truy vấn
  2. Duyệt cấu trúc cây — Suy luận nút nào có thể chứa câu trả lời
  3. Tìm kiếm sâu trong nút liên quan — Tìm thông tin cụ thể trong nút ứng viên
  4. Trả về kết quả — Kèm theo trích dẫn nguồn (số trang, chương)

3. Tìm kiếm cây Monte Carlo tương tự AlphaGo

PageIndex lấy cảm hứng từ AlphaGo, sử dụng thuật toán tìm kiếm cây:

  • Chọn — Chọn nút hứa hẹn nhất
  • Mở rộng — Mở rộng nút con
  • Đánh giá — LLM đánh giá mức độ liên quan của nút
  • Lan truyền ngược — Cập nhật trọng số nút

Bắt đầu nhanh

Cài đặt

# Clone repository
git clone https://github.com/VectifyAI/PageIndex.git
cd PageIndex

# Cài đặt dependencies
pip3 install --upgrade -r requirements.txt

Cấu hình API Key

# Tạo file .env
echo "OPENAI_API_KEY=your_openai_key_here" > .env

Tạo cây tài liệu

# Tạo cấu trúc cây PageIndex cho PDF
python3 run_pageindex.py --pdf_path /path/to/your/document.pdf

Tham số tùy chọn

--model                  # Mô hình LLM (mặc định: gpt-4o-2024-11-20)
--toc-check-pages       # Số trang kiểm tra mục lục (mặc định: 20)
--max-pages-per-node    # Số trang tối đa mỗi nút (mặc định: 10)
--max-tokens-per-node   # Số token tối đa mỗi nút (mặc định: 20000)
--if-add-node-summary   # Thêm tóm tắt nút (mặc định: yes)

Ví dụ thực tế

Ví dụ 1: Phân tích tài liệu tài chính

from pageindex import PageIndex

# Tải cây tài liệu
pi = PageIndex(tree_path="financial_report.json")

# Truy vấn
result = pi.query(
    "Tốc độ tăng trưởng doanh thu Q3 là bao nhiêu?",
    top_k=3
)

print(result.answer)
# "Doanh thu Q3 tăng 23% so với cùng kỳ năm ngoái, doanh thu từ dịch vụ đám mây..."

print(result.sources)
# [{"page": 45, "section": "Financial Results", "node_id": "0012"}]

Ví dụ 2: Xem xét hợp đồng pháp lý

# Tải tài liệu hợp đồng
pi = PageIndex(tree_path="contract.pdf.json")

# Truy vấn điều khoản cụ thể
result = pi.query(
    "Điều kiện chấm dứt trong Điều 7 là gì?"
)

# PageIndex sẽ tự động định vị chương liên quan

Ví dụ 3: Nghiên cứu bài báo học thuật

# Tải bài báo
pi = PageIndex(tree_path="paper.pdf.json")

# Truy vấn suy luận xuyên chương
result = pi.query(
    "Phương pháp luận trong Chương 3 liên quan thế nào đến kết quả trong Chương 5?"
)

# PageIndex sẽ duyệt cấu trúc cây để tìm thông tin liên quan

So sánh với đối thủ

Đặc tínhPageIndexRAG vector truyền thốngLlamaIndexLangChain
Vector database❌ Không cần✅ Bắt buộc✅ Bắt buộc✅ Bắt buộc
Chunking❌ Không cần✅ Bắt buộc✅ Bắt buộc✅ Bắt buộc
Dựa trên suy luận
Khả năng giải thích✅ Có thể truy vết❌ Hộp đen⚠️ Một phần⚠️ Một phần
Tài liệu dài✅ Xuất sắc⚠️ Bình thường⚠️ Bình thường⚠️ Bình thường
Tài liệu chuyên nghiệp✅ Xuất sắc⚠️ Bình thường⚠️ Bình thường⚠️ Bình thường
Độ chính xác✅ 98.7%~75%~80%~78%

Mô hình kinh doanh và cơ hội kiếm tiền

1. Phân tích tài liệu doanh nghiệp

Giấy phép Apache-2.0 của PageIndex cho phép sử dụng thương mại:

  • Phân tích tài chính — Phân tích tự động báo cáo tài chính, hồ sơ SEC
  • Tư vấn pháp lý — Xem xét hợp đồng, nghiên cứu vụ án
  • Tài liệu y tế — Phân tích hồ sơ bệnh án, tài liệu y khoa
  • Tài liệu chính phủ — Phân tích chính sách, tìm kiếm quy định

2. Xây dựng sản phẩm SaaS

Xây dựng dựa trên PageIndex:

  • Nền tảng Q&A tài liệu thông minh
  • Hệ thống cơ sở tri thức doanh nghiệp
  • Trình tạo báo cáo tự động
  • Công cụ xem xét tuân thủ

3. Dịch vụ tư vấn

Cung cấp liên quan đến PageIndex:

  • Tư vấn kỹ thuật
  • Phát triển tùy chỉnh
  • Dịch vụ đào tạo

Hiệu suất benchmark

Kết quả FinanceBench

Hệ thốngĐộ chính xác
PageIndex (Mafin 2.5)98.7%
RAG vector truyền thống~75%
Giải pháp thương mại khác~80%

PageIndex đạt state-of-the-art trong Q&A tài liệu tài chính, chứng minh ưu thế của tìm kiếm dựa trên suy luận.


Tùy chọn triển khai

1. Tự lưu trữ (mã nguồn mở)

git clone https://github.com/VectifyAI/PageIndex.git
pip3 install -r requirements.txt
python3 run_pageindex.py --pdf_path your.pdf

Phù hợp: Đội ngũ kỹ thuật, kịch bản nhạy cảm với dữ liệu

2. Dịch vụ đám mây

Phù hợp: Khởi động nhanh, môi trường production

3. Phiên bản doanh nghiệp

  • Triển khai private
  • Đường ống OCR tùy chỉnh
  • Hỗ trợ chuyên dụng

Cộng đồng và tài nguyên


Tóm tắt

PageIndex là sự tiến hóa thế hệ tiếp theo của công nghệ RAG:

29K+ Stars — Cộng đồng công nhận
Không cần vector DB — Tiết kiệm chi phí cơ sở hạ tầng đắt đỏ
Dựa trên suy luận — Thực sự hiểu cấu trúc tài liệu
98.7% độ chính xác — Dẫn đầu ngành
Có thể giải thích — Mọi tìm kiếm đều có thể truy vết
Mã nguồn mở — Apache-2.0, thân thiện thương mại

Phù hợp với ai?

  • Nhà phân tích tài chính: Xử lý báo cáo tài chính, hồ sơ SEC
  • Cố vấn pháp lý: Xem xét hợp đồng, quy định
  • Nhà nghiên cứu: Phân tích bài báo, tài liệu
  • Nhà phát triển: Xây dựng ứng dụng AI tài liệu

Bắt đầu ngay: https://github.com/VectifyAI/PageIndex



Last updated: 2026-05-07