AI私有部署(保姆级教程)

本文详细指导如何在Linux服务器上部署GitHub开源的ChatGPT应用,包括安装Git、克隆代码、配置环境(如Node.js和Yarn)、设置启动脚本及环境变量,确保私有化部署的安全性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

前言

材料准备

环境准备

安装git工具

 克隆gpt应用

准备部署环境

设置启动脚本,配置环境变量


前言

        时隔四个月我又来更新了,上一次的文章发布的较为随意,很多步骤都没有进行详细的描述。这次还是基于github开源的chatgpt第三方项目来部署我们私有化的chatgpt平台,步骤尽量写的详细一些。

材料准备

        服务器可以在公网服务器上面搭建,若是有内网服务器,也可以部署在内网中提供内网用户访问。

Linux系统配置明细
Centos72h4g
Chatgpt账户的apikeykey获取

chatgpt的每个账户有免费的5美元额度,如果是私人使用的话可以用几个月时间,若是plus也可以使用plus账户的key。


环境准备

安装git工具

[root@yyt ~]# yum install -y git

[root@yyt ~]# git version
git version 1.8.3.1

 克隆gpt应用

Chatgpt的目前在github或者gitee上面已经有很多了,我在这里采用的是ChatGPT-Next-Web,或者你可以自行上github寻找其他的gpt应用。

[root@yyt ~]# git clone https://github.com/Yidadaa/ChatGPT-Next-Web.git
Cloning into 'ChatGPT-Next-Web'...
remote: Enumerating objects: 7145, done.
remote: Counting objects: 100% (5/5), done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 7145 (delta 0), reused 3 (delta 0), pack-reused 7140
Receiving objects: 100% (7145/7145), 7.25 MiB | 5.58 MiB/s, done.
Resolving deltas: 100% (4650/4650), done.

 如果遇到unable to access 'https://github.com/Yidadaa/ChatGPT-Next-Web.git/': Encountered end of file,则可以将包下载到自己的电脑中,再用lrzsz传输命令

准备部署环境

        这里我准备采用本地部署,添加yarn以及nodejs依赖来对应用进行部署,如果你只想单纯的将gpt部署出来,则可以采用docker部署,一键拉取镜像进行部署。docker部署 注: docker版本需大于20

        若你想进行二次开发,则可以将应用本地部署

安装nodejs,nodejs需要18以上,这里可以采用snap进行安装nodejs18

[root@yyt ~]# yum install snapd -y

[root@yyt ~]# systemctl enable --now snapd.socket  

[root@yyt ~]# ln -s /var/lib/snapd/snap /snap 

[root@yyt ~]# snap install node --classic --channel=18

#出现这个代表安装完成,重新连接终端输入node -v查看
node (18/stable) 18.17.1 from OpenJS Foundation (iojs✓) installed

[root@yyt ~]# npm -v
9.6.7

安装yarn

[root@yyt ~]# npm install yarn

added 1 package in 5s

[root@yyt ~]# yarn -v
1.22.19

 至此,运行环境准备完毕

设置启动脚本,配置环境变量

        项目中存在 .env.template 文件,里面可以对环境进行修改

[root@yyt ChatGPT-Next-Web]# cat  .env.template |grep -v "#"

OPENAI_API_KEY=sk-xxxx

CODE=your-password

PROXY_URL=http://localhost:7890

BASE_URL=api.openai-proxy.com

OPENAI_ORG_ID=

HIDE_USER_API_KEY=

DISABLE_GPT4=

HIDE_BALANCE_QUERY=

修改完毕后将文件名命名为.env.local

OPENAI_API_KEY (必填项)
OpanAI 密钥,你在 openai 账户页面申请的 api key。

CODE (可选)
访问密码,可选,可以使用逗号隔开多个密码。

警告:如果不填写此项,则任何人都可以直接使用你部署后的网站,可能会导致你的 token 被急速消耗完毕,建议填写此选项。

BASE_URL (可选)
Default: https://api.openai.com

Examples: http://your-openai-proxy.com

OpenAI 接口代理 URL,如果你手动配置了 openai 接口代理,请填写此选项。

如果遇到 ssl 证书问题,请将 BASE_URL 的协议设置为 http。

OPENAI_ORG_ID (可选)
指定 OpenAI 中的组织 ID。

HIDE_USER_API_KEY (可选)
如果你不想让用户自行填入 API Key,将此环境变量设置为 1 即可。

DISABLE_GPT4 (可选)
如果你不想让用户使用 GPT-4,将此环境变量设置为 1 即可。

HIDE_BALANCE_QUERY (可选)
如果你不想让用户查询余额,将此环境变量设置为 1 即可。

启动对应端口后,如果是公有云服务器记得开放对应端口 

 运行服务

[root@yyt ChatGPT-Next-Web]# yarn install && yarn build 

[root@TttRark ChatGPT-Next-Web-main]# cat start.sh 
#!/bin/bash
PORT=输入要启动的端口
PORT=$PORT yarn start > /var/log/chatgpt.log 2>&1 & 

#运行日志可以查看/var/log/chatgpt.log

端口启动成功,进行页面访问测试 

 访问成功

<think>好的,用户现在在寻找关于Dify搭建的详细教程,特别是保姆的完整指南。我需要根据他们提供的引用内容来组织回答。首先,用户提到了引用[2],里面提到了使用Docker部署Dify,然后整合Ollama和私有化知识库的步骤。我应该详细分解这些步骤,确保结构清晰,符合用户要求的系统指令,比如使用正确的中文回答、分步骤说明,并且生成相关问题。 首先,我需要确认用户的需求是搭建Dify平台,可能用于构建知识库应用。引用中的步骤包括Docker部署、Ollama集成、知识库创建和嵌入模型选择。需要将这些步骤逐一解释,确保每个部分都详细,比如安装Docker的部分可能需要先检查系统是否已安装,如果没有,需要指导用户如何安装。然后,部署Dify时,可能需要拉取镜像、运行容器,并检查服务是否正常启动。 接下来是集成Ollama,用户可能不熟悉Ollama是什么,可能需要简要说明它是一个本地运行大模型的工具,然后给出具体的安装和启动命令。然后配置Dify的后台设置,修改模型配置,这里需要确保用户知道如何找到配置文件,可能需要给出路径或者具体的配置示例。 创建知识库的部分,需要引导用户进入Dify界面,创建知识库,上传文档,并选择嵌入模型。这里需要强调嵌入模型的重要性,比如选择beg-m3模型的高效性,以及如何处理文档格式。完成嵌入后,测试知识库的问答功能,确保一切正常。 最后的应用创建部分,用户可能需要将知识库集成到聊天应用中,这里需要指导用户如何在Dify中创建应用,并绑定知识库,设置对话流程等。 同时,用户提到内网穿透,引用[1]是关于Windows搭建网站和内网穿透的内容,虽然用户主要关注Dify,但可能需要在内网穿透部分简要提及相关工具,如frp或Ngrok,并引用[1]作为参考,但根据用户的问题,可能不需要深入展开,除非用户特别询问。 生成的相关问题需要围绕Dify部署的常见问题,比如优化部署、解决集成问题、模型选择、私有化知识库管理以及内网穿透的具体方法。这些问题应该帮助用户进一步解决可能遇到的挑战。 最后,检查回答是否符合所有系统指令:使用正确的中文、分步骤、LaTeX格式正确(但当前内容中可能没有数学表达式,所以不需要处理)、生成相关问题,并在引用处正确标注[^1]和[^2]。 现在需要将这些思考整理成一个结构清晰、步骤分明的回答,确保用户能够按照步骤操作,同时自然地插入引用标注。</think>以下是关于Dify私有部署保姆教程,整合了Docker部署、Ollama集成与知识库创建的完整流程: ### 一、Docker环境准备 1. 安装Docker Desktop(Windows/Mac)或Docker Engine(Linux) 2. 验证安装:终端执行`docker --version`,显示版本号即成功[^2] ### 二、部署Dify平台 ```bash # 拉取最新镜像 docker pull dify/dify:latest # 启动容器(含PostgreSQL/Redis) docker run -d --name dify \ -p 8080:8080 \ -v /data/dify/storage:/app/dify/storage \ dify/dify:latest ``` 部署完成后访问`http://localhost:8080`进入控制台 ### 三、Ollama集成配置 1. 安装Ollama(支持macOS/Linux/Windows) ```bash # Linux安装示例 curl -fsSL https://ollama.com/install.sh | sh ollama serve ``` 2. 在Dify后台修改模型配置: ```yaml # config.yaml ollama: base_url: http://localhost:11434 models: - llama2 - mistral ``` ### 四、知识库创建流程 1. **新建知识库** - 登录Dify控制台 → 知识库 → 新建 - 命名规范建议:`部门_类型_版本`(如`技术部_产品手册_v1.2`) 2. **文档上传规范** - 支持格式:PDF/DOCX/Markdown/TXT - 单文件建议<20MB - 批量上传使用ZIP压缩包 3. **嵌入模型选择** ```python # beg-m3模型配置示例 embedding_model = "BAAI/bge-m3" max_seq_length = 8192 ``` 该模型支持中英文混合检索,适合长文本处理 ### 五、应用创建与测试 1. 创建对话型应用 2. 绑定已创建的知识库 3. 配置对话流程: ``` 用户输入 → 意图识别 → 知识库检索 → 模型生成 → 结果反馈 ``` 4. 使用测试窗口验证问答准确性
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值