本地部署FastGPT(windows版)

 本文章仅自学使用,结合的其他人安装教程总结的!!!!

​​​​​官方教程:Docker Compose 快速部署 | FastGPT

1、下载Docker

官网地址:Docker: Accelerated Container Application Development

我安装的是

2、打开 Docker Desktop WSL 2

  • 按照通常的安装说明安装 Docker Desktop。根据您使用的 Windows 版本,Docker Desktop 可能会提示您在安装过程中打开 WSL 2。阅读屏幕上显示的信息并打开 WSL 2 功能以继续。

  • 启动 Docker Desktop

  • 导航到 设置

  • 在 General 选项卡中,选择 Use WSL 2 based engine 如果您在支持 WSL 2 的系统上安装了 Docker Desktop,则默认情况下此选项处于打开状态。

选择应用并重新启动

现在,命令可以使用新的 WSL 2 引擎在 Windows 中使用。

3、开始部署

首先启动Docker

新建一个空的文件夹FastGPT,存放下面两种配置文件

①config.jsonraw.githubusercontent.com/labring/FastGPT/refs/heads/main/projects/app/data/config.json 

在上面网址中下载到FastGPT文件夹

// 已使用 json5 进行解析,会自动去掉注释,无需手动去除
{
  "feConfigs": {
    "lafEnv": "https://laf.dev" // laf环境。 https://laf.run (杭州阿里云) ,或者私有化的laf环境。如果使用 Laf openapi 功能,需要最新版的 laf 。
  },
  "systemEnv": {
    "vectorMaxProcess": 15, // 向量处理线程数量
    "qaMaxProcess": 15, // 问答拆分线程数量
    "tokenWorkers": 50, // Token 计算线程保持数,会持续占用内存,不能设置太大。
    "pgHNSWEfSearch": 100 // 向量搜索参数。越大,搜索越精确,但是速度越慢。设置为100,有99%+精度。
  },
  "llmModels": [
    {
      "model": "gpt-4o-mini", // 模型名(对应OneAPI中渠道的模型名)
      "name": "gpt-4o-mini", // 模型别名
      "avatar": "/imgs/model/openai.svg", // 模型的logo
      "maxContext": 125000, // 最大上下文
      "maxResponse": 16000, // 最大回复
      "quoteMaxToken": 120000, // 最大引用内容
      "maxTemperature": 1.2, // 最大温度
      "charsPointsPrice": 0, // n积分/1k token(商业版)
      "censor": false, // 是否开启敏感校验(商业版)
      "vision": true, // 是否支持图片输入
      "datasetProcess": true, // 是否设置为文本理解模型(QA),务必保证至少有一个为true,否则知识库会报错
      "usedInClassify": true, // 是否用于问题分类(务必保证至少有一个为true)
      "usedInExtractFields": true, // 是否用于内容提取(务必保证至少有一个为true)
      "usedInToolCall": true, // 是否用于工具调用(务必保证至少有一个为true)
      "usedInQueryExtension": true, // 是否用于问题优化(务必保证至少有一个为true)
      "toolChoice": true, // 是否支持工具选择(分类,内容提取,工具调用会用到。)
      "functionCall": false, // 是否支持函数调用(分类,内容提取,工具调用会用到。会优先使用 toolChoice,如果为false,则使用 functionCall,如果仍为 false,则使用提示词模式)
      "customCQPrompt": "", // 自定义文本分类提示词(不支持工具和函数调用的模型
      "customExtractPrompt": "", // 自定义内容提取提示词
      "defaultSystemChatPrompt": "", // 对话默认携带的系统提示词
      "defaultConfig": {}, // 请求API时,挟带一些默认配置(比如 GLM4 的 top_p)
      "fieldMap": {} // 字段映射(o1 模型需要把 max_tokens 映射为 max_completion_tokens)
    },
    {
      "model": "gpt-4o",
      "name": "gpt-4o",
      "avatar": "/imgs/model/openai.svg",
      "maxContext": 125000,
      "maxResponse": 4000,
      "quoteMaxToken": 120000,
      "maxTemperature": 1.2,
      "charsPointsPrice": 0,
      "censor": false,
      "vision": true,
      "datasetProcess": true,
      "usedInClassify": true,
      "usedInExtractFields": true,
      "usedInToolCall": true,
      "usedInQueryExtension": true,
      "toolChoice": true,
      "functionCall": false,
      "customCQPrompt": "",
      "customExtractPrompt": "",
      "defaultSystemChatPrompt": "",
      "defaultConfig": {},
      "fieldMap": {}
    },
    {
      "model": "o1-mini",
      "name": "o1-mini",
      "avatar": "/imgs/model/openai.svg",
      "maxContext": 125000,
      "maxResponse": 65000,
      "quoteMaxToken": 120000,
      "maxTemperature": 1.2,
      "charsPointsPrice": 0,
      "censor": false,
      "vision": false,
      "datasetProcess": true,
      "usedInClassify": true,
      "usedInExtractFields": true,
      "usedInToolCall": true,
      "usedInQueryExtension": true,
      "toolChoice": false,
      "functionCall": false,
      "customCQPrompt": "",
      "customExtractPrompt": "",
      "defaultSystemChatPrompt": "",
      "defaultConfig": {
        "temperature": 1,
        "stream": false
      },
      "fieldMap": {
        "max_tokens": "max_completion_tokens"
      }
    },
    {
      "model": "o1-preview",
      "name": "o1-preview",
      "avatar": "/imgs/model/openai.svg",
      "maxContext": 125000,
      "maxResponse": 32000,
      "quoteMaxToken": 120000,
      "maxTemperature": 1.2,
      "charsPointsPrice": 0,
      "censor": false,
      "vision": false,
      "datasetProcess": true,
      "usedInClassify": true,
      "usedInExtractFields": true,
      "usedInToolCall": true,
      "usedInQueryExtension": true,
      "toolChoice": false,
      "functionCall": false,
      "customCQPrompt": "",
      "customExtractPrompt": "",
      "defaultSystemChatPrompt": "",
      "defaultConfig": {
        "temperature": 1,
        "stream": false
      },
      "fieldMap": {
        "max_tokens": "max_completion_tokens"
      }
    }
  ],
  "vectorModels": [
    {
      "model": "text-embedding-ada-002", // 模型名(与OneAPI对应)
      "name": "Embedding-2", // 模型展示名
      "avatar": "/imgs/model/openai.svg", // logo
      "charsPointsPrice": 0, // n积分/1k token
      "defaultToken": 700, // 默认文本分割时候的 token
      "maxToken": 3000, // 最大 token
      "weight": 100, // 优先训练权重
      "defaultConfig": {}, // 自定义额外参数。例如,如果希望使用 embedding3-large 的话,可以传入 dimensions:1024,来返回1024维度的向量。(目前必须小于1536维度)
      "dbConfig": {}, // 存储时的额外参数(非对称向量模型时候需要用到)
      "queryConfig": {} // 参训时的额外参数
    },
    {
      "model": "text-embedding-3-large",
      "name": "text-embedding-3-large",
      "avatar": "/imgs/model/openai.svg",
      "charsPointsPrice": 0,
      "defaultToken": 512,
      "maxToken": 3000,
      "weight": 100,
      "defaultConfig": {
        "dimensions": 1024
      }
    },
    {
      "model": "text-embedding-3-small",
      "name": "text-embedding-3-small",
      "avatar": "/imgs/model/openai.svg",
      "charsPointsPrice": 0,
      "defaultToken": 512,
      "maxToken": 3000,
      "weight": 100
    }
  ],
  "reRankModels": [],
  "audioSpeechModels": [
    {
      "model": "tts-1",
      "name": "OpenAI TTS1",
      "charsPointsPrice": 0,
      "voices": [
        { "label": "Alloy", "value": "alloy", "bufferId": "openai-Alloy" },
        { "label": "Echo", "value": "echo", "bufferId": "openai-Echo" },
        { "label": "Fable", "value": "fable", "bufferId": "openai-Fable" },
        { "label": "Onyx", "value": "onyx", "bufferId": "openai-Onyx" },
        { "label": "Nova", "value": "nova", "bufferId": "openai-Nova" },
        { "label": "Shimmer", "value": "shimmer", "bufferId": "openai-Shimmer" }
      ]
    }
  ],
  "whisperModel": {
    "model": "whisper-1",
    "name": "Whisper1",
    "charsPointsPrice": 0
  }
}
  • ②docker-compose.yml
  • 在FastGPT文件夹中打卡cmd
  • 输入该命令
  • curl -o docker-compose.yml https://raw.githubusercontent.com/labring/FastGPT/main/files/docker/docker-compose-pgvector.yml

    下载:docker-compose.yml

  • 下载完成后:
  • 还是在该文件夹中打开cmd依次输入以下命令:
  • # 在 docker-compose.yml 同级目录下执行 docker-compose pull docker-compose up -d
    # 在 docker-compose.yml 同级目录下执行
    docker-compose pull
    docker-compose up -d

  • 完成后可以在 docker 软件看到如下界面(绿色表示启动成功、黄色表示启动失败)
  • 4、浏览器访问

  • docker 里点击 fastgpt 的 Port 直接跳转或者浏览器输入 http://localhost:3000
  • 登录用户名为 root,密码为 1234(密码是 docker-compose.yml 环境变量里设置的 DEFAULT_ROOT_PSW。如果需要修改 root 密码,直接修改这个环境变量,并重启即可。)

    看到如下界面即为 FastGPT 启动成功

### FastGPTWindows上的本地部署 对于希望在 Windows 上实现 FastGPT本地部署,一种有效的方法是利用 WSL2 (Windows Subsystem for Linux 2),这使得可以在 Windows 中运行完整的 Linux 环境而无需修改主机操作系统。此方法允许用户在一个更接近原生 Linux 系统的环境中操作,这对于许多机器学习框架和工具来说是非常理想的环境设置[^2]。 #### 安装并配置WSL2 为了准备适合 FastGPT 运行的基础平台,在开始之前需先确认已安装最新本的 WSL2 和 Ubuntu 发行作为默认使用的 Linux 子系统。可以通过 Microsoft Store 或者命令提示符来完成这一过程。一旦选择了合适的发行,则应更新软件包列表并安装必要的依赖项: ```bash sudo apt update && sudo apt upgrade -y ``` #### 设置开发环境 接下来要创建一个良好的 Python 开发环境用于支持 FastGPT 及其相关组件的工作。推荐使用 `conda` 来管理虚拟环境及其所需的库文件。如果尚未安装 Anaconda 或 Miniconda,请访问官方网站获取最新的安装指南。之后可以建立一个新的 conda 虚拟环境专门服务于当前项目需求: ```bash conda create --name fastgpt_env python=3.8 conda activate fastgpt_env pip install torch torchvision torchaudio cudatoolkit=11.3 -c pytorch ``` 上述指令假设读者正在寻找 GPU 加速的支持;如果不打算使用 NVIDIA 显卡的话则不需要指定 `-c pytorch` 参数下的 CUDA 本号。 #### 获取FastGPT源码及相关资源 考虑到直接从 GitHub 克隆官方仓库可能遇到网络连接不稳定的问题,另一种更为便捷的方式是从第三方提供的百度云盘链接下载预先打包好的压缩包形式的 FastGPT 应用程序以及训练数据集等资料[^3]。解压后进入对应的目录继续后续步骤前记得调整权限以便顺利执行脚本文件: ```bash unzip /path/to/downloaded/fastgpt.zip -d ~/fastgpt_project/ cd ~/fastgpt_project/ chmod +x *.sh ``` #### 启动服务端口映射至宿主机 为了让外部设备能够访问到由 WSL2 内部启动的服务实例,通常还需要额外配置端口转发规则使两者之间建立起有效的通信桥梁。具体做法是在 PowerShell 下输入如下所示的一条或多条命令以开放特定范围内的 TCP/IP 地址给目标应用程序监听使用: ```powershell netsh interface portproxy add v4tov4 listenport=7860 listenaddress=0.0.0.0 connectport=7860 connectaddress=$(wsl hostname).local ``` 此处假定 FastAPI 默认占用的是 7860 端口号,实际应用时可根据实际情况作出相应更改。 #### 测试与验证 最后一步就是检验整个流程是否成功实现了预期效果——即能够在浏览器地址栏里键入 http://localhost:7860 并看到 FastGPT Web UI 页面加载出来。此时意味着已经完成了基于 Windows 操作系统的 FastGPT 局域网内部署工作。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值