text-generation-webui(现称textgen)是一个面向本地大语言模型的开源桌面应用程序,同时提供Gradio网页界面。其核心理念是让用户在本地运行大模型,实现100%离线与隐私保护,软件不含遥测、不请求外部资源,也不进行远程更新。
主要能力:
- 支持多种模型格式与后端,包括llama.cpp、ik_llama.cpp、Transformers、ExLlamaV3、TensorRT-LLM等,并可在不重启的情况下切换后端与模型。
- 提供instruct模式(类似ChatGPT的指令跟随)、chat-instruct与chat模式(用于与自定义角色对话),提示词通过Jinja2模板自动格式化。
- 支持视觉(多模态)功能,可向消息附加图片进行视觉理解;支持上传文本文件、PDF和.docx文档并针对其内容进行对话。
- 支持消息编辑、版本切换以及对话分支。
- 提供Notebook标签页,用于对话之外的自由文本生成。
- 提供兼容OpenAI/Anthropic的API,包括Chat、Completions和Messages端点,并支持工具调用,可作为OpenAI/Anthropic API的本地替代方案。
- 支持工具调用,模型可在对话中调用自定义函数,包括网页搜索、页面抓取和数学计算;每个工具为一个.py文件;同时支持MCP服务器。
训练与图像生成:
- 训练:可在多轮对话或原始文本数据集上微调LoRA,并支持中断后恢复运行。
- 图像生成:提供专门标签页用于diffusers模型(如Z-Image-Turbo),支持4位/8位量化,以及带图像元数据的持久化图库。
界面与扩展:
- 提供深色/浅色主题、代码块语法高亮、数学表达式LaTeX渲染。
- 内置及社区扩展包括TTS、语音输入和翻译等。
使用方式:
- 快速启动:下载便携版压缩包,解压后双击textgen即可打开窗口。便携版支持Linux、Windows和macOS,含CUDA、Vulkan、ROCm及纯CPU选项,所有依赖已包含,兼容GGUF(llama.cpp)模型。如需ExLlamaV3、Transformers等额外后端、训练、图像生成及扩展,则需完整安装。
- 下载模型:从Hugging Face下载GGUF模型文件,放入user_data/models文件夹,UI会自动识别。多文件模型(如16位Transformers模型和EXL3模型)应放入user_data/models下的子文件夹,且这些格式需要完整安装而非便携版。
- 一键安装:克隆仓库或下载源码解压,运行对应系统的启动脚本start_windows.bat、start_linux.sh或start_macos.sh,按提示选择GPU厂商,安装完成后在浏览器打开http://127.0.0.1:7860。
- 安装后可通过同一start_脚本重启;可直接传递命令行参数(如./start_linux.sh --help)或在user_data/CMD_FLAGS.txt中持久化(如--api启用API);通过update_wizard_脚本更新;删除installer_files文件夹后重新运行start_脚本可重装。
- 脚本内部使用Miniforge在installer_files/中创建Conda环境;可通过cmd_linux.sh、cmd_windows.bat或cmd_macos.sh进入交互式shell。
- 也支持基于Conda的完整安装和Docker Compose(需v2.17及以上)部署。
- 若要在启动时自动加载模型,可在user_data/CMD_FLAGS.txt中添加模型文件名(如把my-model.gguf替换为user_data/models中的文件名),额外参数每行一个。
适用场景:适合希望在本地私密运行大语言模型的用户,用于文本对话、多模态理解、文档问答、工具调用与网页搜索、API替代、LoRA微调及图像生成等场景。
限制与补充:关于具体收费、价格、平台覆盖范围、模型性能效果等方面,官方文本未提供明确说明,暂未提供。