LongWriter

让长上下文模型一口气写出万字长文,告别输出截断。

LongWriter 是一个旨在释放长上下文大语言模型(LLM)万字级生成能力的开源项目,由清华大学提出,相关论文被 ICLR 2025 接收。它解决了当前长上下文模型虽能处理超长输入,但输出长度通常受限于训练数据中短文本的问题。项目核心能力包括:提出 AgentWrite 方法,将超长写作任务分解为子任务,通过规划与分步生成突破输出长度瓶颈;基于此构建了 LongWriter-6k 数据集,包含 6000 条长度从 2k 到 32k 不等的指令数据;并训练出 LongWriter 系列模型(如 LongWriter-llama3.1-8b),支持单次生成超过 10000 字的高质量中文和英文内容。项目提供完整的训练、推理和评估代码,以及模型权重,方便开发者复现和二次开发。

开源 free 开源模型
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 1876
维护状态 低维护
是否开源 是
定价模式 free

项目数据

分类开源模型
开发团队THUDM
所属国家
官网地址
定价模式free
价格说明开源模型,Apache-2.0许可,可免费本地部署使用,无在线服务。
访问状态
是否开源是
开源协议Apache-2.0
主要语言Python
技术栈/模型fine-tuning,llm,long-context,long-text
GitHub 星标★ 1876
30天Star增速
HF 下载量
上线时间2024-08-12 00:00:00
最近更新2026-09-15 00:00:00
维护状态低维护
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数2

使用教程

难度:进阶 约 20 分钟 部署方式:模型权重 5 步

环境要求

  • Python 环境(项目开发语言为 Python)
  • transformers>=4.43.0(README 推荐的部署版本)
  • NVIDIA GPU 与 CUDA 环境(脚本以 CUDA_VISIBLE_DEVICES 指定显卡)
  • 可访问 HuggingFace 以下载 THUDM/LongWriter-glm4-9b 或 LongWriter-llama3.1-8b 权重

安装与启动步骤

  1. 1获取项目代码

    克隆 LongWriter 仓库并进入目录,trans_web_demo.py 等脚本都在仓库根目录下。

    git clone https://github.com/THUDM/LongWriter.git
    cd LongWriter
  2. 2安装推理依赖

    README 明确推荐使用 transformers>=4.43.0 才能正常部署模型,先升级到该版本。

    pip install "transformers>=4.43.0"
  3. 3脚本加载模型对话

    用官方示例代码加载 LongWriter-glm4-9b,提问 10000 字写作任务并打印结果,注意设置较大的 max_new_tokens。

    from transformers import AutoTokenizer, AutoModelForCausalLM
    import torch
    tokenizer = AutoTokenizer.from_pretrained("THUDM/LongWriter-glm4-9b", trust_remote_code=True)
    model = AutoModelForCausalLM.from_pretrained("THUDM/LongWriter-glm4-9b", torch_dtype=torch.bfloat16, trust_remote_code=True, device_map="auto")
    model = model.eval()
    query = "Write a 10000-word China travel guide"
    response, history = model.chat(tokenizer, query, history=[], max_new_tokens=32768, temperature=0.5)
    print(response)
  4. 4启动网页版 Chatbot

    README 给出的自建 Chatbot 方式,用 CUDA_VISIBLE_DEVICES=0 指定 0 号显卡运行仓库内脚本。

    CUDA_VISIBLE_DEVICES=0 python trans_web_demo.py
  5. 5vllm 高速推理

    README 称用 vllm 可在一分钟内生成万字,示例代码在 vllm_inference.py;需自行按 vllm 官方说明装好 vllm。

    python vllm_inference.py

关键配置

配置项必填说明示例
max_new_tokens是控制单次生成的最大长度,长文写作需设得足够大32768
temperature否采样温度,示例中设为 0.50.5
torch_dtype否模型加载精度,示例使用 bfloat16torch.bfloat16
device_map否设备分配方式,auto 表示自动分配到可用显卡auto
trust_remote_code是加载 THUDM 模型时需允许执行远程代码True
CUDA_VISIBLE_DEVICES否指定运行 Web Demo 使用的显卡编号0

如何确认成功

脚本运行无报错并打印出万字级长文响应;Web Demo 脚本启动后在浏览器中可正常对话生成。

常见问题

Q:生成的内容长度远不到一万字怎么办?

A:把 max_new_tokens 调大(示例为 32768),并在提问中明确写出目标字数,例如 Write a 10000-word China travel guide。

Q:显存不足、模型加载失败怎么办?

A:使用 device_map="auto" 自动分配显存,或改用更小的模型,也可参考 vllm_inference.py 用 vllm 部署以提升吞吐。

Q:如何让生成速度更快?

A:README 推荐用 vllm 部署 LongWriter,示例见仓库中的 vllm_inference.py,可在一分钟生成 10000+ 字。

Q:加载模型时报错提示需要信任远程代码?

A:确认 transformers 版本不低于 4.43.0,并在 from_pretrained 中传入 trust_remote_code=True。

Q:有没有更新的更强模型?

A:2025/06/23 项目发布了 LongWriter-Zero-32B,用纯强化学习训练,长文写作效果优于 LongWriter。

注意事项

  • 模型权重较大,首次从 HuggingFace 下载耗时较长,请预留磁盘与网络时间。
  • LongWriter-glm4-9b 与 LongWriter-llama3.1-8b 分别基于 GLM-4-9B 和 Meta-Llama-3.1-8B 训练,属对应论文中的 LongWriter-9B-DPO 与 LongWriter-8B。
  • README 未给出 Web Demo 的访问端口,启动后请以终端输出的实际地址为准。
  • 推理需要 GPU 支持,建议显存充足并优先使用 bfloat16 精度加载。

核心亮点

  • 提出 AgentWrite 规划-写作两阶段方法,有效突破模型输出长度限制,实测可生成 10000+ 字连贯内容。
  • 开源了 LongWriter-6k 训练数据集和模型权重,覆盖 2k 到 32k 长度,便于社区复现和微调。
  • 在长文本生成质量上优于现有长上下文模型,如 GPT-4o 和 Claude 3.5,且支持中英文。

不足之处

  • 主要针对 8B 规模模型验证,更大规模(如 70B)效果未充分展示,可能限制实际应用。
  • 文档/社区待观察:项目仍处于成长阶段,英文文档为主,中文资料较少,社区生态尚不成熟。

适用场景

  • 需要生成万字级长报告、论文或小说等专业写作场景。
  • 在长上下文模型基础上扩展输出能力,用于自动化内容创作。
  • 研究长文本生成技术,作为对比基线或改进起点。

替代项目

LongBench、LongEval、LongAlpaca

项目介绍

LongWriter 是开源模型领域的开源项目,由 THUDM 开发,2024 年首次发布。

在全站 13,014 个收录项目中,它的 GitHub 星标数(1,876)位列前 30%,在开源模型分类中处于中上游。

项目已超过三个月没有代码更新,维护节奏明显放缓,最近一次代码更新于 2026-09-15。Apache-2.0许可,可免费本地部署使用,无在线服务。

它主要面向的使用场景是:需要生成万字级长报告、论文或小说等专业写作场景。同类可对比的替代方案包括 LongBench、LongEval、LongAlpaca。

上一篇:llama2-webui

下一篇:MiniOneRec

同类项目推荐

Machine-Learning 开源

跟着博客笔记,边看边跑机器学习代码

All content related to machine learning from my blog

★ 115 2026-08-09
CoreML-Models 开源

下载即用的苹果端 AI 模型库,免去转换烦恼

Core ML model zoo for iOS/macOS — PyTorch models converted to ready-to-use .mlpacka···

★ 1873 2026-08-10