这个项目能做什么
TextGen 是一个开源桌面应用,用于在本地运行大型语言模型。它专为注重隐私的用户设计,他们希望拥有类似 ChatGPT 的界面,而无需将数据发送到外部服务:项目声称它 100% 离线,零遥测、零外部资源、零远程更新请求。
入门很快。Linux、Windows 和 macOS 的便携版本以发布形式提供,包含 CUDA、Vulkan、ROCm 和仅 CPU 的变体,并包含所有依赖项。解压并启动后,会打开一个窗口。来自 Hugging Face 的 GGUF 模型可以放入 user_data/models 文件夹,并自动检测到。对于需要额外后端、训练、图像生成或扩展的用户,还提供了完整的安装路径;它使用 Miniforge/Conda 或一键启动脚本,大约需要 10GB 磁盘空间。
核心功能包括:
- 聊天和生成:指令模式用于指令遵循,以及用于自定义角色的聊天和聊天指令模式,提示通过 Jinja2 模板格式化。笔记本选项卡支持自由格式生成。
- 多模态输入:可以将图像附加到消息中以进行视觉理解,也可以上传文本文件、PDF 和 .docx 文档进行讨论。
- 对话管理:编辑消息,在消息版本之间导航,并分支对话。
- 多后端:llama.cpp、ik_llama.cpp、Transformers、ExLlamaV3 和 TensorRT-LLM,无需重启即可切换后端和模型。
- API 兼容性:兼容 OpenAI/Anthropic 的 Chat、Completions 和 Messages 端点,支持工具调用,定位为这些 API 的本地替代品。
- 工具调用:模型可以调用自定义函数,如网页搜索、页面抓取和数学计算;每个工具是一个单独的 Python 文件,并支持 MCP 服务器。
- 训练:在多轮聊天或原始文本数据集上微调 LoRA,支持可恢复的运行。
- 图像生成:专用选项卡用于 diffusers 模型,支持 4 位/8 位量化,并有一个持久画廊存储图像元数据。
- 界面:深色/浅色主题、代码语法高亮、LaTeX 渲染,以及内置或社区扩展,包括 TTS、语音输入和翻译。
该项目提供了广泛的命令行标志集,涵盖模型加载器、上下文和 KV 缓存选项、推测解码、GPU 层卸载、张量分割、量化、采样参数以及服务器/API 配置。提供了适用于 NVIDIA、AMD、Intel 和仅 CPU 设置的 Docker Compose 文件。
TextGen 最好被理解为本地模型运行时和聊天前端,而不是托管服务。其主要价值在于将桌面 UI、兼容 OpenAI 的 API 和模型管理整合到一个离线包中,适合希望在自己的硬件上实验或部署本地 LLM 同时保留数据的用户。
评论
0 评分人数达到10人后显示
登录后参与讨论。