Bỏ qua tới nội dung chính
Quay lại tin tức

Xây dựng cấu trúc tài liệu bằng kỹ thuật vòng lặp: Khôi phục dàn ý PDF từ kiểu chữ nội dung cho RAG

Towards Data Science· angela shi· 5/8/2026general

Trí tuệ Tài liệu Doanh nghiệp [Tập 1 #5octies] - Các quy tắc đề xuất, LLM xác thực: sáu tín hiệu xác định về kiểu chữ cấp độ đoạn văn làm nổi bật các ứng cử viên tiêu đề, một vòng lặp giới hạn giữ lại các tiêu đề thực sự và cùng một toc_df (bảng mục lục) được đưa trở lại vào quy trình RAG. Bài đăng "Xây dựng cấu trúc tài liệu bằng kỹ thuật vòng lặp: Khôi phục dàn ý của tệp PDF từ kiểu chữ nội dung cho RAG" lần đầu tiên xuất hiện trên Towards Data Science.

Mô hình ngôn ngữ lớn Xây dựng cấu trúc tài liệu bằng kỹ thuật vòng lặp: Khôi phục dàn ý PDF từ kiểu chữ nội dung cho RAG Enterprise Document Intelligence [Tập 1 #5octies] – Các quy tắc đề xuất, LLM xác thực: sáu tín hiệu xác định về kiểu chữ cấp độ đoạn văn làm nổi bật các tiêu đề ứng cử viên, một vòng lặp giới hạn giữ lại các tiêu đề thực và cùng một toc_df được đưa trở lại quy trình RAG. angela shi Ngày 5 tháng 8 năm 2026 26 phút đọc Chia sẻ Ảnh của icon0.com, qua Pexels. Một quy trình RAG có cấu trúc cần mục lục của tài liệu: phạm vi truy xuất theo phần và bộ chia cắt theo ranh giới tiêu đề thay vì giữa câu. Nhưng một số tài liệu không có mục lục. Một bài báo được xuất trực tiếp từ LaTeX không có dàn ý gốc và không có trang mục lục in sẵn, vì vậy không có toc_df để quy trình đọc. Các tiêu đề vẫn nằm ngay trên nội dung, từng phần, lớn hơn và đậm hơn so với văn bản xung quanh. Bài viết 5septies (tái tạo TOC từ mục lục) đã xử lý tài liệu ít nhất có in trang mục lục; bài viết này không in trang nào. Vì vậy, quy trình xây dựng lại toc_df từ tín hiệu duy nhất còn lại: cách các tiêu đề trông. Bài viết này là một tài liệu đồng hành phân tích trong Enterprise Document Intelligence, loạt bài xây dựng hệ thống RAG cấp doanh nghiệp từ bốn viên gạch. Nó nằm trong viên gạch 1 (phân tích tài liệu) và đóng lại luồng tái tạo TOC mà Bài viết 5 (phân tích tài liệu), Bài viết 5B (mô hình dữ liệu quan hệ) và Bài viết 5septies (tái tạo TOC từ mục lục) đã mở. vị trí của bài viết này: viên gạch 1 (phân tích tài liệu), Phần II, trường hợp tái tạo TOC bị trì hoãn bởi Bài viết 5septies – Hình ảnh của tác giả 📓 Sổ tay có thể chạy hướng dẫn bài báo chú ý (data/paper/1706.03762v7.pdf) qua vòng lặp từ line_df + span_df đến toc_df 24 mục với 21 tiêu đề thực và 3 tiêu đề sai mà xác thực LLM loại bỏ: doc-intel/notebooks-vol1. 1. Vị trí và nội dung của bài viết này Bài viết 5septies (tái tạo TOC từ mục lục) đã vạch ra một ranh giới: phát hiện TOC đọc một trang đã tồn tại (dàn ý gốc hoặc mục lục in sẵn); khôi phục cấu trúc từ kiểu chữ nội dung thuộc về tóm tắt. Ranh giới đó là thực dụng. Nó giữ cho thác mục lục nhỏ và có thể kiểm tra được. Nhưng ý định tóm tắt có các chế độ lỗi khác nhau (ngữ cảnh dài, ưu tiên lời nhắc) và các đảm bảo khác nhau (không có hình dạng cố định, không có cột nguồn). Đối với một tài liệu có các tiêu đề kiểu chữ rõ ràng trên nội dung của nó, chúng ta không cần vòng lặp tóm tắt. Chúng ta cần cùng một hình dạng toc_df như mọi nơi khác, được điền từ các tín hiệu mà nội dung mang lại. Vì vậy, ranh giới di chuyển: tái tạo kiểu chữ nội dung là trường hợp phát hiện thứ tư, không phải là phương án dự phòng tóm tắt. Đầu vào: một line_df (cộng với span_df khi trình phân tích hiển thị kiểu chữ) mà TOC gốc và mục lục in sẵn đều trống. Đầu ra: một toc_df theo định dạng chuẩn của Bài viết 5B, để truy xuất, phân đoạn và tóm tắt tiếp tục hoạt động không thay đổi. Khi bạn có trường hợp thứ tư đó, ba tình huống lân cận sẽ tự động xuất hiện: PDF không có cấu trúc nào cả, trường hợp vừa được mô tả. PDF có dàn ý gốc một phần dừng ở cấp độ 2 trong khi nội dung rõ ràng có cấp độ 3 (3.2.1 ..., 3.2.2 ...). Phần kiểu chữ nội dung làm sâu sắc thêm những gì dàn ý cung cấp cho bạn. Tệp PDF là tổng hợp: hai hoặc nhiều tài liệu được nối với nhau. Đánh số phần được khởi tạo lại giữa chừng tệp và dàn ý gốc (nếu có) là phẳng. Cùng một lượt, với một bước hợp nhất, sẽ điều hòa các luồng. Phần còn lại của bài viết sẽ đi qua từng trường hợp, theo cùng thứ tự mà chuỗi thử chúng. 2. Bốn trường hợp, một chuỗi Chuỗi đã tăng thêm một trường hợp. Thứ tự vẫn như cũ: trường hợp rẻ nhất trước, chuyển sang trường hợp tiếp theo khi một trường hợp không kích hoạt hoặc trả về quá ít. Trường hợp 4 là trường hợp mới; ba trường hợp trước đó đến từ Điều 5septies (tái tạo mục lục từ bảng mục lục) không thay đổi. Trường hợp 4 là trường hợp mới: trường hợp duy nhất mà LLM thực hiện phát hiện thực sự, không phải kiểm tra tính nhất quán – Hình ảnh của tác giả Trường hợp 1, dàn ý gốc, và Trường hợp 2, trang mục lục có liên kết. Điều 5septies (tái tạo mục lục từ bảng mục lục) bao gồm cả hai. Có tính xác định, chi phí thấp, chính xác khi chúng hoạt động. Trường hợp 3, trang mục lục in không có liên kết. Cùng một bài viết, các mẫu văn bản cộng với căn chỉnh nhãn theo trang. Trường hợp 4, hoàn toàn không có trang mục lục. Bài viết này. Kiểu chữ phần thân làm nổi bật các ứng cử viên tiêu đề; một vòng lặp LLM giữ lại các tiêu đề thực sự. Trường hợp 4 là tùy chọn trong chuỗi vì nó thực sự là đắt nhất: một vài lượt của LLM trong trường hợp xấu nhất, một lượt khi các tín hiệu xác định đủ rõ ràng. Bật nó bằng cách truyền methods=("links", "contents_text", "llm", "body_structure") cho reconstruct_toc_df, hoặc gọi reconstruct_toc_from_body trực tiếp khi bạn biết trước rằng tệp không có trang mục lục. 3. Cách chuỗi tái tạo mục lục Với bốn trường hợp đã được ánh xạ, đây là cách chuỗi thực sự biến các trang của tài liệu thành một toc_df, từng giai đoạn một, từ các tín hiệu mà nó đọc được từ trang đến kiểm tra LLM ở cuối. 3.1 Ma trận trình phân tích: những gì mỗi phương pháp phân tích cung cấp cho chúng ta Mọi quy tắc mà bộ phát hiện kiểu chữ phần thân đọc được là một cột của bảng được trích xuất. Vì vậy, câu hỏi không phải là “sáu tín hiệu là gì” trước tiên, mà là “trình phân tích cung cấp cho tôi những cột nào”. Câu trả lời phụ thuộc vào cách tệp PDF được phân tích cú pháp. Bốn khối nằm ở cấp cao hơn; ở đây chúng ta nằm trong khối 1, và khối 1 đã có (trong các bài viết trước) một số triển khai. Cách bốn trình phân tích khác nhau về tín hiệu mục lục, từ fitz (phong phú nhất) đến EasyOCR (chỉ vị trí và văn bản) – Hình ảnh của tác giả Hai điểm thực tế định hình mã: PyMuPDF hiển thị kiểu chữ theo từng span, không theo từng dòng. Một span là một chuỗi ký tự liên tục trong một phông chữ, kích thước, độ đậm, in nghiêng và màu sắc. Một dòng trộn văn bản đậm và không đậm sẽ mở rộng thành nhiều span. Vì vậy, mô-đun cung cấp một hàm trợ giúp enrich_line_df_with_style(line_df, span_df) mà một

Nguồn tin: Towards Data Science — Tác giả: angela shi. Bản dịch tiếng Việt do AI thực hiện, có thể có sai sót.