news 2026/8/31 20:05:36

TextGen 本地大模型部署实战:从克隆到 API 调用的完整路线

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
TextGen 本地大模型部署实战:从克隆到 API 调用的完整路线

TextGen 本地大模型部署实战:从克隆到 API 调用的完整路线

【免费下载链接】textgenOpen-source desktop app for local LLMs. Text, vision, tool-calling, OpenAI/Anthropic-compatible API. 100% private.项目地址: https://gitcode.com/GitHub_Trending/te/textgen

TextGen 是一个开源的本地大模型桌面应用与 Web UI,支持文本、视觉、工具调用,并提供 OpenAI/Anthropic 兼容的 API,全程离线、无遥测。适合想在个人电脑或服务器上跑私有 LLM、又不想配置云服务环境的开发者与新手。下面按硬件选路线,再给最短可跑通的部署步骤和调优参数。

按硬件选部署路线

你的环境推荐路线依赖文件对应章节
NVIDIA GPU(Windows/Linux)一键脚本或 venv + CUDA 版 llama.cpprequirements/full/requirements.txtrequirements/portable/requirements.txt最小可用部署
AMD GPU一键脚本,选 AMD 分支requirements/full/requirements_amd.txt最小可用部署
无 GPU 的 x86 服务器venv + CPU 依赖requirements/full/requirements_cpu_only.txt最小可用部署
Apple Silicon / Intel Mac一键脚本或 venv + MPS 依赖requirements/full/requirements_apple_silicon.txt最小可用部署
容器化服务器Docker Composedocker/nvidia/docker/cpu/Docker 容器化部署

依赖文件分requirements/full/(含 Transformers、训练、绘图等完整后端)和requirements/portable/(仅 llama.cpp 后端,体积更小)两套,按硬件后缀选择即可。

最小可用部署:venv 五步跑通

以 Linux/macOS 为例(Windows 把source venv/bin/activate换成venv\Scripts\activate):

git clone https://gitcode.com/GitHub_Trending/te/textgen cd textgen python -m venv venv source venv/bin/activate
  • 第 1 步成功标志:本地出现textgen/目录。
  • 第 3 步成功标志:出现venv/目录。

安装依赖并启动:

pip install -r requirements/portable/requirements.txt --upgrade python server.py --portable --api --auto-launch
  • 安装成功标志:终端无ERROR: Could not find a version that satisfies
  • 启动成功标志:浏览器自动打开http://127.0.0.1:7860,出现 Chat/Default/Parameters 等标签页。

放模型:从 Hugging Face 下载任意 GGUF 文件,放入user_data/models/,界面会自动识别,无需重启。Transformers 或 ExL3 等多文件模型需放在user_data/models/下的独立子文件夹中,且必须用 full 版安装。

不想手搭环境也可以直接跑 start_linux.sh(或start_windows.batstart_macos.sh),脚本会自动装 Miniforge 环境,按提示选 GPU 厂商,装完同样访问http://127.0.0.1:7860

启动参数持久化写法

两层配置,作用域不同:

持久化配置——写入 user_data/CMD_FLAGS.txt,每次启动server.py都会读取,适合固定的网络与加载策略:

  • --listen:绑定 0.0.0.0,允许局域网访问
  • --api:启用 OpenAI/Anthropic 兼容 API(默认端口 5000)
  • --model MODEL_NAME:启动时直接加载指定模型
  • --idle-timeout 60:闲置 60 分钟后自动卸载模型释放显存
  • --settings user_data/settings.yaml:从 YAML 加载默认界面设置

界面内即时配置——Parameters 标签页,改动立即生效且随会话保存,适合实验单个采样参数;两者冲突时以启动参数为准。核心生成参数与推荐区间:

参数含义推荐区间
max_new_tokens单次生成上限,过高会挤占提示词截断空间512–2048
temperature随机性主旋钮,0 为确定性解码0.7–1.2
top_p核采样阈值,与 top_k 二选一即可0.9–1.0
min_p相对最高概率的淘汰线,替代 top_k 时更稳0.02–0.1
repetition_penalty重复惩罚,1 为关闭1.0–1.2
截断长度防止提示词超出模型上下文模型 ctx − 512

现成参数组合可直接用user_data/presets/下的 Creative.yaml(min_p 0.02 + xtc 0.5)、Deterministic.yaml、Top-P.yaml,在 Preset 菜单中加载。

进阶场景

低显存量化加载

显存紧张时换 Transformers 后端并降精度(需 full 版依赖中的 bitsandbytes):

--load-in-4bit --use_double_quant

4-bit + 双重量化下,8B 模型权重大约占 4.5–5GB 显存。配合--ctx-size 8192压低 KV cache,--gpu-layers控制放卡上的层数(llama.cpp 后端设-1为尽量全放)。纯 CPU 机器用--cpu --threads 8(8 为物理核心数)。

局域网远程访问

user_data/CMD_FLAGS.txt追加--listen,重启后从局域网用http://<服务器IP>:7860访问。多人共用加--multi-user(不保存聊天记录)。注意--listen会向同网段所有设备暴露 UI,公共网络下请配合防火墙限制来源 IP。

Docker 容器化部署

以 NVIDIA 为例(AMD/Intel/CPU 换成docker/amddocker/inteldocker/cpu):

ln -s docker/nvidia/{Dockerfile,docker-compose.yml,.dockerignore} . cp docker/.env.example .env mkdir -p user_data/logs user_data/cache docker compose up --build

编辑本地.envTORCH_CUDA_ARCH_LIST按显卡填(RTX 30 系 8.6、40 系 8.9),APP_RUNTIME_GID填宿主机id -g的输出,HOST_PORT默认 7860、API 端口HOST_API_PORT默认 5000。端口被占用时改.env里的HOST_PORT。完整说明见 docs/09 - Docker.md。

故障自查

现象可能原因处置动作
加载模型报 CUDA out of memory量化精度或 ctx 过大换 4-bit GGUF,或--ctx-size 8192--gpu-layers减层
pip install报依赖冲突系统 Python 装了冲突包用 venv/conda 隔离,勿污染系统环境
局域网打不开 7860未开--listen或防火墙拦截user_data/CMD_FLAGS.txt--listen,放行 7860/5000 端口
启动卡住或后端报错requirements 选错硬件分支按硬件换回对应requirements_*.txt重装,--upgrade
模型列表为空模型没放对目录GGUF 放user_data/models/根下,多文件模型放子文件夹
API 调不通未加--api或端口不符确认--api已启用,请求指向http://127.0.0.1:5000

下一步

  1. 用 docs/03 - Parameters Tab.md 逐条对照采样参数,把 Parameters 页的 top_k、tfs、penalty 系列各跑一轮对比输出差异。
  2. 阅读 docs/07 - Extensions.md,把 TTS、语音输入、机器翻译扩展放进user_data/extensions/试装。
  3. 参考user_data/tools/下的 web_search.py 写一个自己的工具函数,验证工具调用链路。

【免费下载链接】textgenOpen-source desktop app for local LLMs. Text, vision, tool-calling, OpenAI/Anthropic-compatible API. 100% private.项目地址: https://gitcode.com/GitHub_Trending/te/textgen

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/31 20:04:54

基于STM32的智能家居控制系统设计:红外遥控空调实现详解

简介&#xff1a;这是一套面向嵌入式开发初学者与物联网实践者的STM32智能家居控制系统完整工程资源&#xff0c;聚焦红外遥控空调控制这一特色功能&#xff0c;解决环境感知、本地自动决策与多模态远程交互的典型应用问题。压缩包含448个文件&#xff0c;总大小82.36MB&#x…

作者头像 李华
网站建设 2026/8/31 20:02:47

Umi-OCR 离线文字识别指南:免费、可批量的一站式 OCR 方案

Umi-OCR 离线文字识别指南&#xff1a;免费、可批量的一站式 OCR 方案 【免费下载链接】Umi-OCR OCR software, free and offline. 开源、免费的离线OCR软件。支持截屏/批量导入图片&#xff0c;PDF文档识别&#xff0c;排除水印/页眉页脚&#xff0c;扫描/生成二维码。内置多国…

作者头像 李华
网站建设 2026/8/31 20:01:55

商汤校招笔试复盘:AI公司笔试考点与备考策略全解析

2018年我参加了商汤科技校招笔试第二场&#xff0c;投递的是后端方向&#xff0c;但卷子拿在手里一翻&#xff1a;C/C、算法开发、大数据、数据挖掘、运维、测试的题目全在里面。很多同学考完回到群里第一句话都是"这考的是同一个岗位吗"。其实这场笔试很典型&#x…

作者头像 李华
网站建设 2026/8/31 20:01:52

商汤Android校招笔试复盘:从Binder到图片加载库的考点全解析

开头2018年秋天&#xff0c;我坐在商汤科技校招笔试的考场里&#xff0c;面对那张Android开发工程师的试卷&#xff0c;第一反应是“这公司的笔试怎么一股算法味儿”。说实话&#xff0c;当时很多同学是冲着AI公司的光环去的&#xff0c;以为Android岗就是考四大组件、写个界面…

作者头像 李华
网站建设 2026/8/31 20:01:34

Qwen3 在 text-generation-webui 中稳定聊满 10 轮:5 个关键配置

Qwen3 在 text-generation-webui 中稳定聊满 10 轮&#xff1a;5 个关键配置 【免费下载链接】textgen Open-source desktop app for local LLMs. Text, vision, tool-calling, OpenAI/Anthropic-compatible API. 100% private. 项目地址: https://gitcode.com/GitHub_Trendi…

作者头像 李华
网站建设 2026/8/31 20:01:32

Umi-OCR 完全上手指南:快速完成离线批量图片识别

Umi-OCR 完全上手指南&#xff1a;快速完成离线批量图片识别 【免费下载链接】Umi-OCR OCR software, free and offline. 开源、免费的离线OCR软件。支持截屏/批量导入图片&#xff0c;PDF文档识别&#xff0c;排除水印/页眉页脚&#xff0c;扫描/生成二维码。内置多国语言库。…

作者头像 李华