Cơ sở dữ liệu vector cho hệ thống embedding

Nhập môn Embeddings với OpenAI API

Emmanuel Pire

Senior Software Engineer, DataCamp

Hạn chế của cách tiếp cận hiện tại

  • Nạp mọi embedding vào bộ nhớ (1536 số thực ~ 13kB/embedding)
  • Tính lại embedding cho mỗi truy vấn mới
  • Tính khoảng cách cosine cho mọi embedding và sắp xếp rất chậm, tăng tuyến tính

Sơ đồ cho thấy tài liệu và truy vấn được nhúng lại mỗi lần, không có giải pháp lưu trữ.

Nhập môn Embeddings với OpenAI API

Cơ sở dữ liệu vector

  • Tài liệu đã nhúng được lưu trữtruy vấn từ cơ sở dữ liệu vector

Sơ đồ cho thấy cách dùng cơ sở dữ liệu vector để lưu embedding tài liệu và trả kết quả dựa trên truy vấn đã nhúng cho người dùng.

Nhập môn Embeddings với OpenAI API

 

Cơ sở dữ liệu NoSQL
  • Cấu trúc linh hoạt hơn cho phép truy vấn nhanh hơn

Ví dụ lược đồ NoSQL: key:value, document, và graph.

 

Cơ sở dữ liệu SQL/Quan hệ
  • Dữ liệu có cấu trúc theo bảng, hàng và cột

Các bảng với cột và hàng trong cơ sở dữ liệu SQL/quan hệ.

Nhập môn Embeddings với OpenAI API

Thành phần cần lưu trữ

 

  • Embedding
  • Văn bản gốc
  • Metadata
    • ID và tham chiếu
    • Dữ liệu bổ sung để lọc kết quả

 

Mẹo: Không lưu văn bản gốc như metadata!

Biểu tượng cơ sở dữ liệu vector.

Nhập môn Embeddings với OpenAI API

Bức tranh cơ sở dữ liệu vector

Nhiều giải pháp cơ sở dữ liệu vector phổ biến, phân loại theo mã nguồn đóng/mở và chuyên dụng hay không.

1 Nguồn ảnh: Yingjun Wu
Nhập môn Embeddings với OpenAI API

Giải pháp nào phù hợp nhất?

 

  • Quản trị cơ sở dữ liệu:
    • Dịch vụ quản lý → tốn kém hơn nhưng giảm khối lượng công việc
    • Tự quản lý → rẻ hơn nhưng cần thời gian và chuyên môn
  • Mã nguồn mở hay thương mại?
    • Mã nguồn mở → linh hoạt, tiết kiệm chi phí
    • Thương mại → hỗ trợ tốt, nhiều tính năng nâng cao, tuân thủ quy định

 

  • Mô hình dữ liệu: loại dữ liệu có phù hợp với loại CSDL cụ thể không?
  • Tính năng cụ thể: bài toán có phụ thuộc chức năng như lưu trữ đa phương thức không?

Logo Chroma.

Nhập môn Embeddings với OpenAI API

Ayo berlatih!

Nhập môn Embeddings với OpenAI API

Preparing Video For Download...