Timescale Cloud:性能、扩展、企业级
自托管产品
MST
Timescale 上的 Pgai 是一种云解决方案,用于使用 PostgreSQL 构建搜索、RAG 和 AI 代理。这套工具使您能够将 PostgreSQL 作为向量数据库,部署生产 AI 应用程序,在同一个数据库中存储向量嵌入、关系数据(例如,相关元数据)和时间序列数据。
立即开始构建
Timescale Cloud 上的 Pgai 由三个扩展组成:pgvector、pgvectorscale 和 pgai。pgvector 提供向量数据类型和 HNSW 搜索索引。Pgvectorscale 提供 StreamingDiskANN 索引,以超强赋能嵌入搜索并提高向量查询性能。Pgai 允许您从数据库内部轻松调用 AI 嵌入和生成模型。默认情况下,所有这三个扩展都已安装在您的 Timescale Cloud 实例中。
Pgvector 是一个流行的开源扩展,用于在 PostgreSQL 中进行向量存储和相似性搜索,而 pgvectorscale
为 pgvector 添加了高级索引功能。Timescale 上的 Pgai 提供这两个扩展,因此您可以使用 pgvector 中已有的所有功能(如 HNSW 和 ivfflat 索引),还可以利用 pgvectorscale 中的 StreamingDiskANN 索引来加速向量搜索。
这使得您可以轻松迁移现有 pgvector 部署,并利用 pgvectorscale 中的额外性能功能。您还可以灵活地创建适合您需求的不同索引类型。有关更多信息,请参阅向量搜索索引部分。
嵌入提供了一种表示数据语义本质的方式,并允许根据数据在含义上的相关程度进行比较。在数据库环境中,这非常强大:可以将其视为加强版全文搜索。向量数据库允许存储与数据关联的嵌入,然后搜索与给定查询相似的嵌入。
向量嵌入在许多应用中都非常有用。
通过创建理解查询意图和上下文含义的系统,超越传统关键词驱动搜索方法的局限性,从而返回更相关的结果。语义搜索不仅仅是寻找精确的词语匹配;它能理解用户查询背后的更深层意图。结果呢?即使搜索词语在措辞上有所不同,也能呈现相关结果。利用混合搜索(将词法和语义搜索方法相结合),为用户提供丰富而准确的搜索体验。现在,它不再仅仅是寻找直接匹配,而是深入挖掘上下文和概念上相似的内容,以满足用户需求。
想象一个用户对某个特定主题的几篇文章表现出兴趣。通过嵌入,推荐引擎可以深入挖掘这些文章的语义本质,从而发现与同一主题产生共鸣的其他数据库项目。因此,推荐不再仅仅停留在标签或类别等肤浅层面,而是深入到内容的精髓。
通过为大型语言模型(LLM),如 OpenAI 的 GPT-4、Anthropic 的 Claude 2 以及 Llama 2 等开源模型提供额外上下文,来增强生成式 AI。当用户提出查询时,会获取相关的数据库内容,并将其作为附加信息补充到查询中,供 LLM 使用。这有助于减少 LLM 的幻觉,因为它确保模型的输出更基于具体和相关的信息,即使这些信息不属于模型的原始训练数据。
嵌入还为数据聚类提供了强大的解决方案。将数据转换为这些向量化形式,可以在高维空间中对数据点进行细致的比较。通过 K-means 或层次聚类等算法,数据可以被归类到语义类别中,从而提供表层属性可能遗漏的洞察。这揭示了固有的数据模式,丰富了探索和决策过程。
从宏观层面看,嵌入帮助数据库寻找与给定信息相似的数据(相似性搜索)。此过程包括以下几个步骤
- 首先,为数据创建嵌入并将其插入数据库。这可以在应用程序中进行,也可以在数据库本身中进行。
- 其次,当用户有一个搜索查询(例如,聊天中的问题)时,该查询随后会被转换为一个嵌入。
- 第三,数据库接收查询嵌入,并搜索其已存储的最接近匹配(最相似)的嵌入。
在底层,嵌入被表示为一个向量(一列数字),它捕捉了数据的本质。为了确定两段数据的相似性,数据库使用向量上的数学运算来获取距离度量(通常是欧几里得距离或余弦距离)。在搜索过程中,数据库应返回查询嵌入与存储嵌入之间距离尽可能小的已存储项,这表明这些项最相似。
Timescale 上的 pgai 支持输出向量维度不超过 2,000 的最流行的嵌入模型。
- OpenAI 嵌入模型
:text-embedding-ada-002 是 OpenAI 推荐的嵌入生成模型。
- Cohere 表示模型
:Cohere 提供了许多模型,可用于从英语或多种语言的文本生成嵌入。
以下是一些流行的图像嵌入模型选择
- OpenAI CLIP
:适用于涉及文本和图像的应用。
- VGG
- 视觉转换器 (ViT)
关键词
在此页面上发现问题?报告问题 或 在 GitHub 上编辑此页面
。