Mặc dù mô hình embedding ngữ cảnh dài có thể xử lý mọi thứ, bài viết vẫn bàn về việc chiến lược chunking có còn hữu ích hay không, đồng thời so sánh và phân tích nhiều chiến lược chunking khác nhau để tìm ra cách tiếp cận tối ưu.
Embedding ngữ cảnh dài (Long Context Embedding)
- Đây là phương pháp dùng các mô hình như Jina Embeddings v3 để embedding văn bản dài tới 8.192 token thành một vector duy nhất.
- Cách này hữu ích để nắm bắt ngữ cảnh của toàn bộ tài liệu, nhưng khi tài liệu dài hơn, có thể phát sinh vấn đề mất mát thông tin và làm loãng biểu diễn.
- Phù hợp để xác định chủ đề chính của tài liệu, và hiệu quả khi truy vấn của người dùng liên quan đến nội dung tổng thể của tài liệu.
Chunking ngây thơ (Naive Chunking)
- Đây là cách chia văn bản theo kích thước cố định hoặc theo câu, rồi embedding từng chunk một cách độc lập.
- Nó giúp giảm bớt vấn đề làm loãng biểu diễn của embedding ngữ cảnh dài, đồng thời có lợi cho việc truy xuất thông tin cụ thể.
- Vì mỗi chunk bị mất thông tin ngữ cảnh của các chunk xung quanh, nên cách này không phù hợp với các tác vụ cần xem xét mối quan hệ giữa các chunk.
- Chi phí tính toán và lưu trữ có thể tăng lên.
Late Chunking
- Trước hết embedding toàn bộ tài liệu để tạo embedding ở mức token, sau đó tạo embedding cho từng chunk bằng cách lấy trung bình các embedding token theo ranh giới chunk được chia chi tiết.
- Cách này cho phép biểu diễn thông tin chi tiết ở cấp độ chunk trong khi vẫn giữ được ngữ cảnh của toàn bộ tài liệu.
- So với naive chunking, nó giải quyết vấn đề mất mát thông tin ngữ cảnh và mang lại hiệu năng truy xuất tốt hơn.
- Đặc biệt hiệu quả với kích thước chunk nhỏ, và hữu ích khi các phần khác nhau của tài liệu có mức độ liên quan cao với nhau.
- Tuy nhiên, nếu các phần của tài liệu ít liên quan với nhau, ngữ cảnh không cần thiết có thể trở thành nhiễu và làm giảm hiệu năng.
Ảnh hưởng của kích thước chunk
- Kích thước chunk có ảnh hưởng lớn đến hiệu năng truy xuất.
- Nhìn chung, late chunking cho hiệu năng tốt hơn naive chunking khi kích thước chunk nhỏ.
- Khi kích thước chunk tăng lên, hiệu năng của naive chunking có xu hướng cải thiện, trong khi hiệu năng của late chunking có thể giảm.
Kết luận
- Việc chọn giữa embedding ngữ cảnh dài, naive chunking hay late chunking phụ thuộc vào đặc tính dữ liệu và mục tiêu của tác vụ truy xuất.
- Embedding ngữ cảnh dài phù hợp với các tài liệu có tính nhất quán và các truy vấn tổng quát, trong khi chunking hữu ích khi người dùng muốn tìm thông tin cụ thể trong tài liệu.
- Late chunking hiệu quả khi cần duy trì tính nhất quán ngữ cảnh trong các phân đoạn nhỏ.
- Cần hiểu rõ dữ liệu và mục tiêu truy xuất, đồng thời cân nhắc độ chính xác, hiệu quả và mức độ liên quan về ngữ cảnh để chọn ra cách tiếp cận tối ưu.
Chưa có bình luận nào.