在当今数据驱动的时代,数据库与人工智能的结合成为了提升数据处理和分析能力的重要手段。RDS PostgreSQL现推出AI插件rds_ai,它集成了阿里云百炼的先进模型,能让用户在数据库中轻松实现多种AI应用场景。本教程将详细介绍rds_ai插件的使用方法。
一、插件概述
rds_ai插件集成了阿里云百炼的先进模型,如通义千问、通用文本向量和通用文本排序等。通过该插件,可在RDS PostgreSQL数据库中实现大模型问答、文本向量转换、文本排序、Top N相似向量检索以及RAG问答等应用场景。而且,它还支持自定义模型,方便用户灵活添加所需模型。用户可加入RDS PostgreSQL插件交流钉钉群(103525002795)进行咨询、交流和反馈。
二、前提条件
- 实例版本:PostgreSQL 16内核小版本需20241230及以上;PostgreSQL 14、15、17内核小版本需20250430或以上。如需升级内核小版本,可参见升级内核小版本。
- 账号创建:已创建RDS PostgreSQL高权限账号,创建方法参见创建账号。
- 服务开通:本文使用的模型为阿里云百炼提供,需先前往阿里云百炼开通服务,并获取API - KEY,具体操作参见获取API Key。
三、网络配置
RDS PostgreSQL数据库默认无访问外部网络能力,有两种网络连接方式:
- 私网连接:通过私网连接(PrivateLink)建立专有网络VPC与阿里云百炼平台之间的网络连接,可提高数据传输的安全性及效率。详细操作参见通过终端节点私网访问阿里云百炼平台。
- 公网连接:为RDS PostgreSQL实例所属的VPC配置NAT网关,使其允许访问外部模型。NAT网关相关信息参见使用公网NAT网关SNAT功能访问互联网。
四、创建和删除插件
(一)页面操作
在安装插件前,需确认RDS PostgreSQL实例的大版本和内核小版本支持该插件安装。具体步骤如下:
- 访问RDS实例列表,选择地域,单击目标实例ID。
- 在左侧导航栏单击插件管理。
- 在插件市场页面,单击rds_ai插件的安装,选择目标数据库和账号后,单击安装。
- 可选操作:在管理插件页面的已安装插件页签,可卸载已安装的插件。
(二)SQL命令操作
- 创建插件:使用
CREATE EXTENSION IF NOT EXISTS rds_ai CASCADE;命令,仅高权限账号可执行,创建时会同步创建插件pgvector使用指南和pgsql - http。可执行SELECT * FROM pg_extension;查看已安装的插件。 - 删除插件:使用
DROP EXTENSION rds_ai;命令。
五、默认模型及能力
(一)默认模型
| 接口类型 | 参数 | 参数类型 | 默认模型 |
|---|---|---|---|
| prompt接口 | rds_ai.default_prompt_model | enum | qwen - plus(默认值)、qwen - max、qwen - turbo |
| rank接口 | rds_ai.default_rerank_model | enum | gte - rerank |
| embed接口 | rds_ai.default_embed_model | enum | text - embedding - v3 |
若需修改默认模型,须将rds_ai添加到shared_preload_libraries的运行参数值中,配置参数详情操作参见设置实例参数。
(二)默认模型能力
- 大模型问答:默认模型为通义千问 - 文本生成,可使用
rds_ai.prompt调用。 - 文本转向量:默认模型为text - embedding - v3,可输出稠密向量或稀疏向量。
- 文本排序:默认模型为gte - rerank,使用
rds_ai.rank调用。 - 检索Top N相似向量:默认使用text - embedding - v3模型进行相似向量检索。
- RAG问答:默认使用text - embedding - v3模型和通义千问 - 文本生成模型进行RAG问答。
六、基础设置
- API - KEY配置:使用rds_ai调用大模型前,必须配置对应的API - KEY,可使用
SELECT rds_ai.update_model命令。 - 超时设置:rds_ai对模型的远程调用基于pgsql - http插件实现,需配置超时设置,设置为会话级别,新连接需重新设置。
- 私网URL更新:若通过私网连接,需执行命令更新目标模型的URL地址。
七、自定义模型
(一)添加自定义模型
使用元数据表rds_ai.model_list新增自定义模型,通过SELECT rds_ai.add_model命令添加。
(二)使用自定义模型
可使用rds_ai.raw_invoke_model函数返回完整的HTTP请求结果,使用rds_ai.invoke_model函数提取所需字段。
(三)删除自定义模型
使用SELECT rds_ai.del_model命令删除自定义模型。
八、新增特定模型
(一)DeepSeek模型
通过阿里云百炼平台调用,获取URL地址、开通服务并获取API - KEY后,新增模型并验证。
(二)PAI - RAG模型
建议将PAI - EAS与RDS PG实例部署在同一VPC内,在PAI的EAS中部署RAG服务,获取调用信息后新增模型并配置Token进行验证。
(三)FC函数计算RAG模型
部署函数计算的AgentCraft应用,获取服务地址和Token后新增模型并验证。
(四)text - embedding - v2模型
获取URL地址、开通服务并获取API - KEY后,新增模型并验证。
本教程详细介绍了RDS PostgreSQL rds_ai插件的使用,包括前提条件、网络配置、插件创建与删除、默认模型及能力、基础设置、自定义模型以及新增特定模型等内容。通过按照本教程的步骤操作,用户可以在RDS PostgreSQL数据库中充分利用rds_ai插件实现丰富多样的AI应用场景。