Skip to content

Commit

Permalink
Update more links
Browse files Browse the repository at this point in the history
  • Loading branch information
lilin90 authored and ti-chi-bot committed Jan 3, 2025
1 parent a7cb180 commit 564a4df
Show file tree
Hide file tree
Showing 7 changed files with 14 additions and 14 deletions.
2 changes: 1 addition & 1 deletion releases/release-8.4.0.md
Original file line number Diff line number Diff line change
Expand Up @@ -200,7 +200,7 @@ TiDB 版本:8.4.0

向量搜索是一种基于数据语义的搜索方法,可以提供更相关的搜索结果。作为 AI 和大语言模型 (LLM) 的核心功能之一,向量搜索可用于检索增强生成 (Retrieval-Augmented Generation, RAG)、语义搜索、推荐系统等多种场景。

从 v8.4.0 开始,TiDB 支持[向量数据类型](/vector-search/vector-search-data-types.md)[向量搜索索引](/vector-search/vector-search-index.md),具备强大的向量搜索能力。TiDB 的向量数据类型最多可支持 16383 维度,并支持多种[距离函数](/vector-search-functions-and-operators.md#向量函数),包括 L2 距离(欧式距离)、余弦距离、负内积和 L1 距离(曼哈顿距离)。
从 v8.4.0 开始,TiDB 支持[向量数据类型](/vector-search/vector-search-data-types.md)[向量搜索索引](/vector-search/vector-search-index.md),具备强大的向量搜索能力。TiDB 的向量数据类型最多可支持 16383 维度,并支持多种[距离函数](/vector-search/vector-search-functions-and-operators.md#向量函数),包括 L2 距离(欧式距离)、余弦距离、负内积和 L1 距离(曼哈顿距离)。

在使用时,你只需要创建包含向量数据类型的表,并插入向量数据,即可执行向量搜索查询,也可进行向量数据与传统关系数据的混合查询。

Expand Down
4 changes: 2 additions & 2 deletions vector-search/vector-search-data-types.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ INSERT INTO vector_table VALUES (2, '[0.3, 0.5]'); -- 插入一个 2 维

## 比较

向量数据支持[比较运算符](/vector-search-functions-and-operators.md#扩展的内置函数和运算符),例如 `=``!=``<``>``<=``>=` 等。关于向量数据类型支持的所有函数和操作符,可参阅[向量函数与操作符](/vector-search/vector-search-functions-and-operators.md)
向量数据支持[比较运算符](/vector-search/vector-search-functions-and-operators.md#扩展的内置函数和运算符),例如 `=``!=``<``>``<=``>=` 等。关于向量数据类型支持的所有函数和操作符,可参阅[向量函数与操作符](/vector-search/vector-search-functions-and-operators.md)

比较向量数据类型时,TiDB 会以向量中的各个元素为单位进行依次比较,如:

Expand Down Expand Up @@ -233,7 +233,7 @@ ERROR 1105 (HY000): vectors have different dimensions: 1 and 3

## 使用限制

有关向量类型的限制,请参阅[向量搜索限制](/vector-search/vector-search-limitations.md)以及[向量搜索索引的使用限制](/vector-search-index.md#使用限制)
有关向量类型的限制,请参阅[向量搜索限制](/vector-search/vector-search-limitations.md)以及[向量搜索索引的使用限制](/vector-search/vector-search-index.md#使用限制)

## MySQL 兼容性

Expand Down
6 changes: 3 additions & 3 deletions vector-search/vector-search-functions-and-operators.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ TiDB 扩展了以下内置函数和运算符的功能,使其额外支持了[
| [`+`](https://dev.mysql.com/doc/refman/8.0/en/arithmetic-functions.html#operator_plus) | 向量以元素为单位进行加法运算符 |
| [`-`](https://dev.mysql.com/doc/refman/8.0/en/arithmetic-functions.html#operator_minus) | 向量以元素为单位进行减法运算符 |

关于向量运算工作原理的更多信息,请参阅[向量数据类型的运算](/vector-search-data-types.md#运算)
关于向量运算工作原理的更多信息,请参阅[向量数据类型的运算](/vector-search/vector-search-data-types.md#运算)

**聚合函数 (GROUP BY):**

Expand Down Expand Up @@ -76,7 +76,7 @@ TiDB 扩展了以下内置函数和运算符的功能,使其额外支持了[
| [`!=`, `<>`](https://dev.mysql.com/doc/refman/8.0/en/comparison-operators.html#operator_not-equal) | 不等运算符 |
| [`NOT IN()`](https://dev.mysql.com/doc/refman/8.0/en/comparison-operators.html#operator_not-in) | 检查值是否不在一组数值之内 |

关于如何比较向量的更多信息,请参阅[向量数据类型的比较](/vector-search-data-types.md#比较)
关于如何比较向量的更多信息,请参阅[向量数据类型的比较](/vector-search/vector-search-data-types.md#比较)

**控制流程函数:**

Expand All @@ -94,7 +94,7 @@ TiDB 扩展了以下内置函数和运算符的功能,使其额外支持了[
| [`CAST()`](https://dev.mysql.com/doc/refman/8.0/en/cast-functions.html#function_cast) | 将值转换为字符串或向量类型 |
| [`CONVERT()`](https://dev.mysql.com/doc/refman/8.0/en/cast-functions.html#function_convert) | 将值转换为字符串类型 |

关于如何使用 `CAST()` 的更多信息,请参阅[向量数据类型的转换](/vector-search-data-types.md#类型转换-cast)
关于如何使用 `CAST()` 的更多信息,请参阅[向量数据类型的转换](/vector-search/vector-search-data-types.md#类型转换-cast)

## 使用示例

Expand Down
4 changes: 2 additions & 2 deletions vector-search/vector-search-get-started-using-python.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ pip install sqlalchemy pymysql sentence-transformers tidb-vector python-dotenv
```

- `tidb-vector`:用于与 TiDB 向量搜索交互的 Python 客户端。
- [`sentence-transformers`](https://sbert.net):提供预训练模型的 Python 库,用于从文本生成[向量嵌入](/vector-search-overview.md#向量嵌入)
- [`sentence-transformers`](https://sbert.net):提供预训练模型的 Python 库,用于从文本生成[向量嵌入](/vector-search/vector-search-overview.md#向量嵌入)

### 第 3 步:配置 TiDB 集群的连接字符串

Expand Down Expand Up @@ -117,7 +117,7 @@ TIDB_DATABASE_URL="mysql+pymysql://<USER>:<PASSWORD>@<HOST>:<PORT>/<DATABASE>"
### 第 4 步:初始化嵌入模型
[嵌入模型](/vector-search-overview.md#嵌入模型)用于将数据转换为[向量嵌入](/vector-search-overview.md#向量嵌入)。本示例将使用预训练模型 [**msmarco-MiniLM-L12-cos-v5**](https://huggingface.co/sentence-transformers/msmarco-MiniLM-L12-cos-v5) 将文本数据转换为向量嵌入。该模型为一个轻量级模型,由 `sentence-transformers` 库提供,可将文本数据转换为 384 维的向量嵌入。
[嵌入模型](/vector-search/vector-search-overview.md#嵌入模型)用于将数据转换为[向量嵌入](/vector-search/vector-search-overview.md#向量嵌入)。本示例将使用预训练模型 [**msmarco-MiniLM-L12-cos-v5**](https://huggingface.co/sentence-transformers/msmarco-MiniLM-L12-cos-v5) 将文本数据转换为向量嵌入。该模型为一个轻量级模型,由 `sentence-transformers` 库提供,可将文本数据转换为 384 维的向量嵌入。
将以下代码复制到 `example.py` 文件中,完成模型的设置。这段代码初始化了一个 `SentenceTransformer` 实例,并定义了一个 `text_too_embedding()` 函数用于将文本数据转换为向量数据。
Expand Down
8 changes: 4 additions & 4 deletions vector-search/vector-search-get-started-using-sql.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ mysql --comments --host 127.0.0.1 --port 4000 -u root

### 第 2 步:创建向量表

创建表时,你可以使用 `VECTOR` 数据类型声明指定列为[向量](/vector-search-overview.md#向量嵌入)列。
创建表时,你可以使用 `VECTOR` 数据类型声明指定列为[向量](/vector-search/vector-search-overview.md#向量嵌入)列。

例如,要创建一个带有三维 `VECTOR` 列的 `embedded_documents` 表,可以使用 MySQL CLI 执行以下 SQL 语句:

Expand All @@ -97,7 +97,7 @@ Query OK, 0 rows affected (0.27 sec)

### 第 3 步:向表中插入向量

`embedded_documents` 表中插入三行,每一行包含数据和数据的[向量嵌入](/vector-search-overview.md#向量嵌入):
`embedded_documents` 表中插入三行,每一行包含数据和数据的[向量嵌入](/vector-search/vector-search-overview.md#向量嵌入):

```sql
INSERT INTO embedded_documents
Expand All @@ -118,7 +118,7 @@ Records: 3 Duplicates: 0 Warnings: 0
>
> 为了方便展示,本示例简化了向量的维数,仅使用三维向量。
>
> 在实际应用中,[嵌入模型](/vector-search-overview.md#嵌入模型)通常会生成数百或数千维的向量。
> 在实际应用中,[嵌入模型](/vector-search/vector-search-overview.md#嵌入模型)通常会生成数百或数千维的向量。
### 第 4 步:查询向量表
Expand All @@ -145,7 +145,7 @@ SELECT * FROM embedded_documents;

与全文搜索类似,在使用向量搜索时,你需要提供搜索词。

在本例中,搜索词是“一种会游泳的动物”,假设其对应的向量是 `[1,2,3]`。在实际应用中,你需要使用[嵌入模型](/vector-search-overview.md#嵌入模型)将用户的搜索词转换为向量。
在本例中,搜索词是“一种会游泳的动物”,假设其对应的向量是 `[1,2,3]`。在实际应用中,你需要使用[嵌入模型](/vector-search/vector-search-overview.md#嵌入模型)将用户的搜索词转换为向量。

执行以下 SQL 语句后,TiDB 会计算 `[1,2,3]` 与表中各向量之间的余弦距离 (`vec_cosine_distance`),然后对这些距离进行排序并输出表中最接近搜索向量(余弦距离最小)的前三个文档。

Expand Down
2 changes: 1 addition & 1 deletion vector-search/vector-search-improve-performance.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ summary: 了解优化 TiDB 向量搜索性能的最佳实践。

## 确保向量索引已完全构建

当插入大批量向量数据时,可能会有部分数据处于 Delta 层等待后续的持久化,这一部分的数据会在持久化后才会开始构建向量索引。在向量搜索索引完全构建好后,向量搜索性能才能达到最佳水平。要查看索引构建进度,可参阅[查看索引构建进度](/vector-search-index.md#查看索引构建进度)
当插入大批量向量数据时,可能会有部分数据处于 Delta 层等待后续的持久化,这一部分的数据会在持久化后才会开始构建向量索引。在向量搜索索引完全构建好后,向量搜索性能才能达到最佳水平。要查看索引构建进度,可参阅[查看索引构建进度](/vector-search/vector-search-index.md#查看索引构建进度)

## 减少向量维数或缩短嵌入时间

Expand Down
2 changes: 1 addition & 1 deletion vector-search/vector-search-limitations.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ summary: 了解 TiDB 向量搜索功能的限制。

## 向量搜索索引限制

参考[向量搜索索引 - 使用限制](/vector-search-index.md#使用限制)
参考[向量搜索索引 - 使用限制](/vector-search/vector-search-index.md#使用限制)

## 工具兼容性

Expand Down

0 comments on commit 564a4df

Please sign in to comment.