简单方式搭建本地大模型问答系统

536 阅读3分钟

搭建条件

目标

快速部署一个本地大模型问答系统,要求大模型也要本地化部署,保障数据安全。

前置条件

  1. docker
  2. docker-compose

用到的软件和平台

  1. dify
  2. xinference

部署步骤

1. 部署Dify

Dify 是一款开源的大语言模型(LLM) 应用开发平台。它融合了后端即服务(Backend as Service)和 LLMOps 的理念,使开发者可以快速搭建生产级的生成式 AI 应用。

Dify 和LangChain类似,都是帮助用户搭建基于大模型的问答系统的框架,区别是Dify完成度很高,可以提供良好的前端页面,部署完成后,可以在前端进行配置,不需要用户进行代码开发。

1.1. 下载Dify

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

1.2. 配置环境变量

cd dify/docker
cp .env.example .env

可以修改.env中的变量。例如我这里修改了 .env 文件对外报露的端口号

EXPOSE_NGINX_PORT=1080
EXPOSE_NGINX_SSL_PORT=1443

1.3. 启动Dify

使用docker-compose 启动Dify

docker-compose up -d

1.4. 访问

如果你没有修改端口号,则访问

# 本地环境
http://localhost

# 服务器环境
http://your_server_ip

否则,可以根据修改的端口号,进行访问

# 本地环境
http://localhost:1080

# 服务器环境
http://your_server_ip:1080

2. 配置大模型URL (可略过)

如果你不想自己部署本地的模型,而是使用一些大公司提供的API,可以按照如下步骤进行操作。

下面两个可以选一个使用。

2.1. 配置通义千问 API

dashscope.console.aliyun.com/overview

  • 登录阿里云控制台
  • 创建API- KEY。这个key 需要自己保存,创建完毕之后,阿里云平台上就查看不到完整的KEY了。

image.png

  • 试用模型。模型体验中心,选择API-KEY, 模型,输入prompt,点击执行,与大模型进行对话。

image.png

  • 拷贝API-KEY 到Dify

image.png

image.png

image.png

2.2. 配置月之暗面API

platform.moonshot.cn/console/inf…

  • 登录月之暗面控制台,

image.png

  • 创建API。上面的界面中,点击新建,新建一个key

  • 拷贝key到dify

image.png

image.png

image.png

2.3. 测试模型

大模型接入Dify后,可以建立一个聊天机器人,测试是否连接成功。

  • 工作室页面,点击创建空白应用。 image.png

  • 配置空白应用名字,选择聊天助手、基础编排。

image.png

  • 点击创建,进入该应用 image.png

  • 点击页面右上角,选择要使用的大模型。

image.png

  • 输入提示词、右下角输入要与大模型的对话,点击小飞机图标,开始对话。 image.png

3. 部署本地大模型

第2个小节里面,接入了一些公司提供的大模型 API。下面介绍如何本地化部署大模型。

3.1. 部署xinference

Xorbits Inference(Xinference)是一个性能强大且功能全面的分布式推理框架。可用于各种模型的推理。通过 Xinference,你可以轻松地一键部署你自己的模型或内置的前沿开源模型。

如果你希望在 Linux 或者 Window 服务器上部署大模型,可以使用 Xinference 官方的 Docker 镜像来一键安装和启动 Xinference 服务(确保你的机器上已经安装了 Docker 和 NVIDIA驱动),命令如下:

docker pull xprobe/xinference:latest
docker run  -p 9997:9997 --gpus all xprobe/xinference:latest xinference-local -H 0.0.0.0

访问xinference的web页面: http://your_ip:9997/

image.png

选择希望加载的模型。

image.png

配置模型参数和模型ID

image.png

选择从modelscope 下载会比较快。点击左下角的小火箭,加载模型。(因为要下载模型,所以会比较慢,需要等一会) image.png

3.2. 模型接入Dify

  • 进入配置页面

image.png

  • 选择xinference供应商

image.png

  • 输入xinference的URL和刚才配置的模型ID,点击保存即可。

image.png

3.3. 测试接入的大模型

测试过程和2.3 小节一样,只不过需要选择刚才我们自己部署的大模型。如果这个页面没有显示刚才接入的模型,刷新整个页面,再试一下。

image.png