Atlas · Công nghệ AI

Cross-encoder là gì — mô hình đọc đồng thời câu hỏi và tài liệu để chấm độ khớp chính xác

Một hệ thống tìm kiếm tài liệu thường lọc thô ra hàng chục ứng viên rồi vẫn để lẫn đoạn gần đúng. Muốn chọn đúng đoạn trả lời câu hỏi, cần một mô hình đọc kỹ từng cặp câu hỏi và đoạn rồi chấm điểm độ khớp. Cross-encoder làm đúng việc đó: đọc đồng thời cả hai bên nên chấm rất chính xác, nhưng chậm nên chỉ dùng cho ít ứng viên sau khi đã lọc thô. Hiểu khái niệm này giúp doanh nghiệp biết vì sao trả lời của AI trúng hay trật phụ thuộc vào bước chấm khớp cuối. Bài này giải cho chủ doanh nghiệp và người quyết.

Sơ đồ cross-encoder do MONA minh hoạ: một mô hình đọc đồng thời câu hỏi và một đoạn tài liệu rồi chấm điểm độ khớp để chọn đoạn đúng nhất ở bước rerank
Cross-encoder đọc đồng thời cả câu hỏi và một đoạn tài liệu rồi chấm điểm độ khớp rất chính xác, dùng ở bước rerank để chọn đoạn đúng nhất.

Cross-encoder là gì — và vì sao bài này đáng đọc

Trong 30 giây. Cross-encoder là mô hình đọc đồng thời cả câu hỏi và một đoạn tài liệu rồi chấm một điểm độ khớp rất chính xác. Nó dùng ở bước rerank để chọn đoạn đúng nhất. Vì đọc kỹ cả hai bên cùng lúc nên chậm, chỉ dùng cho ít ứng viên sau khi đã lọc thô.

Bài này dành cho chủ doanh nghiệp và người quyết. Cross-encoder được giải bằng ẩn dụ dễ hiểu, kèm khác cách mã hoá riêng từng bên, cơ chế và cách dùng đúng.

Vì sao đáng quan tâm: đây là mắt xích quyết định AI trả lời trúng hay trật. Lọc thô đưa ra danh sách gần đúng, còn cross-encoder mới là khâu chấm tinh chọn đoạn đúng nhất để mô hình dựa vào.

Ẩn dụ dễ hiểu: giám khảo đọc kỹ vs chấm vội qua loa

Hình dung một kỳ chấm bài. Có giám khảo đọc lướt, chỉ liếc qua bài làm rồi đoán điểm theo cảm giác, nhanh nhưng dễ trật. Có giám khảo khác đặt đề bài và bài làm cạnh nhau, đọc kỹ từng dòng để xem bài có thật sự trả lời đúng câu hỏi không rồi mới cho điểm.

Lọc thô là giám khảo chấm vội qua loa: nhanh, đủ để gạt phần lạc đề, nhưng không phân biệt được các bài gần giống nhau. Cross-encoder là giám khảo đọc kỹ cùng lúc cả đề bài và bài làm.

Vì đọc kỹ cả hai bên một lượt nên cross-encoder chấm rất sát, nhưng tốn thời gian. Cross-encoder là giám khảo đọc kỹ từng cặp câu hỏi và đoạn, nên chỉ dùng cho ít ứng viên đã qua vòng loại, không dùng cho cả kho.

Cross-encoder dưới góc kỹ thuật: so với bi-encoder

Có hai cách để máy đo độ khớp giữa câu hỏi và một đoạn tài liệu. Cách mã hoá riêng từng bên gọi là bi-encoder, cách đọc chung cả hai bên gọi là cross-encoder.

  • Bi-encoder. Mã hoá câu hỏi và mỗi đoạn thành embedding riêng, rồi đo khoảng cách giữa hai vector. Mã hoá đoạn được làm trước và lưu sẵn, nên truy vấn rất nhanh, hợp lọc thô trên cả kho.
  • Cross-encoder. Ghép câu hỏi và một đoạn vào cùng một lần đọc, mô hình cân nhắc tương quan từng phần rồi cho ra một điểm khớp. Chính xác hơn nhiều nhưng phải chạy lại cho mỗi cặp, không lưu trước được.

Khác biệt cốt lõi: bi-encoder mã hoá hai bên tách rời nên nhanh và mở rộng tốt; cross-encoder đọc hai bên cùng lúc nên chấm sát nhưng tốn sức. Vì vậy hai mô hình bổ sung cho nhau trong một dây chuyền chứ không loại trừ nhau.

Vì sao chủ doanh nghiệp nên biết cross-encoder

Sơ đồ lợi ích cross-encoder với doanh nghiệp của MONA: trả lời trúng hơn, ít trích sai, tin được câu trả lời, giảm khiếu nại, tối ưu chi phí, kiểm soát chất lượng
Cross-encoder mang lại: AI trả lời trúng hơn, ít trích sai nguồn, câu trả lời đáng tin, giảm khiếu nại, tối ưu chi phí và kiểm soát được chất lượng.
  • Trả lời trúng hơn. Chọn đúng đoạn nhất nên câu trả lời sát câu hỏi thực.
  • Ít trích sai nguồn. Loại các đoạn gần đúng dễ làm AI dẫn nhầm.
  • Câu trả lời đáng tin. Dựa trên đoạn đúng nên nội dung vững hơn.
  • Giảm khiếu nại. Khách ít gặp câu trả lời lạc, ngờ vực giảm theo.
  • Kiểm soát chi phí. Chỉ chấm tinh ít ứng viên nên không đội tài nguyên.

Cross-encoder là khâu nâng chất lượng câu trả lời cuối, đặc biệt trong hệ RAG tra cứu tài liệu nội bộ. Lọc thô lo phủ rộng, cross-encoder lo chọn đúng.

Cơ chế: từ danh sách ứng viên tới đoạn đúng nhất

Sơ đồ kiến trúc cross-encoder của MONA: câu hỏi và một đoạn được đọc đồng thời, mô hình chấm điểm độ khớp rồi sắp lại thứ tự ứng viên
Đường đi: ghép câu hỏi với từng đoạn ứng viên → mô hình đọc đồng thời và chấm điểm khớp → sắp lại thứ tự → giữ vài đoạn điểm cao nhất.

Một lượt cross-encoder ở bước rerank đi qua bốn nhịp:

  • Nhận ứng viên. Lấy vài chục đoạn mà bước lọc thô đã trả về.
  • Ghép từng cặp. Đặt câu hỏi cạnh từng đoạn để mô hình đọc cùng lúc.
  • Chấm điểm khớp. Mô hình cân nhắc tương quan rồi cho mỗi cặp một điểm.
  • Sắp lại thứ tự. Xếp theo điểm và giữ vài đoạn cao nhất cho mô hình trả lời.

Điểm cốt lõi: cross-encoder không thay bước lọc thô mà đứng sau nó. Lọc thô thu cả kho về vài chục ứng viên, cross-encoder chỉ chấm tinh trong số ít đó, nên vừa chính xác vừa không quá chậm.

Ví dụ chạy thật: chọn đúng đoạn trong sổ tay nội bộ

Nhật ký minh hoạ của MONA: một câu hỏi của khách được lọc thô ra nhiều đoạn rồi cross-encoder chấm điểm và chọn đoạn đúng chính sách
Nhật ký mô phỏng: câu hỏi của khách được lọc thô ra nhiều đoạn, cross-encoder chấm điểm từng cặp rồi chọn đúng đoạn nói trúng chính sách.

Giả sử khách hỏi về điều kiện đổi trả trong một sổ tay nội bộ dài. Bước lọc thô bằng bi-encoder trả về hai chục đoạn nhắc tới đổi trả, trong đó có đoạn nói về phí, đoạn nói về thời hạn, đoạn nói về sản phẩm không áp dụng.

Nếu dừng ở lọc thô, AI dễ lấy nhầm đoạn nói phí trong khi khách hỏi thời hạn. Cross-encoder đọc kỹ từng cặp câu hỏi và đoạn, chấm cao cho đoạn nói đúng thời hạn đổi trả, hạ điểm các đoạn lạc ý.

Kết quả là mô hình trả lời dựa trên đúng đoạn về thời hạn, không lẫn sang phí hay ngoại lệ. Đó là cách cross-encoder biến một danh sách gần đúng thành câu trả lời trúng.

So sánh: bi-encoder lọc thô vs cross-encoder chấm tinh

Bảng so sánh bi-encoder lọc thô và cross-encoder chấm tinh của MONA: từ phủ rộng nhanh sang chọn đúng chính xác trong vài ứng viên
Khác biệt: bi-encoder lọc thô phủ rộng cả kho rất nhanh; cross-encoder chấm tinh đọc kỹ từng cặp để chọn đúng, chỉ dùng cho ít ứng viên.

Hai mô hình phục vụ hai vai khác nhau trong cùng một dây chuyền:

Tiêu chíBi-encoder (lọc thô)Cross-encoder (chấm tinh)
Cách đọcMã hoá riêng từng bênĐọc đồng thời cả cặp
Độ chính xácĐủ để gạt phần lạcChấm sát, phân biệt được đoạn gần giống
Tốc độRất nhanh, lưu sẵn embeddingChậm, chạy lại từng cặp
Quy mô xử lýCả kho hàng nghìn đoạnVài chục ứng viên đã lọc
Vai tròVòng loại phủ rộngChấm chung kết chọn đúng

Không phải chọn một bỏ một. Bi-encoder lo phủ rộng nhanh, cross-encoder lo chọn đúng chính xác. Một hệ tốt dùng cả hai theo thứ tự để cân tốc độ và độ trúng.

Trục đánh đổi: chính xác và tốc độ

Biểu đồ trục đánh đổi của cross-encoder do MONA minh hoạ: chấm càng kỹ càng trúng nhưng càng chậm nên giới hạn số ứng viên
Trục đánh đổi: cross-encoder chấm càng kỹ càng trúng nhưng càng chậm; vì vậy chỉ chấm trên ít ứng viên đã qua lọc thô để giữ tốc độ.

Đưa cross-encoder vào dây chuyền cần cân vài điểm:

  • Độ chính xác. Đọc kỹ từng cặp nên chấm rất sát, vượt xa lọc thô.
  • Tốc độ và chi phí. Chạy lại cho mỗi cặp nên tốn tài nguyên, tăng theo số ứng viên.
  • Số ứng viên chấm. Chấm càng nhiều càng chậm, cần giới hạn ở vài chục đoạn.

Cách làm đúng là để lọc thô thu cả kho về một danh sách ngắn, rồi chỉ cho cross-encoder chấm trong danh sách đó. Như vậy giữ được độ trúng cao mà không phải trả giá tốc độ trên toàn kho.

Đi sâu một nhịp: vị trí cross-encoder trong dây chuyền hai vòng

Một hệ tìm kiếm phục vụ AI thường chia thành hai vòng, mỗi vòng một loại mô hình theo đúng thế mạnh:

VòngMô hình dùngViệc làmPhạm vi
Vòng 1 — lọc thôBi-encoder trên vector databaseThu cả kho về vài chục ứng viên gần đúngHàng nghìn tới hàng triệu đoạn
Vòng 2 — chấm tinhCross-encoder rerankĐọc kỹ từng cặp, sắp lại, giữ vài đoạn đúng nhấtVài chục ứng viên đã lọc

Vòng 1 có thể kết hợp semantic search với khớp từ khoá thành hybrid search để phủ rộng hơn. Cross-encoder luôn đứng ở vòng 2, sau khi danh sách đã đủ ngắn để chấm kỹ mà không quá chậm. Đây cũng là lý do cross-encoder gắn liền với khái niệm rerank.

Những hiểu nhầm thường gặp về cross-encoder

  • Tưởng cross-encoder thay được lọc thô. Chạy nó trên cả kho sẽ chậm không chịu nổi, nó chỉ dành cho ít ứng viên.
  • Tưởng nó dùng embedding để so vector. Cross-encoder đọc chung cả cặp và cho một điểm, không tạo vector riêng từng bên như bi-encoder.
  • Tưởng cứ thêm vào là trả lời tốt hẳn. Nếu lọc thô đã bỏ sót đoạn đúng, cross-encoder không thể vớt lại đoạn không có trong danh sách.
  • Tưởng chấm càng nhiều ứng viên càng tốt. Chấm nhiều làm chậm và tốn, cần giới hạn số ứng viên hợp lý.
  • Tưởng nó tự sinh câu trả lời. Cross-encoder chỉ chấm và sắp thứ tự đoạn, việc viết câu trả lời vẫn là của mô hình ngôn ngữ.

Phần lớn lỗi đến từ đặt cross-encoder sai chỗ trong dây chuyền. Nó là khâu chấm tinh sau lọc thô, không phải công cụ tìm kiếm trên cả kho và cũng không phải bộ sinh câu trả lời.

Góc thực chiến MONA khi dùng cross-encoder

Lộ trình dùng cross-encoder của MONA: lọc thô phủ rộng, chấm tinh chọn đúng, giới hạn số ứng viên, đo độ trúng rồi tinh chỉnh
Lộ trình MONA: lọc thô phủ rộng → cross-encoder chấm tinh chọn đúng → giới hạn số ứng viên theo tốc độ → đo độ trúng và tinh chỉnh.

MONA dùng cross-encoder như khâu chấm tinh trong dây chuyền tìm kiếm phục vụ AI:

  • Lọc thô phủ rộng. Dùng bi-encoder trên kho để thu danh sách ứng viên đủ rộng.
  • Chấm tinh chọn đúng. Cho cross-encoder chấm từng cặp để giữ đoạn đúng nhất.
  • Giới hạn số ứng viên. Cân số đoạn chấm theo tốc độ và chi phí thực tế.
  • Đo độ trúng và tinh chỉnh. Theo dõi câu trả lời đúng để điều chỉnh ngưỡng và số đoạn giữ lại.

Tài liệu đưa vào dây chuyền có thể chứa thông tin cá nhân của khách. MONA tuân thủ nguyên tắc dữ liệu theo Nghị định 13/2023 trong cả luồng lọc, chấm và trả lời, không để dữ liệu rò ra ngoài phạm vi xử lý.

Khi nào doanh nghiệp cần cross-encoder

Cross-encoder cần khi độ trúng của câu trả lời quan trọng và lọc thô chưa đủ chính xác:

  • Tra cứu tài liệu nội bộ. Sổ tay, chính sách, quy trình dài có nhiều đoạn gần giống nhau.
  • Trợ lý trả lời khách. Câu trả lời sai nguồn gây khiếu nại nên cần chọn đúng đoạn.
  • Kho lớn nhiều đoạn dễ lẫn. Lọc thô trả về nhiều ứng viên gần đúng cần chấm lại.
  • Yêu cầu dẫn nguồn chính xác. Lĩnh vực cần trích đúng câu, đúng điều khoản.

Khi kho nhỏ và câu hỏi đơn giản, lọc thô có thể đủ. Khi tài liệu nhiều, dễ lẫn và độ trúng quan trọng, cross-encoder ở bước rerank là khâu đáng thêm vào.

Khi nào nên để MONA đồng hành

Cross-encoder dễ hiểu nhưng đặt đúng chỗ trong dây chuyền và cân tốc độ với độ trúng cần kinh nghiệm. Doanh nghiệp nên cân nhắc MONA khi:

  • Muốn AI tra cứu tài liệu nội bộ và trả lời trúng đúng đoạn, không lẫn nguồn.
  • Cần dây chuyền lọc thô rồi chấm tinh được thiết kế khớp dữ liệu thực tế.
  • Cần cân số ứng viên chấm để vừa nhanh vừa đủ chính xác cho khách.
  • Muốn đo được độ trúng câu trả lời và tinh chỉnh theo phản hồi thật.

MONA thiết kế dây chuyền tìm kiếm và chấm khớp nối vào hệ thống doanh nghiệp có kiểm soát. Tham khảo Sale AI cho trợ lý trả lời khách dựa trên tài liệu, LMS AI cho tra cứu nội dung học liệu trúng đúng đoạn.

Câu hỏi thường gặp

Cross-encoder là gì một cách ngắn gọn?
Cross-encoder là mô hình đọc đồng thời cả câu hỏi và một đoạn tài liệu rồi chấm một điểm độ khớp rất chính xác. Nó dùng ở bước rerank để chọn đoạn đúng nhất, chậm nên chỉ dùng cho ít ứng viên.
Cross-encoder khác bi-encoder ở đâu?
Bi-encoder mã hoá câu hỏi và mỗi đoạn thành vector riêng rồi đo khoảng cách, nhanh và hợp lọc thô cả kho. Cross-encoder đọc chung cả cặp rồi cho một điểm khớp, chính xác hơn nhưng chậm hơn.
Vì sao cross-encoder chậm hơn bi-encoder?
Bi-encoder mã hoá đoạn trước và lưu sẵn nên truy vấn rất nhanh. Cross-encoder phải đọc lại cả cặp câu hỏi và đoạn cho từng ứng viên, không lưu trước được, nên tốn tài nguyên hơn nhiều.
Cross-encoder có thay được bước lọc thô không?
Không. Chạy cross-encoder trên cả kho sẽ chậm không chịu nổi. Nó chỉ chấm tinh trên vài chục ứng viên mà bước lọc thô bằng bi-encoder đã trả về.
Cross-encoder và rerank liên quan gì nhau?
Rerank là bước sắp lại thứ tự ứng viên để chọn đoạn đúng nhất. Cross-encoder chính là mô hình hay dùng để chấm điểm ở bước rerank đó, nhờ đọc kỹ từng cặp câu hỏi và đoạn.
Có phải cứ thêm cross-encoder là trả lời tốt hẳn không?
Không hẳn. Nếu bước lọc thô đã bỏ sót đoạn đúng, cross-encoder không vớt lại được đoạn không có trong danh sách. Phải làm tốt cả lọc thô lẫn chấm tinh.
MONA hỗ trợ gì về cross-encoder?
MONA thiết kế dây chuyền lọc thô rồi cross-encoder chấm tinh khớp dữ liệu thực tế, cân số ứng viên theo tốc độ, đo độ trúng và tuân thủ Nghị định 13/2023 trong cả luồng xử lý.

Trải nghiệm thật

MONA Sale AI → Trợ lý trả lời khách dựa trên tài liệu, chọn đúng đoạn MONA LMS AI → Tra cứu học liệu trúng đúng đoạn cho người học

Nguồn tham khảo

  • [object Object]
  • [object Object]
  • [object Object]
  • [object Object]
  • [object Object]

Hệ sinh thái MONA

MONA Software xây phần mềm theo yêu cầu và sản phẩm AI cho doanh nghiệp. Trong cùng hệ sinh thái MONA Group: mona.media phụ trách thiết kế websitedịch vụ SEO tổng thể; mona.host lo hosting, VPS, domain.