Công nghệ AI

Vector Embedding là gì? Cách AI hiểu nội dung ghi chú

Vector Embedding — công nghệ AI giúp máy tính hiểu ngữ nghĩa văn bản.

Vector Embedding là gì?

Vector Embedding là kỹ thuật biểu diễn dữ liệu (văn bản, hình ảnh, âm thanh) dưới dạng vector — một mảng các con số thực. Ý tưởng cốt lõi: những thứ có nghĩa tương tự nhau sẽ được biểu diễn bằng các vector "gần nhau" trong không gian toán học.

Ví dụ đơn giản: vector của từ "mèo" và "mèo con" sẽ gần nhau hơn vector của "mèo" và "xe hơi".

Cách tạo ra vector embedding

Các mô hình ngôn ngữ lớn (LLM) như BERT, Sentence Transformers được huấn luyện để tạo ra embedding có ý nghĩa từ văn bản. Quá trình huấn luyện dạy model cách "hiểu" ngữ nghĩa qua hàng tỷ ví dụ về văn bản.

LetMeNote dùng model embedding chuyên biệt để tạo vector 768 chiều cho mỗi ghi chú. Con số 768 là số lượng "tham số" trong vector — càng cao thì biểu diễn càng chi tiết.

pgvector — Lưu trữ và tìm kiếm vector

pgvector là extension của PostgreSQL cho phép lưu trữ vector và thực hiện tìm kiếm nearest-neighbor hiệu quả. LetMeNote dùng pgvector thông qua Supabase để:

  • Lưu vector embedding của mỗi ghi chú sau khi tạo
  • Khi tìm kiếm: tạo embedding cho câu tìm kiếm, so sánh với tất cả embedding trong database
  • Trả về những ghi chú có vector gần nhất (cosine similarity)

Tại sao 768 chiều?

768 chiều là kích thước phổ biến của nhiều model BERT-based. Đây là sự cân bằng tốt giữa chất lượng biểu diễn và hiệu suất tính toán — đủ chi tiết để phân biệt nghĩa, nhưng không quá nặng để xử lý nhanh.

Ứng dụng trong LetMeNote

Mỗi lần bạn tạo ghi chú mới, LetMeNote tự động tạo embedding và lưu vào Supabase. Khi tìm kiếm, hệ thống so sánh embedding của câu tìm với tất cả ghi chú và trả về kết quả liên quan nhất — ngay cả khi không khớp từ khóa. Tìm hiểu thêm về tìm kiếm ngữ nghĩa hoặc dùng thử LetMeNote.

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

Vector embedding có cần GPU không?

Tạo embedding cần tính toán nhất định nhưng không nhất thiết cần GPU. LetMeNote dùng API để tạo embedding trên server, người dùng không cần phần cứng đặc biệt.

Tại sao tìm kiếm có khi trả về kết quả không liên quan?

Embedding model có thể hiểu sai nghĩa trong một số trường hợp, đặc biệt với từ đa nghĩa hoặc tiếng lóng. LetMeNote kết hợp cả full-text search để giảm thiểu vấn đề này.

Dữ liệu embedding của tôi có bị chia sẻ không?

Không. Vector embedding được lưu riêng biệt cho từng tài khoản và không bao giờ được chia sẻ hay dùng để huấn luyện model.