AI và LLMTruy xuất

Tìm kiếm tương đồng vector

Tìm các mục gần nhất theo ý nghĩa, lọc theo thẻ, ngay trong engine đang giữ chính các mục đó.

được lập chỉ mục
HNSW
tìm kiếm trung bình
O(log N)
thước đo khoảng cách
3
Bước 1 trên 6
Tạo chỉ mục

Số chiều và thước đo được cố định cho mỗi chỉ mục. Tham số HNSW có thể được tinh chỉnh khi cần.

Phiên ví dụplaying
# Tạo chỉ mục
hotkv> VSIM.CREATEINDEX products 3 METRIC COSINE
OK

Một hướng dẫn minh họa động với các lệnh HotKV thật và phản hồi ví dụ. Nhấn vào bất kỳ bước nào để nhảy tới đó. Lệnh và phản hồi giữ nguyên bằng tiếng Anh, đúng như bạn gõ và thấy trong HotKV.

Vấn đề

Tìm kiếm ngữ nghĩa, “nhiều mục tương tự hơn” và khử trùng lặp đều quy về một câu hỏi. Những mục nào đã lưu gần mục này nhất? Trả lời câu hỏi đó thường có nghĩa là một cơ sở dữ liệu vector chuyên dụng cạnh kho chính của bạn, và mỗi lần cập nhật sản phẩm phải được ghi vào cả hai.

HotKV xử lý như thế nào

HotKV giữ các chỉ mục vector HNSW trong engine. Dữ liệu sản phẩm nằm trong các khóa thông thường, các vector được lập chỉ mục dưới cùng tên khóa, và các thẻ trên những khóa đó cho phép một lần tìm kiếm ở lại trong một danh mục hoặc một tenant. Một đường ghi, một hệ thống để vận hành.

Từng bước một

Điều gì xảy ra, từng lệnh một

  1. 01

    Tạo chỉ mục

    Số chiều và thước đo được cố định cho mỗi chỉ mục. Tham số HNSW có thể được tinh chỉnh khi cần.

    VSIM.CREATEINDEX products 3 METRIC COSINE
  2. 02

    Lưu sản phẩm

    Dữ liệu của sản phẩm là một hash bình thường, dưới tên khóa mà chỉ mục sẽ dùng.

    HSET sku:1 name "Trail runner" price 89
  3. 03

    Gắn thẻ

    Các thẻ trên khóa cho phép một lần tìm kiếm vector ở lại trong một danh mục.

    TAG.SET sku:1 shoes running
  4. 04

    Lập chỉ mục vector của nó

    Vector đi vào chỉ mục dưới cùng tên khóa.

    VSIM.SET products sku:1 0.12 0.80 0.31
  5. 05

    Tìm theo ý nghĩa, trong một thẻ

    Văn bản truy vấn được embed, và các sản phẩm gần nhất mang thẻ đó được trả về cùng khoảng cách của chúng.

    VSIM.SEARCH products 3 0.10 0.82 0.29 FILTER shoes
  6. 06

    Lấy thứ cần hiển thị

    Kết quả là các tên khóa, nên dữ liệu sản phẩm chỉ cách một lần đọc trong cùng máy chủ.

    HGETALL sku:1
Phù hợp ở đâu

Các tình huống thực tế

Tìm kiếm thương mại điện tử

Người mua gõ thứ họ muốn bằng lời lẽ của riêng mình. Danh mục được tìm theo ý nghĩa và lọc theo danh mục cùng cửa hàng họ đang ở.

Phát hiện trùng lặp

Phiếu hỗ trợ hoặc tin đăng mới được so sánh với những cái hiện có, và các bản gần trùng lặp được gộp lại trước khi con người nhìn thấy.

Tương đồng hình ảnh và phương tiện

Embedding từ một mô hình hình ảnh tìm các ảnh hoặc clip giống nhau về mặt thị giác trong một thư viện.

Tích hợp sẵn

Bạn nhận được gì

Chỉ mục HNSW

Tìm kiếm láng giềng gần nhất xấp xỉ vẫn nhanh trên các chỉ mục lớn, O(log N) trung bình.

VSIM.CREATEINDEXVSIM.SEARCH

Ba thước đo

Cosine, L2 và tích vô hướng, chọn cho từng chỉ mục.

METRIC

Bộ lọc thẻ

Giới hạn một lần tìm kiếm vào các khóa mang đủ mọi thẻ đã cho.

TAG.SETFILTER

Bền vững

Các chỉ mục được giữ trong snapshot và các lần ghi lại AOF của bạn như phần còn lại của dữ liệu.

VSIM.INFO

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

HotKV có tạo embedding không?

Không. Hãy tạo vector bằng mô hình embedding bạn ưa thích và lưu chúng bằng VSIM.SET.

Điều này khác pipeline RAG thế nào?

VSIM là chỉ mục vector tổng quát. Pipeline RAG xây trên cùng ý tưởng đó và bổ sung chia chunk, metadata và tìm kiếm từ khóa lai cho tài liệu.

Gói nào bao gồm nó?

Tìm kiếm vector và thẻ là các lệnh lõi và hoạt động trên mọi gói, không cần giấy phép.

Trường hợp sử dụng liên quan

Thử trên khối lượng công việc của chính bạn

HotKV nói giao thức Redis, nên bạn có thể trỏ một client hiện có tới nó và chạy chính những lệnh này.