跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书AI学习GitHub 精选镜像AI工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
PythonAI算法

基于 AnalyticDB 与通义千问搭建 AI 智能客服

基于 AnalyticDB for PostgreSQL 向量引擎与通义千问大语言模型,构建检索增强生成(RAG)应用。方案利用专有网络 VPC、云服务器 ECS 及云原生数据仓库 AnalyticDB PostgreSQL 版实例,结合百炼平台实现企业私域知识的高效检索与大模型生成。通过 ROS 一键部署资源栈,开发者可快速体验智能客服功能,并掌握 Python 环境下的 RAG 代码实现逻辑,最终完成资源清理以控制成本。

宁静发布于 2025/2/6更新于 2026/10/2281 浏览
基于 AnalyticDB 与通义千问搭建 AI 智能客服

基于 AnalyticDB 与通义千问搭建 AI 智能客服

一、引言

基于检索增强生成(Retrieval-Augmented Generation, RAG)技术的 AI 智能客服能够高效地检索企业私域知识库,并利用大语言模型理解问题的上下文和意图,生成准确、贴切的答案。开发者将企业私域知识上传到智能问答系统后,企业业务人员就能通过提问快速获取公司政策、操作流程、专业知识等信息,客户也能快速得到产品知识、售后问题的答案。

本方案基于 AnalyticDB for PostgreSQL 的高效向量引擎与阿里云自主研发的通义千问 LLM 模型,构建一个高性能的检索增强生成(RAG)应用,实现企业的 AI 智能客服。

二、搭建 AI 智能客服方案概览

大模型虽然可以理解并生成自然语言,但由于缺乏特定领域的专业知识、没有企业的私域知识、知识更新不及时等问题,无法直接用于企业的 AI 智能客服。为了解决这一问题,企业可以采用 RAG 技术,从外部知识库(企业的私域知识)检索知识。召回的知识将和原始查询融合成 prompt,为大模型提供更丰富的上下文信息,从而生成更加准确的回答。

1. 方案优势

  • 简单易用:只需简单的页面点击,即可实现知识检索增强,使大模型有更丰富的上下文信息并生成更准确的答案。同时,本方案提供智能客服的示例代码,方便您快速体验 AI 智能客服。
  • 灵活且安全管理:向量数据存储在 AnalyticDB for PostgreSQL,企业可灵活管理数据。配套的审计、权限管理等功能可满足企业安全合规需求。
  • 性价比高:完成本方案的部署及体验,预计产生费用较低(具体取决于资源规格与运行时间)。

2. 方案架构

在阿里云上搭建的云上私有网络环境包括以下基础设施和云服务:

  • 专有网络 VPC:将云原生数据仓库 AnalyticDB PostgreSQL 版部署在专有网络中。
  • 交换机:将云服务器 ECS 实例和云原生数据仓库 AnalyticDB PostgreSQL 版实例部署在交换机中,实现它们之间的网络通信。
  • 云服务器 ECS:用于部署智能客服应用及 Python 环境。
  • 云原生数据仓库 AnalyticDB PostgreSQL 版实例:提供向量数据存储和检索服务。
  • 百炼平台:一站式的企业专属大模型生产平台。在本方案中,提供通义千问 LLM 模型的调用以及知识索引功能。

三、部署准备

开始部署前,请按以下指引完成账号申请、账号充值和授权。

1. 准备账号

如果您还没有阿里云账号,请访问阿里云账号注册页面,根据页面提示完成注册并进行个人实名认证。阿里云账号是您使用云资源的付费实体,因此是部署方案的必要前提。

2. 账号充值

本方案的云资源支持按量付费,且默认设置均采用按量付费引导操作。如果确定任何一个云资源采用按量付费方式部署,账户余额都必须大于等于 100 元。

四、一键部署

资源编排(ROS)可以让您通过 YAML 或 JSON 文件清晰简洁地描述所需的云资源及其依赖关系,然后自动化地创建和配置这些资源。您可以通过下方提供的 ROS 一键部署链接,来自动化地完成这些资源的创建和配置。

  • 部署 1 个专有网络 VPC。
  • 部署 1 台交换机。
  • 部署 1 台云服务器 ECS,并在服务器上部署 Python3.9 环境和 AI 智能客服的示例代码。
  • 部署 1 个云原生数据仓库 AnalyticDB PostgreSQL 版实例。

五、核心代码实现

为了帮助您更好地理解 RAG 流程,以下提供基于 Python 的核心逻辑示例。该代码展示了如何连接 AnalyticDB 进行向量检索,并调用通义千问 API 生成回答。

import os
from aliyunsdkcore.client import AcsClient
 aliyunsdkdashscope.api_call  api_call
 dashscope  Embedding
 dashscope  Generation


DASHSCOPE_API_KEY = os.getenv()
ADB_HOST = os.getenv()
ADB_PORT = os.getenv()
ADB_USER = os.getenv()
ADB_PASSWORD = os.getenv()


 ():
    response = Embedding.call(
        model=,
        =text
    )
     response.status_code == :
         response.output.embeddings[].embedding
    :
         Exception()


 ():
    
    
    ()
    
     [] 


 ():
    response = Generation.call(
        model=,
        messages=[
            {: , : },
            {: , : prompt}
        ]
    )
     response.status_code == :
         response.output.choices[].message.content
    :
         


 __name__ == :
    user_query = 
    
    
    query_vec = get_embedding(user_query)
    
    
    retrieved_docs = search_vector(query_vec)
    
    
    context = .join([doc[]  doc  retrieved_docs])
    final_prompt = 
    
    
    answer = generate_answer(final_prompt)
    (answer)
from
import
from
import
from
import
# 配置环境变量
'DASHSCOPE_API_KEY'
'ADB_HOST'
'ADB_PORT'
'ADB_USER'
'ADB_PASSWORD'
# 1. 文本向量化 (Embedding)
def
get_embedding
text
'text-embedding-v2'
input
if
200
return
0
else
raise
f"Embedding failed: {response}"
# 2. 向量检索 (Vector Search)
def
search_vector
query_vector, top_k=5
# 此处需根据实际 AnalyticDB SQL 语法执行向量相似度搜索
# 伪代码示例:SELECT * FROM knowledge_table ORDER BY vector_distance(column, query_vector) LIMIT top_k
print
f"Searching for similar vectors with dimension {len(query_vector)}"
# 实际开发中需使用 psycopg2 等库连接数据库执行 SQL
return
# 3. 生成回答 (Generation)
def
generate_answer
prompt
'qwen-max'
'role'
'system'
'content'
'你是一个专业的智能客服助手。'
'role'
'user'
'content'
if
200
return
0
else
return
"抱歉,我无法回答这个问题。"
# 4. 主流程
if
'__main__'
"哪款手机续航时间最长?"
# 获取用户问题向量
# 检索相关知识片段
# 构建 Prompt
"\n"
'content'
for
in
f"基于以下信息:{context},请回答用户问题:{user_query}"
# 生成回答
print

六、体验智能问答

在 ROS 控制台资源栈列表页,找到目标资源栈,单击资源栈 ID,然后切换到输出页签。

复制 WebUrl 的地址,粘贴到浏览器地址栏,访问 AI 智能客服。

在提问框中提问,例如'哪款手机续航时间最长'。您可以看到此时大模型的回答参考了您上传的百炼系列手机产品介绍。

七、完成及清理

1. 清理资源

在本方案中,您创建了 1 台云服务器 ECS 实例、1 个云原生数据仓库 AnalyticDB PostgreSQL 版实例、1 个百炼应用、1 个安全组、1 个交换机、1 个专有网络 VPC。完成本文方案的体验后,如需删除资源,可按下文操作。

  • 删除计算与网络资源:删除云服务器 ECS 实例、云原生数据仓库 AnalyticDB PostgreSQL 版实例、安全组、交换机、专有网络 VPC,可以在 ROS 控制台找到目标资源栈,单击删除,选择删除方式为释放资源。
  • 删除百炼应用:需要登录百炼控制台我的应用页面,在应用右上角单击删除应用。在数据处理页面和数据应用 > 知识索引页面,找到上传的数据和创建的知识库,单击删除。

八、总结

本方案展示了如何利用 AnalyticDB for PostgreSQL 的向量检索能力结合通义千问大模型,快速构建企业级 AI 智能客服。通过 RAG 架构,企业能够在保护数据隐私的前提下,利用大模型提升服务效率。开发者可根据实际需求调整知识库内容、优化 Prompt 工程,并进一步集成至现有业务系统中。

目录

  1. 基于 AnalyticDB 与通义千问搭建 AI 智能客服
  2. 一、引言
  3. 二、搭建 AI 智能客服方案概览
  4. 1. 方案优势
  5. 2. 方案架构
  6. 三、部署准备
  7. 1. 准备账号
  8. 2. 账号充值
  9. 四、一键部署
  10. 五、核心代码实现
  11. 配置环境变量
  12. 1. 文本向量化 (Embedding)
  13. 2. 向量检索 (Vector Search)
  14. 3. 生成回答 (Generation)
  15. 4. 主流程
  16. 六、体验智能问答
  17. 七、完成及清理
  18. 1. 清理资源
  19. 八、总结

更多推荐文章

查看全部
  • cv_resnet50_face-reconstruction 在 Deepfake 检测预处理中的应用
  • MySQL 详细安装配置完整教程
  • Python 列表内存存储本质:差异原因与优化建议
  • C/C++ 格式化输入输出详解:snprintf 与 sscanf
  • 多模态融合:RetinaFace、CurricularFace 与语音识别系统
  • C++ 多态核心原理与虚函数表详解
  • 渗透测试基本流程与工具使用指南
  • JavaScript 注释基础
  • 机器人操作 VLA 模型的强化学习综述
  • 基于 Llama-Factory 的 ASR 转写文本润色实践
  • Obsidian入门到精通五大仓库
  • 基于 FPGA 的 SPI 控制 FLASH 读写
  • ToDesk、顺网云、海马云部署 DeepSeek 实测对比
  • C++ 递归实战:合并有序链表与反转链表
  • Nuendo 14 与 Cubase 15 专业音频制作软件功能详解
  • Linux 多路转接 IO 模型详解:select
  • Kafka 核心架构与分布式存储深度解析
  • C++11 详解:列表初始化、右值引用与移动语义
  • JavaSE 基础语法与面向对象编程复习
  • WhisperLiveKit 实战指南:从本地部署到生产环境

相关免费在线工具

  • 加密/解密文本

    使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • Gemini 图片去水印

    基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online

  • curl 转代码

    解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online