vsag sqlite
v0.1.0
Extrect Squlite Extension Sqlite Baked بواسطة VSAG ، مكتبة فهرسة متجه تستخدم للبحث عن التشابه.
يوفر هذا الامتداد جدولًا افتراضيًا يسمح للمستخدمين بإضافة متجهات إلى VSAG والبحث عن نمط KNN. مخطط الجدول الافتراضي هو:
CREATE TABLE vsag (id PRIMARY KEY , vec, distance)تنفيذ SQL أدناه في sqlite:
.load target / debug / libvsag_sqlite
CREATE VIRTUAL TABLE test_table
USING vsag (dimension = 3 );
INSERT INTO test_table (id, vec)
VALUES ( 1 , ' [1,2,3] ' ), ( 2 , ' [11,22,33] ' ), ( 3 , ' [111,232,333] ' );
-- KNN style query
SELECT
id,
distance
FROM
test_table
WHERE
vec MATCH ' [1,2,4] ' ; إذا كان كل شيء يعمل بشكل جيد ، فسيتم إخراج SELECT :
1 | 1.0 2 | 1341.0 3 | 173241.0
انتقل إلى صفحة الإصدار لتنزيل أحدث ثنائي.
بعد التنزيل ، قم بتعيين LD_LIBRARY_PATH env إلى حيث تقوم بفك ضغطه.
أول تثبيت التبعيات (تم اختباره على Ubuntu ، يمكن أن تشير توزيعات Linux الأخرى إلى التطوير. md):
sudo apt install -y gfortran libomp-15-dev lcovثم بناء هذا المشروع:
cargo build بعد الإنشاء ، قم بتعيين LD_LIBRARY_PATH لإخبار sqlite أين يمكن العثور على ملفات SO الخاصة بنا:
so_file= $( find target -name libvsag.so | head -n1 )
cp " ${so_file} " ./target/debug
export LD_LIBRARY_PATH=./target/debug