作者: CuteRay
今年4月份,TiDB 的向量特性正式开放给大家体验,当时只能在 TiDB Cloud上提交申请,体验、试用。半年的时间过去了,如今想体验TiDB Vector的功能已经不需要提交申请,直接在 TiDB Cloud 创建一个集群,新创建的集群虽然版本还是V7.1.3,但是默认就自带向量功能了。
这里弄一个demo,体验一下。
-- 创建一张带有向量字段的表,长度是3维
USE test;
CREATE TABLE embedded_documents (
id INT PRIMARY KEY,
document TEXT,
embedding VECTOR(3)
);
-- 往表中插入向量数据
INSERT INTO embedded_documents VALUES
(1,'大语言模型','[2.1,4.5,6.7]'),
(2,'大语言模型实践','[2.6,4.1,7.1]'),
(3,'TiDB V7.1.5 文档','[0.7,2.8,8.7]'),
(4,'TiDB 从入门到入土','[0.9,2.3,8.1]'),
(5,'语文(六年级)','[4.1,4.5,7.7]'),
(6,'golang 从入门到入土','[3.1,4.5,5.7]');
-- 根据指定的向量做搜索
SELECT *, vec_cosine_distance(embedding, '[1.3,2.6,5.8]') as distance FROM embedded_documents ORDER BY distance;
+----+---------------------------+---------------+----------------------+
| id | document | embedding | distance |
+----+---------------------------+---------------+----------------------+
| 2 | 大语言模型实践 | [2.6,4.1,7.1] | 0.010422578786698833