ChatGPT 基于Dify 构建ai客服详细教程(git-docker-dify-gpt)

慈云数据 2024-04-27 技术支持 115 0

       

                                                                     Dify搭建手册

技术分享,一条龙完成dify的chatgpt的ai客服,中间有借用几位大神非常实用的文章分享。按照这个流程来有一些互联网基础的小伙伴应该都能做出来。

  目前我是做出来用于减轻客服妹妹的压力,不在线时挂上基于自己公司客服话术等知识库的gpt-ai去自动回复,配上ai咒语做限制,蛮聪明的效果还不错。客服妹妹如果好看的那做一个出来还是很香的,如果和妹妹又离得近的话,恭喜你直接晋升为客服部妹妹们的好哥哥,脱离南山少林寺,成为灵鹫宫的主人,统率数百名女人。

首先,你需要理解 Dify.AI 是什么?

  官网的解释是--Dify 是一个开源且非常简单易用的 LLMOps 平台,让你能够可视化快速创建并运营 AI 应用的工具平台。Dify 提供了可视化的 Prompt 编排、运营、数据集管理等功能。你甚至无需具备 AI 相关的技术研究和晦涩概念的理解。Dify 对接了各个出色的大型语言模型供应商,如 OpenAI、Azure OpenAI、Antropic 等,已提供 GPT 系列、Claude 系列模型,未来也将接入优秀的开源模型。这一切都是可以在设置中切换使用。这意味着,你在创建调试应用时,可以对比不同模型的效果,以确定使用最适合你的模型。基于 Dify,你不仅可以很轻易地开发一个 AI 智能客服,还可以创造符合你使用习惯和需求的文本写作助手、虚拟招聘 HR 专家、会议总结助手、翻译助手等各种文本生成型应用,为你的工作提效。

分享一批可用的 ChatGPT API Keys

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

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

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

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

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

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

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

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

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

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

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

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

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

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

如果分享的不能使用了可以上淘宝等几毛钱买一个直连的apikey

关键字

1.版本

Docker版本docker-ce-20.10.6

Git版本git version 2.39.3

Dif版本   dify社区版

2.目录位置

Git目录位置  /home/git

Git仓库位置 /home/data/git/gittest.git

Dify目录位置/home/dify

3,容器操作方式

Docker exec -it  容器名或容器id  /bin/bash或/bin/sh

4,openai-apikey免费分享

一.基础环境搭建

1.磁盘分区

查看磁盘是否已经挂载在根目录上

盘够大且已挂载

2.防火墙

查看iptables和farewalld防火墙状态,先进行关闭,后期搭建完后可根据情况根据netstat-tnulp开启iptables开放端口

3.进行基础优化和下载常用工具

3.1云服务器已经有基础优化

1.关闭selinux

sed -i '/^SELINUX=/c SELINUX=disabled' /etc/selinux/config

2.networkmanager(关闭图形化显卡)

systemctl disable NetworkManager

3.调整单个进程最大能打开文件的数量

echo '* - nofile 65535' >> /etc/security/limits.conf

3.2下载常用工具

yum -y  install net-tools vim tree htop iftop gcc gcc-c++ glibc\ iotop lrzsz sl wget unzip telnet nmap nc psmisc \ dos2unix bash-completion bash-completion-extra sysstat \ rsync nfs-utils httpd-tools

  • 搭建docker和git来克隆dify镜像

    二.Docker搭建

    Docker版本docker-ce-20.10.6

    目录位置

    镜像位置

    参考文档5分钟安装docker详细步骤_docker_脚本之家 (jb51.net)

    文档原链接https://www.jb51.net/article/213611.htm

    。卸载旧版本(如docker可用则省略这一步)

    老版本的docker被称作docker 或者 docker-engine,如果有老版本的docker,把它和相关依赖一起卸载。

    1

    2

    3

    4

    5

    6

    7

    8

    $ remove docker \

    docker-client \

    docker-client-latest \

    docker-common \

    docker-latest \

    docker-latest-logrotate \

    docker-logrotate \

    docker-engine

    安装步骤

    官方推荐使用通过设置docker仓库的方法来安装,安装和升级都简单些。

    1 设置docker仓库

    第一次安装的时候需要设置docker仓库,后面就可以利用该仓库进行安装和升级docker。

    需要先安装 yum-utils 包,它可以提供yum-config-manager工具和配置稳定的仓库。

    1

    2

    3

    4

    yum install -y yum-utils

     yum-config-manager \

        --add-repo \

        https://download.docker.com/linux/centos/docker-ce.repo

    2 安装docker引擎

    安装最新版docker引擎和容器,或者去下一步制定一个版本安装:

    1

    $ yum install docker-ce docker-ce-cli containerd.io

    如果提示接受GPG key,验证是否是060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35,如果是,就接受。

    如果启用了多个Docker存储库,则在不在yum install或yum update命令中指定版本的情况下,安装或更新总是安装可用的最高版本,这可能不适合您的稳定性需要。

    上面的命令安装好了最新版的docker,但是还没有启动服务,docker组也被创建好了,但是还没有用户分配到该组。

    3 安装指定版本的docker引擎

    列出仓库可用的所有版本,然后选择安装,下面命令把列出的结果进行倒序排序:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    [root@iZbp180j96p8y98l1s1oucZ ~]# yum list docker-ce --showduplicates | sort -r

    Last metadata expiration check: 0:32:38 ago on Fri 28 May 2021 06:17:26 PM CST.

    Installed Packages

    docker-ce.x86_64               3:20.10.6-3.el8                 docker-ce-stable

    docker-ce.x86_64               3:20.10.6-3.el8                 @docker-ce-stable

    docker-ce.x86_64               3:20.10.5-3.el8                 docker-ce-stable

    docker-ce.x86_64               3:20.10.4-3.el8                 docker-ce-stable

    docker-ce.x86_64               3:20.10.3-3.el8                 docker-ce-stable

    docker-ce.x86_64               3:20.10.2-3.el8                 docker-ce-stable

    docker-ce.x86_64               3:20.10.1-3.el8                 docker-ce-stable

    docker-ce.x86_64               3:20.10.0-3.el8                 docker-ce-stable

    docker-ce.x86_64               3:19.03.15-3.el8                docker-ce-stable

    docker-ce.x86_64               3:19.03.14-3.el8                docker-ce-stable

    docker-ce.x86_64               3:19.03.13-3.el8                docker-ce-stable

    Available Packages

    通过下面命令指定要安装的版本,例如,对于3:20.10.6-3.el8,它的版本号是:到-中间的部分,也就是: 20.10.6

    1

    $ yum install docker-ce- docker-ce-cli- containerd.io

    用版本号替换一下,上面的命令就是:

    1

    $ yum install docker-ce-20.10.6 docker-ce-cli-20.10.6 containerd.io

    4 启动docker

    1

    $ systemctl start docker

    5 运行hello-world
    为了验证docker正确安装并正常启动,执行自带的hello-world镜像。

    1

    $ docker container run hello-world

    如果这个hello-world镜像默认不存在,会自动下载,然后运行这个image。

    1. git搭建

    Git版本git version 2.39.3

    Git目录位置  /home/git

    Git仓库位置 /home/data/git/gittest.git

    参看文档在Centos7下搭建Git服务器 - Tse先生 - 博客园 (cnblogs.com)

    文档原链接https://www.cnblogs.com/Sungeek/p/6928125.html

    Ps:因此次git只用于克隆镜像,故而做到服务器端创建 Git 仓库已经够用,若要更深入使用可参考上方文档

    三① 安装 Git

    centos7 做为服务器端系统,Windows 作为客户端系统,分别安装 Git

    服务器端:


    先检查服务器有没有自带或者安装git;查询Git版本

    [root@localhost ~]# git --version

    git version 1.8.3.1

    [root@localhost ~]# rpm -qa git

    git-1.8.3.1-6.el7_2.1.x86_64

    查询到没有的话就yum安装一下;

    #yum install -y git

    安装完后,查看 Git 版本

    [root@localhost ~]# git --version

    git version 1.8.3.1

    客户端:

    下载 Git for Windows,地址:Git for Windows

    安装完之后,可以使用 Git Bash 作为命令行客户端。

    安装完之后,查看 Git 版本

    Administrator@SG MINGW64 ~

    $ git --version

    git version 2.13.0.windows.1

     

    ② 服务器端创建 git 用户,用来管理 Git 服务,并为 git 用户设置密码

    [root@localhost home]# id git

    id: git:无此用户

    [root@localhost home]# useradd git

    [root@localhost home]# passwd git

     

     

    ③ 服务器端创建 Git 仓库

    设置 /home/data/git/gittest.git 为 Git 仓库

    然后把 Git 仓库的 owner 修改为 git

    [root@localhost home]# mkdir -p data/git/gittest.git

    [root@localhost home]# git init --bare data/git/gittest.git

    初始化空的 Git 版本库于 /home/data/git/gittest.git/

    [root@localhost home]# cd data/git/

    [root@localhost git]# chown -R git:git gittest.git/

    • 给dify拉取镜像

      Dify目录位置     /home/dify

      参考文档 Docker Compose 部署 | 中文 | Dify

      文档原链接https://docs.dify.ai/v/zh-hans/getting-started/install-self-hosted/docker-compose

      Clone Dify

      1.Clone Dify 源代码至本地

      复制

      git clone https://github.com/langgenius/dify.git

      2.Start Dify

      进入 dify 源代码的 docker 目录,执行一键启动命令

      复制

      cd dify/dockerdocker compose up -d

      如果您的系统安装了 Docker Compose V2 而不是 V1,请使用 docker compose 而不是 docker-compose。通过$ docker compose version检查这是否为情况。在这里阅读更多信息。

      部署结果:

      复制

      [+] Running 7/7 ✔ Container docker-web-1       Started                                                                                                                                                                                       1.0s  ✔ Container docker-redis-1     Started                                                                                                                                                                                       1.1s  ✔ Container docker-weaviate-1  Started                                                                                                                                                                                       0.9s  ✔ Container docker-db-1        Started                                                                                                                                                                                       0.0s  ✔ Container docker-worker-1    Started                                                                                                                                                                                       0.7s  ✔ Container docker-api-1       Started                                                                                                                                                                                       0.8s  ✔ Container docker-nginx-1     Started

      3.最后检查是否所有容器都正常运行:

      复制

      docker compose ps

      包括 3 个业务服务 api / worker / web,以及 4 个基础组件 weaviate / db / redis / nginx。

      复制

      NAME                IMAGE                              COMMAND                  SERVICE             CREATED             STATUS              PORTSdocker-api-1        langgenius/dify-api:0.3.2          "/entrypoint.sh"         api                 4 seconds ago       Up 2 seconds        80/tcp, 5001/tcpdocker-db-1         postgres:15-alpine                 "docker-entrypoint.s…"   db                  4 seconds ago       Up 2 seconds        0.0.0.0:5432->5432/tcpdocker-nginx-1      nginx:latest                       "/docker-entrypoint.…"   nginx               4 seconds ago       Up 2 seconds        0.0.0.0:80->80/tcpdocker-redis-1      redis:6-alpine                     "docker-entrypoint.s…"   redis               4 seconds ago       Up 3 seconds        6379/tcpdocker-weaviate-1   semitechnologies/weaviate:1.18.4   "/bin/weaviate --hos…"   weaviate            4 seconds ago       Up 3 seconds        docker-web-1        langgenius/dify-web:0.3.2          "/entrypoint.sh"         web                 4 seconds ago       Up 3 seconds        80/tcp, 3000/tcpdocker-worker-1     langgenius/dify-api:0.3.2          "/entrypoint.sh"         worker              4 seconds ago       Up 2 seconds        80/tcp, 5001/tcp

      4.Upgrade Dify更新dify

      进入 dify 源代码的 docker 目录,按顺序执行以下命令:

      复制

      cd /home/dify/docker

      git  pull origin main

      docker compose down

      docker compose pull

      docker compose up -d

      四,测试访问以及在dify上创建ai客服

      参考文档

      Dify 基于 ChatGPT 构建本地知识库问答应用-CSDN博客

      https://blog.csdn.net/qq_43692950/article/details/131345124

      下载好镜像启动后,可以看到相关服务:

      如果有防火墙需要放行 80、5432 端口。

      下面在浏览器访问 http://部署服务ip:80 ,即可进入到 dify ,刚开始需要设置邮箱、用户名密码信息:

      设置完成并登录后即可来到主页面:

      三、构建私有化知识库问答应用

      3.1 构建本地知识库

      现在我们定义下课程信息,将内容放入一个 txt 文本中:

      周一课程:上午:JAVA,下午:Python。

      周二课程:上午:机器学习,下午:机器视觉。

      周三课程:上午:NLP,下午:HTML。

      周四课程:上午:微服务,下午:大数据。

      周五课程:上午:android,下午:历史文化。

      下面点到数据集下,点击创建数据集:

      下面将上面的 txt 文本拖入或选中进来:

      下面进行文本的分段与清洗,由于内容不多,可以分到一个段中:

      下面点击保存就成功创建了一个知识库:

      3.2 构建问答应用

      下面构建一个问答的应用:

      由于是使用 ChatGPT 下面先给它指定一个 API key:( 没有的话可以在淘宝等几毛钱,要买直连的,不能是中转的)

      对于 ChatGPT 的版本,这里以 gpt-3.5-turbo 为例:

      下面在 提示词编排 中使用上面的知识库:

      此时可以在右侧进行调试:

      可以看到已经有了我们想要的效果,最后感觉不错的话,一定要点下右上角的发布,下面我们通过 API 的方式去使用它,在访问API 中可以看到API接口地址,并给出了访问示例:

      访问前需要生成 API 秘钥,可以点击 API 秘钥 生成:

      下面我们就可以使用 PostMan 进行访问了。

      3.3 效果测试

      这里使用自带的预览:

      下面就可以进行一些针对性的问答了:

      ————————————————

                                  版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

                              

      原文链接:https://blog.csdn.net/qq_43692950/article/details/131345124

      能够访问后

      • Dify 基于 ChatGPT 构建本地知识库问答应用

        1.Dify 基于 ChatGPT 构建本地知识库问答应用-CSDN博客

        五,如何在几分钟内创建一个带有业务数据的官网 AI 智能客服

        可能 AI 智能客服是每个业务网站的标配,在大型语言模型能力广泛被应用后,智能客服的实现变得更加轻易,可定制化的程度也更高。以下内容,将指导你如何在几分钟时间内,使用 Dify 创建你网站的 AI 智能客服。Dify 产品支持将对话型应用嵌入到网页,你只需要花费几分钟就可以将对话型应用免费嵌入到你的官网上,定制你的 AI 智能客服。即使非技术人员也能搞定!

        首先,你需要理解 Dify.AI 是什么?

        Dify 是一个开源且非常简单易用的 LLMOps 平台,让你能够可视化快速创建并运营 AI 应用的工具平台。Dify 提供了可视化的 Prompt 编排、运营、数据集管理等功能。你甚至无需具备 AI 相关的技术研究和晦涩概念的理解。Dify 对接了各个出色的大型语言模型供应商,如 OpenAI、Azure OpenAI、Antropic 等,已提供 GPT 系列、Claude 系列模型,未来也将接入优秀的开源模型。这一切都是可以在设置中切换使用。这意味着,你在创建调试应用时,可以对比不同模型的效果,以确定使用最适合你的模型。基于 Dify,你不仅可以很轻易地开发一个 AI 智能客服,还可以创造符合你使用习惯和需求的文本写作助手、虚拟招聘 HR 专家、会议总结助手、翻译助手等各种文本生成型应用,为你的工作提效。

        前提条件

        注册或部署 Dify.AI

        Dify 是一个开源产品,你可以在 GitHub (https://github.com/langgenius/dify) 上找到它并部署在你本地或公司内网。同时它提供了云端 SaaS 版本,访问 https://dify.ai/zh 注册即可使用。

        申请 OpenAI 等模型厂商的 API key

        AI 模型的消息调用需要消耗 token,Dify 提供了 OpenAI GPT 系列(200 次) 和 Antropic Claude(1000 次) 模型的消息免费调用使用额度,在你消耗完毕前,需要通过模型厂商的官方渠道申请你自己的 API key。在 Dify 的【设置】--【模型提供商】处可填入 key。

        上传你的产品文档或知识库

        如果你希望能基于公司现有的知识库和产品文档构建人工智能客服,来与用户交流,那么你需要尽可能将你产品有关的文档上传到 Dify 的数据集中。Dify 帮助你完成数据的分段处理和清洗。Dify数据集支持高质量和经济两种索引模式,我们推荐使用高质量模式,会消耗 token 但能提供更高的准确性。操作步骤:在 【数据集】页面,新建一个数据集,上传你的业务数据(支持批量上传多个文本),选择清洗方式,【保存并处理】,只需几秒钟即可完成处理。

        创建一个 AI 应用,给 AI 指令

        在【构建应用】页面创建一个对话型应用。然后开始设置 AI 指令和它在前端和用户交互的体验:

        1. **给 AI 指令:**点击左侧【提示词编排】编辑你的 Prompt ,让它扮演客服的角色与用户交流,你可以指定它和用户交流的语气、风格、限定它回答问题的范围;

        2. **让 AI 拥有你的业务知识:**在【上下文】中添加你刚才上传的目标数据集;

        3. **设置一个【对话开场白】:**点击 【添加功能】打开功能开关。目的是为 AI 应用添加一个开场白,在用户打开客服窗口时,它会先和用户打招呼,增加亲和感。

        4. **设置【下一步问题建议】:**在【添加功能】开启此功能。目的是为了让用户在提完一个问题后,给用户进行下一步提问的方向提示。

        5. **选择一个合适的模型并调整参数:**页面右上角可以选择不同的模型。不同模型的表现和消耗的 token 价格都不一样。这个例子中,我们使用 GPT3.5 模型。

        在这个 case 中,我们给 AI 指定了扮演的角色:

        指令:你将扮演 Dify 的 AI 智能客服,你是 Dify 的第一个 AI 员工,名字叫 Bob。专门解答关于 Dify 产品、团队或 LLMOps 相关的用户问题。请注意,当用户提出的问题不在你的上下文内容范围内时,请回答不知道。请以友好的语气和用户交流,可以适当加入一些 emoji 表情增进与用户之间的互动。

        开场白:你好,我是 Bob☀️, Dify的第一位AI成员。您可以与我讨论任何与Dify产品、团队甚至LLMOps相关的问题。

        调试 AI 智能客服的表现并发布

        完成以上的设置后,你可以在当前的页面右侧给它发送信息调试它的表现是否符合预期。然后点击【发布】。这时候你就已经拥有了一个 AI 智能客服。

        将 AI 客服应用嵌入到你的前端页面

        这一步,是将准备好的 AI 智能客服嵌入到你的官网页面。依次点击【概览】->【嵌入】,选择 **script 标签方式,**将 script 代码复制到你网站 或 标签中。如你是非技术人员,可让负责官网的开发帮忙粘贴并更新页面。

        1. 将复制的代码粘贴到你官网的目标位置:

        1. 更新你的官网,即可以得到一个拥有你业务数据的官网 AI智能客服。试一试效果:

        以上通过 Dify 官网 AI 客服 Bob 的例子演示了如何将 Dify 应用嵌入到官网的具体操作步骤。当然,你还可以通过 Dify 提供的更多特性来增加 AI 客服的表现,例如增加一些变量设置,让用户在互动前填入必要的判断信息,如名字、使用的具体产品等等。

        1. 运维部署完成后,交给前端工程师部署dify-ai到官网具体操作参考网址:如何在几分钟内创建一个带有业务数据的官网 AI 智能客服 | 中文 | Dify

        完成

         参考文档

        5分钟安装docker详细步骤_docker_脚本之家 (jb51.net)

         在Centos7下搭建Git服务器 - Tse先生 - 博客园 (cnblogs.com)

        Dify 基于 ChatGPT 构建本地知识库问答应用-CSDN博客

        文档原链接   https://blog.csdn.net/qq_43692950/article/details/131345124

        如何在几分钟内创建一个带有业务数据的官网 AI 智能客服 | 中文 | Dify

微信扫一扫加客服

微信扫一扫加客服

点击启动AI问答
Draggable Icon