paint-brush
Cách sử dụng GPT-4 để trích xuất dữ liệu PDF: Hướng dẫn toàn diệntừ tác giả@docsumo
27,145 lượt đọc
27,145 lượt đọc

Cách sử dụng GPT-4 để trích xuất dữ liệu PDF: Hướng dẫn toàn diện

từ tác giả Docsumo6m2023/05/30
Read on Terminal Reader

dài quá đọc không nổi

Trích xuất PDF là quá trình trích xuất văn bản, hình ảnh hoặc dữ liệu khác từ tệp PDF. Trong bài viết này, chúng tôi khám phá các phương pháp trích xuất dữ liệu PDF hiện tại, những hạn chế của chúng và cách GPT-4 có thể được sử dụng để thực hiện các tác vụ trả lời câu hỏi đối với việc trích xuất PDF. Chúng tôi cũng cung cấp hướng dẫn từng bước để triển khai G PT-4 để trích xuất PDFData.
featured image - Cách sử dụng GPT-4 để trích xuất dữ liệu PDF: Hướng dẫn toàn diện
Docsumo HackerNoon profile picture
0-item
1-item

Trích xuất PDF là quá trình trích xuất văn bản, hình ảnh hoặc dữ liệu khác từ tệp PDF. Trong bài viết này, chúng tôi khám phá các phương pháp trích xuất dữ liệu PDF hiện tại, những hạn chế của chúng và cách GPT-4 có thể được sử dụng để thực hiện các tác vụ trả lời câu hỏi đối với việc trích xuất PDF. Chúng tôi cũng cung cấp hướng dẫn từng bước để triển khai GPT-4 cho trích xuất dữ liệu PDF .


Trong bài viết này, chúng tôi thảo luận về:

  • Các phương pháp trích xuất dữ liệu PDF hiện tại và những hạn chế của chúng là gì?
  • Cách sử dụng GPT-4 để truy vấn một tập hợp các tệp PDF và tìm câu trả lời cho bất kỳ câu hỏi nào. Cụ thể, chúng ta sẽ khám phá quy trình trích xuất PDF và cách nó có thể được sử dụng cùng với GPT-4 để thực hiện các tác vụ trả lời câu hỏi.


Vì vậy, chúng ta hãy nhảy ngay vào nó.


Trích xuất PDF là gì?

Trích xuất dữ liệu PDF là quá trình trích xuất văn bản, hình ảnh hoặc dữ liệu khác từ tệp PDF (Định dạng Tài liệu Di động). Các tệp này được sử dụng rộng rãi để chia sẻ và lưu trữ tài liệu, nhưng nội dung của chúng không phải lúc nào cũng dễ dàng truy cập được.


Tại sao trích xuất PDF lại quan trọng?

Khả năng truy cập và khả năng đọc của tệp PDF là rất cần thiết đối với những người có vấn đề về thị lực hoặc gặp khó khăn khi đọc văn bản nhỏ hoặc mờ, hữu ích cho các tình huống pháp lý, phân tích dữ liệu và nghiên cứu. Một số trường hợp yêu cầu trích xuất bao gồm sử dụng nội dung văn bản hoặc hình ảnh từ tệp PDF trong các tài liệu khác để tiết kiệm thời gian và tránh nhầm lẫn.


Các phương pháp hiện tại để trích xuất dữ liệu PDF và những hạn chế của chúng là gì?

Bây giờ là năm 2023 và có rất nhiều công cụ và kỹ thuật trích xuất PDF có sẵn trên internet. Hãy tìm hiểu sâu hơn về 3 kỹ thuật trích xuất dữ liệu phổ biến và một số ví dụ tương tự:


1 : Kỹ thuật OCR

OCR hoặc viết tắt của Optical Character Recognition có thể được sử dụng để trích xuất văn bản từ nhiều nguồn khác nhau, bao gồm tài liệu được quét, hình ảnh và tệp PDF và thường được sử dụng để số hóa các tài liệu in như sách, báo và tài liệu lịch sử.

Một số công cụ OCR phổ biến bao gồm:



2 : Mẫu

Các kỹ thuật dựa trên mẫu có tính đến phong cách của tài liệu PDF và sử dụng các quy tắc được mã hóa cứng. Các kỹ thuật này thường hoạt động trên các tài liệu có cấu trúc, có cấu trúc không đổi và dễ hiểu.


Một số kỹ thuật dựa trên mẫu phổ biến bao gồm:

  • Sử dụng mẫu regex

    Ví dụ: ngày có thể được trích xuất theo quy tắc regex sau:

    [dd-mm-yyyy hoặc yyyy-mm-dd] - [0-9]{2,4}/[0-9]{2}/[0-9]{2,4}

  • Quy tắc mã hóa cứng dựa trên vị trí của văn bản và kích thước của tài liệu


3: Kỹ thuật học máy

Các kỹ thuật Machine Learning (ML) được coi là một trong những phương pháp tốt nhất để trích xuất PDF vì nó cho phép nhận dạng văn bản và trích xuất chính xác cao từ các tệp PDF bất kể cấu trúc tệp. Các mô hình này có thể lưu trữ thông tin về cả layoutposition of the text , đồng thời ghi nhớ văn bản lân cận. Điều này giúp họ khái quát tốt hơn và học cấu trúc tài liệu hiệu quả hơn.


LLM là gì

Mô hình ngôn ngữ lớn là một tập hợp con của trí tuệ nhân tạo đã được đào tạo trên lượng lớn dữ liệu văn bản. Ví dụ: ChatGPT được đào tạo trên toàn bộ dữ liệu và thông tin trên internet để tạo ra các phản hồi giống như con người đối với cuộc đối thoại hoặc các đầu vào ngôn ngữ tự nhiên khác.

Để tạo ra các phản hồi bằng ngôn ngữ tự nhiên này, các LLM sử dụng các mô hình học sâu, sử dụng các mạng thần kinh nhiều lớp để xử lý, phân tích và đưa ra dự đoán với dữ liệu phức tạp.


Một số mô hình ML phổ biến bao gồm:

  • Bố cục các mô hình LM v1, v2 và v3 [ Github ]
  • DocBERT [ Github ]


Hạn chế của các mô hình ML

Một vấn đề chính mà loại mô hình này gặp phải là họ chỉ có thể trích xuất thông tin từ PDF mà không biết liệu việc trích xuất có thực sự chính xác hay không. Các văn bản được trích xuất cũng có thể bao gồm một số thông tin khóa khác trong một khóa khác. Có một bối cảnh thông minh giúp mô hình giảm thiểu những điểm không chính xác đó.


Để giải quyết vấn đề này và tích hợp trí thông minh vào hệ thống trích xuất PDF, chúng ta có thể tận dụng sức mạnh của GPT-4.


GPT-4 và ChatGPT là gì?

GPT-4 (Generative Pre-training Transformer 4) là một mô hình ngôn ngữ lớn do OpenAI phát triển, sử dụng các kỹ thuật học sâu để tạo văn bản ngôn ngữ tự nhiên giống con người. Đây là một trong những mô hình ngôn ngữ lớn nhất và mạnh nhất hiện có, với 175 tỷ tham số.

Mặt khác, Chat-GPT là một biến thể của GPT đã được đào tạo riêng cho các ứng dụng AI đàm thoại. Nó đã được tinh chỉnh trên một tập dữ liệu lớn về dữ liệu hội thoại và có thể tạo phản hồi giống như con người đối với các truy vấn của người dùng. Trò chuyện GPT có thể được sử dụng cho nhiều ứng dụng, bao gồm chatbot, dịch vụ khách hàng và trợ lý ảo.


Hãy tiếp tục với tuyên bố vấn đề và xem xét cách GPT-4 cùng với ChatGPT có thể giúp chúng tôi giải quyết vấn đề trích xuất PDF.


Báo cáo vấn đề

Thách thức trong việc trích xuất thông tin cụ thể một cách hiệu quả từ tập hợp các tệp PDF là thách thức mà nhiều ứng dụng và ngành công nghiệp thường xuyên gặp phải. Trích xuất thông tin từ báo cáo ngân hàng hoặc biểu mẫu thuế là khó khăn. Cách cũ là quét thủ công qua nhiều tệp PDF mất nhiều thời gian và có thể tạo ra dữ liệu không chính xác hoặc không nhất quán. Ngoài ra, dữ liệu phi cấu trúc được tìm thấy trong các tệp PDF khiến các hệ thống tự động gặp khó khăn trong việc trích xuất thông tin cần thiết.


Chúng tôi dự định giải quyết vấn đề tìm câu trả lời cho câu hỏi của người dùng từ PDF mà không cần can thiệp thủ công.


Giải pháp

Chúng tôi có thể sử dụng GPT-4 và các phần mềm nhúng của nó để tạo lợi thế cho mình:


  1. Tạo nhúng tài liệu cũng như nhúng cho các truy vấn của người dùng.
  2. Xác định tài liệu gần nhất với truy vấn của người dùng và có thể chứa các câu trả lời bằng bất kỳ phương pháp tương tự nào (ví dụ: điểm cosine), sau đó,
  3. Cung cấp tài liệu và truy vấn của người dùng cho GPT-4 để khám phá câu trả lời chính xác.

Thực hiện


Bước 1: Phân tích cú pháp PDF

A: Trích xuất văn bản từ PDF

Bạn có thể sử dụng bất kỳ kỹ thuật OCR hoặc ML nào để trích xuất văn bản từ tài liệu


B: Chia văn bản thành các phần nhỏ hơn phù hợp dựa trên cấu trúc của tài liệu

Sử dụng thông tin tọa độ của Bounding-Box [x0, y0, x2, y2] trong đó x0 và y0 là tọa độ trên cùng bên trái và x2 và y2 là tọa độ dưới cùng bên phải, bạn có thể chia toàn bộ văn bản thành các đoạn nhỏ hơn có chiều rộng nhất định và chiều cao.


C: Mã hóa các khối đó thành Nhúng [hoặc sử dụng Nhúng OpenAI hoặc HuggingFace ]


 import torch from transformers import AutoTokenizer, AutoModel # Load the pre-trained model and tokenizer tokenizer = AutoTokenizer.from_pretrained('bert-base-uncased') model = AutoModel.from_pretrained('bert-base-uncased') # Tokenize the sentence tokens = tokenizer.encode("<pass your code chunk block here>", return_tensors='pt') # Get the embeddings with torch.no_grad(): outputs = model(tokens) embeddings = outputs[0][0] # Print the embeddings print(embeddings)


Bước 2: Lưu trữ các nhúng vector trong Cơ sở dữ liệu Vector

Vector DB là gì và tại sao lại cần thiết?

  • Cơ sở dữ liệu vectơ là DB được xây dựng có mục đích để xử lý cấu trúc độc đáo của nhúng vectơ. Chúng lập chỉ mục các vectơ để dễ dàng tìm kiếm và truy xuất bằng cách so sánh các giá trị và tìm những giá trị giống nhau nhất. Ví dụ bao gồm Pinecone và Weaviate.
  • V-DB này chứa các vectơ của từng đoạn mã và chính tài liệu đó


Bước 3: Tìm kiếm đoạn trích có liên quan đến truy vấn đầu vào

A: Tính toán nhúng cho truy vấn của người dùng

Sử dụng kỹ thuật tương tự như đã đề cập ở trên để tính toán các phần nhúng


B: Tìm kiếm vectơ nhúng chunk từ cơ sở dữ liệu vectơ có phần nhúng phù hợp chặt chẽ với phần nhúng của truy vấn người dùng

Bạn có thể sử dụng bất kỳ similarity search algorithm .

Bạn có thể sử dụng tính tương tự của câu ngữ nghĩa của thư viện biến câu.

 from sentence_transformers import SentenceTransformer, util #Compute cosine-similarities for each code chunk embds with user's query embeddings cosine_scores = util.cos_sim(code_chunk_embds, user_query_embds)


Bước 4 : Hỏi GPT-4 để có câu trả lời dựa trên đoạn mã đoạn mã được cung cấp và truy vấn của người dùng

A: Cung cấp 3 đầu vào.

Đầu vào1: Truy vấn người dùng

Đầu vào2 : Đoạn gần giống với truy vấn

Đầu vào3: Một số Chỉ dẫn Meta nếu có [ Hệ thống: Chỉ trả lời các câu hỏi dựa trên thông tin được cung cấp trong tài liệu ]


B: Đầu ra GPT-4 là câu trả lời


Lợi ích của việc sử dụng API GPT4 & ChatGPT?

Như chúng ta đã biết vì GPT4 là một LLM mạnh mẽ có thể kết hợp một lượng lớn ngữ cảnh với độ dài mã thông báo là 8.192 và 32.768 mã thông báo, nên việc tạo ra kết quả rất chính xác trở nên dễ dàng và rất nhanh chóng.


API ChatGPT tích hợp liền mạch với bất kỳ ngôn ngữ lập trình nào có thể giúp chúng tôi nhiều hơn trong các tác vụ hạ nguồn.


Chúng ta đã học được gì?

  • Chúng tôi đã tìm hiểu về các công cụ và kỹ thuật trích xuất dữ liệu và PDF khác nhau
  • Những hạn chế của các loại mô-đun và mô hình này là gì
  • ChatGPT và GPT-4 hữu ích như thế nào trong trường hợp sử dụng của chúng tôi và cách chúng có thể được sử dụng để giải quyết vấn đề trích xuất dữ liệu từ PDF