Trí tuệ nhân tạo4 PHÚT ĐỌC
Bản So Sánh Giữa Rule-Based và LLM Trong Tách Dữ Liệu PDF B2B

Bản So Sánh Giữa Rule-Based và LLM Trong Tách Dữ Liệu PDF B2B

Tổng hợp bởi AI - TechInsight
08:56 • 16/5/2026
Xem bài gốc

AI Summary

Trong bài viết này, tôi sẽ chia sẻ trải nghiệm xây dựng hệ thống trích xuất dữ liệu từ hợp đồng PDF B2B theo hai hướng: quy tắc cố định và AI dựa trên LLM. Cùng xem đâu mới là giải pháp phù hợp cho các doanh nghiệp Việt Nam trong bối cảnh đa dạng layout và yêu cầu linh hoạt.

Mở đầu: Khi công nghệ gặp phải thử thách thực tế


Bạn từng nghĩ, cứ làm theo quy tắc là xong? Nhưng rồi, khi đối mặt với hàng trăm biểu mẫu, mỗi nơi mỗi kiểu, thì câu chuyện không còn đơn giản nữa. Đặc biệt trong lĩnh vực B2B, nơi các hợp đồng, hóa đơn, đơn đặt hàng thường có dạng khác nhau, việc tự viết quy tắc regex hay template cố định gần như là cuộc chơi của những người thích mắm muối, thử sai liên tục.

Chưa kể, mỗi khách hàng có thể tùy biến biểu mẫu theo ý thích, từ vị trí các trường dữ liệu, tên gọi, cho đến cách trình bày. Trong khi đó, các hệ thống truyền thống dựa trên regex hay rule có thể bắt đầu gặp giới hạn rõ ràng: chỉ xử lý tốt khi layout chuẩn, còn khi có biến thể thì 'đứt gánh giữa đường'.

Và thế là, tôi quyết định thử nghiệm hai phương pháp: một là dùng quy tắc cứng nhắc, hai là dùng trí tuệ nhân tạo dựa trên LLM như LLaMA 3, hy vọng tìm ra cách tối ưu để tự động hóa, giảm thiểu công sức bảo trì.

Phần 1: Xây dựng hệ thống theo quy tắc - Rules-Based Approach


Trong phương pháp này, tôi bắt đầu bằng việc tạo ra các quy tắc regex đơn giản, dựa trên kiến thức về layout phổ biến của các mẫu hợp đồng. Ví dụ, để lấy số PO, tôi sẽ tìm kiếm các cụm từ như "PO Number:", "Order ID:", hoặc "Mã đơn hàng" cùng với biểu thức regex phù hợp.

Điều này nghe có vẻ dễ dàng, đúng không? Nhưng thực tế, nó chỉ ổn định khi layout không thay đổi hoặc các khách hàng tuân theo chuẩn mực rõ ràng. Chẳng hạn, nếu một khách hàng viết "Mã PO" thay vì "PO Number" hay đặt vị trí khác, hệ thống của bạn sẽ không nhận diện được.

Ngoài ra, việc viết regex cho từng trường, từng layout sẽ nhanh chóng trở thành một đống code lằng nhằng, khó bảo trì. Điều đặc biệt, khi số lượng khách hàng và mẫu biểu tăng lên, việc cập nhật các quy tắc này trở thành cực hình.

Tuy nhiên, lợi thế của phương pháp này là rõ ràng: nhanh, trực quan, dễ hiểu. Khi hệ thống có độ ổn định cao, regex có thể xử lý nhanh và chính xác. Nhưng đó chỉ là câu chuyện của những layout đồng bộ, ít biến đổi.

Phần 2: Sử dụng LLM - Trí tuệ nhân tạo linh hoạt


Chuyển sang phương pháp dùng LLM, tôi tích hợp các mô hình như LLaMA 3 qua Ollama và một số công cụ khác. Thay vì cố gắng định nghĩa tất cả quy tắc, tôi chỉ cần cung cấp một prompt phù hợp để mô hình hiểu rõ ý nghĩa của từng trường dữ liệu.

Ví dụ, thay vì viết regex, tôi sẽ hỏi mô hình: "Hãy xác định mã đơn hàng trong đoạn văn này" hoặc "Dựa vào nội dung, hãy lấy ngày giao hàng". Mô hình sẽ phân tích ngữ cảnh, tìm kiếm thông tin phù hợp dù vị trí hay tên gọi có khác nhau.

Điều thú vị là, LLM không bị giới hạn bởi layout cố định, nó có thể xử lý các biến thể linh hoạt hơn. Trong thực tế, tôi thấy rõ rằng, khi layout thay đổi nhiều, phương pháp này vẫn duy trì độ chính xác tốt hơn hẳn. Nhưng tất nhiên, nó đòi hỏi chi phí tính toán lớn hơn, và cần có khả năng tinh chỉnh, kiểm soát output.

Ngoài ra, LLM còn giúp giảm thiểu sự bảo trì của hệ thống. Thay vì phải viết lại regex, chỉ cần cập nhật prompt hoặc mô hình, là có thể thích ứng nhanh với thay đổi mới.

Phần 3: Khi nào nên dùng Rule và khi nào nên dùng LLM?


Đây là câu hỏi lớn mà nhiều nhà phát triển đều tự hỏi. Rule-based phù hợp trong các trường hợp có layout chuẩn rõ ràng, tần suất thay đổi thấp, và yêu cầu xử lý nhanh, ít tốn chi phí.

Ngược lại, LLM phù hợp khi dữ liệu đa dạng, layout biến đổi liên tục, hoặc khi cần độ linh hoạt cao, ít sự can thiệp thủ công. Đặc biệt trong các doanh nghiệp Việt Nam, nơi các biểu mẫu thường không đồng nhất, sử dụng LLM có thể giúp giảm thời gian bảo trì, nâng cao hiệu quả.

Tuy nhiên, không có giải pháp nào hoàn hảo tuyệt đối. Trong nhiều trường hợp, kết hợp cả hai phương pháp là lựa chọn tối ưu: dùng rule để xử lý các mẫu cố định, dùng LLM để xử lý phần phức tạp, biến thiên.

Phần 4: Góc nhìn cá nhân và kết luận


Sau trải nghiệm thực tế, tôi nhận thấy rằng, câu chuyện không phải là LLM hay rule, mà là phù hợp với mục đích và ngân sách của doanh nghiệp. Trong môi trường Việt Nam, nơi các biểu mẫu đa dạng, sự linh hoạt của LLM thật sự là cứu cánh, giúp giảm bớt gánh nặng bảo trì và nâng cao độ chính xác.

Tuy nhiên, cũng cần nhớ rằng, AI không phải là thần thánh, nó cần dữ liệu tốt, prompt rõ ràng và kiểm soát cẩn thận. Đối với những hệ thống nhỏ, chuẩn, rule vẫn là lựa chọn tối ưu. Còn đại trà, biến đổi liên tục, AI mới là tương lai.

Cuối cùng, tôi nghĩ rằng, để làm tốt việc trích xuất dữ liệu từ PDF, các developer Việt Nam nên học cách kết hợp các phương pháp, tận dụng sức mạnh của AI để không bị tụt hậu trong cuộc đua công nghệ hiện nay.