如何 AI「拼好文」:生成万字报告,不限模型

搜索
AI-TNT
正文
资源拓展
如何 AI「拼好文」:生成万字报告,不限模型
2025-04-23 11:38

今天没有产品发布


来聊一种方法
让任何模型,都能写万字长文


没错,堪称赛博德鲁伊:

Buff 拍上去,GPT-3.5 也能写万字报告


最近,Agent 圈神仙打架:


Manus 爆火、Fellou 接棒、扣子空间紧随其后...


这些项目各有特色,但都会掏出一个共同的 Demo:生成一篇长报告


如何 AI「拼好文」:生成万字报告,不限模型

Manus 官方示例


长报告这东西,看起来平平无奇,实则难如登天。


你可以让 AI 写一下,然后发现:


开头不错,后面瞎扯
材料用了,重点没有
洋洋洒洒,言之无物


今天,我们要介绍的,是一个方法论:


拿结构当核心,多步生成,构建完整而清晰的长文


方法来自刚发的论文:


《LLM×MapReduce-V2: Entropy-Driven Convolutional Test-Time Scaling for Generating Long-Form Articles from Extremely Long Resources》
LLM×MapReduce-V2:用信息熵和卷积机制,指导大模型写出结构清晰的长文档


如何 AI「拼好文」:生成万字报告,不限模型

所谓 v2,是因为之前有过 v1


名字很长,后面就叫它 MapReduce-V2,作者是清华 NLP、OpenBMB 和面壁团队。


论文:https://arxiv.org/abs/2504.05732


Git:https://github.com/thunlp/LLMxMapReduce/tree/main

你可以直接下来这个项目来用


对此,官方配了一个很抽象的 Demo,叫做卷姬,可以在这里试试:

https://surveygo.thunlp.org/


(卷姬用卷积...谐音梗扣钱啊喂)


如何 AI「拼好文」:生成万字报告,不限模型

Survey Go 首页 https://surveygo.thunlp.org/


如何 AI「拼好文」:生成万字报告,不限模型

示例会在飞书里展示


如何 AI「拼好文」:生成万字报告,不限模型

神金啊...


总览:MapReduce-V2


MapReduce-V2 不复杂,不需要任何的特定模型,不需要进行微调,单纯就是一个流程优化,赛博Buff


在这个方法中,不试图「一口气写完一万字」,而是按部就班、写完一段是一段,总计写出场文本。


包含三个主要步骤
1、Encode,准备素材
2、整理大纲,核心操作,包含摘要、提纲、结构优化
3、Decode,按结构逐段生成内容


太长不看版


整个方法,按流程有三段:


第一步,把主题变成可以处理的素材。


你可以把已有的资料扔进去,AI 会自动整理成统一格式;


当然,也可以什么都不给,就一句“如何变得更聪明”,它会自己拆关键词、去网上找内容、筛掉废话,最后拼出来可用素材。


如何 AI「拼好文」:生成万字报告,不限模型

第一步:通过主题选素材


第二步,出大纲,是核心操作。


在这一步中,AI 会先把材料都过一遍,按提纲分章节做摘要,同时备注建议;


接着,它用这些内容搭出一个初步大纲。


最后,再通过多轮优化,筛掉冗余、合并相近、拉直逻辑线,最后产出一份结构清晰、能指导写作的文章骨架。


如何 AI「拼好文」:生成万字报告,不限模型

第二步:出大纲


最后一步,是写作


这一步中,AI 不会试图“一把写完”,而是人一样:


  • 先挨个的写出各个章节
  • 把章节串成文章
  • 润色所有内容,配上图表、加上引用


最终,搞出一个「拼好文」


如何 AI「拼好文」:生成万字报告,不限模型

最终,AI 拼好文


再长都看版


如果你想深度了解,可以接着往下看。


让我们硬核一点,细致些,包含了各种 Prompt 示例。


Encode:素材准备


对于素材准备,MapReduce-V2 支持两种输入方式:


  • 其一,上传素材,AI 整理格式
  • 其二,定主题,AI 自己搜


如何 AI「拼好文」:生成万字报告,不限模型

两种素材设定方式


用户上传素材


用户侧,可以上传各种参考文献(包含标题、摘要、正文),AI 会统一格式,转化为结构化输入。


用户给定主题


这里,AI 会自动执行一套流程,把材料找齐,按一下步骤:


  1. 利用 AI 做要点分拆,得到一系列搜索关键词;
  2. 通过搜索引擎获取相关网页;
  3. 异步爬取网页内容,过滤无关信息;
  4. 计算主题相似度、筛选高质量材料,最终选出最相关的 Top-N 文献。


**划重点 **
这一阶段的关键不在“找得多”,而在于“找得准”。
AI 不仅负责找内容,也要负责过滤内容,以确保输入材料可用性和结构性。


用到的主要 Prompt


# LLM_search prompts

SEARCH_SYSTEM_PROMPT_WITH_ABSTRACT="""您是一名行业研究专家,负责就 {topic} 的主题撰写一份综合报告。报告应遵守以下要求:{abstract}。要收集必要的信息,您需要进行在线调研。请生成一组搜索查询,帮助您检索报告的相关数据和见解。

"""


SEARCH_USER_PROMPT="""将当前查询中模糊的概念分解为更具体的子概念,以实现更精确的搜索。例如,“外国”可以进一步分解为在报告领域内具有代表性的特定国家或地区。


输出格式:

```markdown

query_1;

query_2;

...

```

"""

整理大纲:结构生成


AI 开始干活,从这一步开始,主要分三步:


1. Digest:结构化摘要


在这里,AI 会围绕着大钢结构,逐篇处理材料,针对性地生成摘要。


比如,假定大纲,在刚刚的“如何变得更聪明”里有一节是“什么是聪明”,它就只抽出「有关聪明」的信息来提炼。


同时它还会留下一串建议:这一节没有数据支撑,或者这一节可以分两块写。


用到的主要 Prompt


你是一个专业的学术助手...


# 背景

目前,你正在协助编写一篇学术综述报告。...


# 任务描述

**你的任务**是基于综述报告的预定义**大纲**,为提供的**参考文章**生成该摘要。你必须遵循每个部分的描述指引,从参考文章的完整内容中提取信息。最终生成的摘要将作为参考文章的代表性总结,便于在进一步的综述撰写过程中使用。此外,根据完整的文章,你还需要提供改进大纲质量的建议。


## 摘要生成原则

**请遵循以下原则来生成文章摘要**:

1. **识别相关部分**:首先回顾大纲,识别与参考文章内容最相关的部分。...

2. **内容精炼**:对于相关部分,严格按照部分描述中的指导进行精炼。...

3. **忠实性**:在整个过程中,确保不引入任何未被原文支持的新事实或解释,忠实于原文章的发现...


## 建议生成原则

...


# 输入材料

## 参考文章的Bibkey

[\"{paper_bibkey}\"]


## 初步大纲

{survey_outline}


## 参考文章

{paper_content}


# 输出要求

## 格式要求

1. **输出格式**:摘要必须使用Markdown格式。摘要部分用一个```markdown\\n```整体括起来。大纲中的所有章节标题(包括总标题)必须出现在摘要中,并保持相同层级;不要跳过或省略任何部分。摘要的总标题和子标题应该与大纲的总标题和子标题保持一致。你不许在```markdown\\n```中嵌套任何额外的```markdown\\n```。

2. **引用格式**:需要在句子末尾加上[\"{paper_bibkey}\"],以指定信息的来源。如果信息并非直接来自文章,可以不加引用。摘要和建议中均需要包含引用。

3. **公式格式**:如果输出中有公式,请使用LaTeX格式表示。例如,内联公式使用$y = x^2$,块状公式使用$$y = x^2$$。

4. **建议格式**:建议应以```suggestion\\n```括起来。只需要提供建议,不需要提供修改后的新大纲。

## 格式示例

```markdown

{outline_example}

```


建议:

```suggestion

给出你对大纲修改的建议,以便更好地利用这篇文章作为参考。

```


2. Skeleton:立大纲


所有摘要出来之后,AI 会用这些材料搭出一份初步的大纲。


这是一个带有“任务描述”的 Markdown 树状结构,不仅列出章节名,还说明每一节应该写什么、引用哪些文献。


类似装修的设计图,后续所有内容生成都围绕它展开。


用到的主要 Prompt


"""你是一名专业的学术助手,任务是帮助研究人员根据提供的材料进行文献综述。


# 背景

我需要基于主题“{title}”撰写一份学术综述大纲,并使用提供的参考文献...


# 任务描述

你的任务是基于提供的**文章摘要**构建综述大纲。每个大纲部分应具有系统且详细的描述。描述由两部分组成:

- **Digest Construction**:确定从提供的参考文献全文中提取哪些信息以创建摘要。该摘要将用于后续的Digest Analysis,以撰写逻辑严谨、批判性强且有洞察力的学术综述部分。...

- **Digest Analysis**:解释如何使用提取的信息来组织和分析文章,并提供可执行的步骤。避免仅仅列出信息,而是分析和综合这些信息,形成一个连贯且结构良好的叙述。...


你可以遵循以下原则生成高质量的大纲:

1. **系统性**:

全面涵盖主题的所有相关方面,形成一个完整且严谨的知识框架,使读者能够掌握主题的整体情况。...

2. **针对性**:

大纲的每个条目必须与综述主题密切相关,精确定位主题的核心点和关键问题...

3. **客观性**:

大纲的措辞和内容安排不应带有个人主观偏见或情感倾向。对各种研究结果和不同学术观点的展示应公平客观,以确保内容的真实性和可靠性...


# 输入材料

## **文章摘要**

{abstracts}


# 输出要求

## 格式要求

1. 输出的**大纲**必须为Markdown格式,主题为一级标题。**大纲**应使用分隔符```markdown\\n```包围。

2. 每个部分的描述应引用适当的文章bibkeys...

3. 每个部分必须包含适当的子部分,建议使用Markdown标题来表示层次结构。

4. 每组参考文献的bibkeys必须用一对方括号括起来...。


## 格式示例

```markdown

# {title}

## 部分A

Digest Construction:

写出应从全文中提取哪些信息。

Digest Analysis:

写出如何组织和分析文章[\"BIBKEY1\", \"BIBKEY2\"],并提供可执行步骤。

...

### 子部分A

Digest Construction:

写出应从全文中提取哪些信息。

Digest Analysis:

写出如何组织和分析文章[\"BIBKEY1\", \"BIBKEY2\"],并提供可执行步骤。

### 子部分B

Digest Construction:

写出应从全文中提取哪些信息。

Digest Analysis:

写出如何组织和分析文章[\"BIBKEY1\", \"BIBKEY2\"],并提供可执行步骤。

...

## 部分C

...

```


3. Convolution:卷积式结构优化


关键操作来了。


AI 会把上面阶段所有对提纲的建议,拿出来一轮轮融合:


按主题分组、聚合建议、打分筛优、再迭代生成新提纲。


每一轮都像是卷积核扫一遍结构图,最后留下信息密度最高、逻辑最清晰的那个版本。


多轮打磨后,你会获得一份很棒的提纲:它既参考了全部摘要,又兼顾逻辑一致性和写作节奏。


这也是 Convolution 是 V2 版本的最大创新,它的目标是:


通过多次迭代,类似 CNN,将大纲变成了一个高质量、逻辑清晰、信息密实的文章草稿


用到的主要 Prompt


"""你是一个专业的学术助手,负责帮助研究人员根据提供的材料进行文献综述。


# 背景:

学术综述的主题是“{title}”...


# 任务描述:

为整合这些建议,请遵循以下原则:

1. **系统性整合**:

- 理解现有的分析框架和建议...

- **层级结构**:将建议分为高层次(战略层面)和低层次(操作层面),确保每个建议具有明确的定位和功能...

2. **挑战与解决方案**:

- 基于分析框架,整合各个子领域面临的挑战以及当前方法的不足...

- 针对总结出的挑战和不足,预测未来的研究方向,以弥补当前工作的不足...

# 输入材料:

1. 初步大纲:需要完善的当前版本综述大纲。

2. 个别建议:来自几位专家评审的反馈,每个建议包含关于该建议有效性分数的评估结果及评分理由...


## 初步大纲

```markdown

{outline}

```


## 个别建议

{suggestions}


# 输出要求

## 格式要求:

1. 所有建议必须用一对```suggestion\n```引用...

2. 每个 Bibkey 必须由引号包裹,每组 Bibkey 必须由一组方括号包围,如["BIBKEY1", "BIBKEY2"]...

3. 建议应具有可操作性,并与综述的目标密切对齐...

4. 如果输出中包含公式,请使用LaTeX格式表示...


## 格式示例

```suggestion

1. 描述这一组建议的核心目标:

- 针对当前核心目标,如何修改初步大纲的具体建议 [\"BIBKEY1\", \"BIBKEY2\",...].

- ...


2. 描述这一组建议的核心目标:

- 针对当前核心目标,如何修改初步大纲的具体建议 [\"BIBKEY1\", \"BIBKEY2\",...].

- ...


3. 描述这一组建议的核心目标:

- 针对当前核心目标,如何修改初步大纲的具体建议 [\"BIBKEY1\", \"BIBKEY2\",...].

-...

```

"""


Decode:内容输出


有了大纲之后,AI 就会开始动笔写作:按结构分段生成


  • 小节一级一级写,从叶子节点开始
  • 每段只引用它该引用的 digest,不乱带
  • 写完后还有章节级合并,总结收束
  • 最后整体再来一轮润色、插图、引用处理


[图片:Decode 流程图,展示结构树写作从底到顶的生成路径]


有点像媒体团队在协作:


  • Digest/摘要:提供素材;
  • Skeleton/大纲:提供结构;
  • 最终,AI 大老爷负责具体生产


最终,你会获得一篇结构合理、内容完整、Markdown 格式的长文,包含图表、引用和排版。


用到的主要 Prompt - 子章节


你是一个专业的学术助手,专门从事文献综述工作,帮助研究人员高效地综合相关研究。

====================

背景:

目前,你正在撰写一篇名为“{title}”的学术综述报告...

====================

任务描述:

**你的任务**是为最终综述报告创建一个子章节...


思考原则:

1. **将个别摘要整合成一个有机的子章节**:

- **按照子章节描述的系统组织**:...从摘要中提取有价值的信息,并将其综合成一个全面的综述子章节...

- **基于证据的分析与综合**:从摘要中提取有力的证据,例如实验结果、批判性分析和深刻见解,以支持子章节描述中的分析...

- **识别研究空白和未来方向**:系统地总结当前研究领域中的挑战,突出现有研究的局限性,包括样本量的限制、方法论的约束或未解决的研究问题...

2. **语言风格**:

- **正式性、严谨性和客观性**:在写作中保持高度的正式性、严谨性和客观性...

- **句子结构和清晰度**:构造句子时要严谨和准确,确保逻辑清晰,易于理解...

- **中立性、精确性和学术严谨性**:采用中立语气,基于证据客观地呈现内容...

====================

输入材料:

子章节描述

```markdown

{outline}

```


个别文章摘要

```markdown

{digest}

```

====================

输出要求:

1. 输出的章节内容必须用一对```markdown\n```引用, 内容中除了有特定含义的词汇或缩写,其他所有语言必须为汉语,不允许混杂除汉语与英语之外的其他语言。

2. 每个 Bibkey 必须由引号包裹,每组 Bibkey 必须由一组方括号包围,如["BIBKEY1", "BIBKEY2"]...

3. 如果输出中包含公式,请使用LaTeX格式表示。例如,内联公式使用$y = x^2$,块状公式使用$$y = x^2$$...

====================

格式示例:

```markdown

### {section_title}

通过整合个别摘要中的相关内容并优化整体呈现以提高清晰度和连贯性生成的子章节内容[\"BIBKEY1\", \"BIBKEY2\"]。

```


用到的主要 Prompt - 父章节


你是一个专业的学术助手,专门从事文献综述工作,帮助研究人员高效地综合相关研究。

====================

背景:

目前,你正在撰写一篇名为“{title}”的学术综述报告...

====================

任务描述:

**你的任务**是综合当前章节标题和第一个子章节标题之间的内容...


思考原则:

1. **将个别摘要整合成一个有机的子章节**:

- **按照子章节描述的系统组织**:...从摘要中提取有价值的信息,并将其综合成一个全面的综述子章节,确保最终子章节涵盖所有摘要中的见解。

- **基于证据的分析与综合**:从摘要中提取有力的证据,例如实验结果、批判性分析和深刻见解,以支持子章节描述中的分析...

- **识别研究空白和未来方向**:系统地总结当前研究领域中的挑战,突出现有研究的局限性,包括样本量的限制、方法论的约束或未解决的研究问题...

2. **将子章节内容整合成一个有机的整体**:

- **全面回顾与核心识别**:彻底回顾每个子章节的内容,系统地找出其中的主要主题、关键论点和重要发现...

- **发现和利用子章节之间的联系**:寻找子章节之间的共同点和相互联系。这些可能包括共享的研究方法、相关的理论框架或交集的研究问题...

- **结构化以提高清晰度**:在整合子章节内容时,要建立层次结构。首先呈现最一般和最概括的概念,然后逐步展开更具体的细节...

- **有意义的综合,而非简单编纂**:确保子章节内容的整合是有意义的综合,而不仅仅是简单的编纂。提供一个叙述,阐明每个子章节如何有助于对主题的整体理解...

3. **语言风格**:

- **正式性、严谨性和客观性**:在写作中保持高度的正式性、严谨性和客观性...

- **句子结构和清晰度**:构造句子时要严谨和准确,确保逻辑清晰,易于理解...

- **中立性、精确性和学术严谨性**:采用中立语气,基于证据客观地呈现内容...

====================

输入材料:

章节描述:

```markdown

{outline}

```


子章节:

{subcontents}


个别文章摘要:

```markdown

{digest}

```

====================

输出要求:

1. 输出的章节内容必须用一对```markdown\n```引用...

2. 每个 Bibkey 必须由引号包裹,每组 Bibkey 必须由一组方括号包围,如["BIBKEY1", "BIBKEY2"]...

3. 如果输出中包含公式,请使用LaTeX格式表示...

====================

格式示例:

```markdown

### {section_title}

通过整合个别摘要中的相关内容并优化整体呈现以提高清晰度和连贯性生成的子章节内容[\"BIBKEY1\", \"BIBKEY2\"]。

```


写在最后


收束一下,MapReduce-V2 不是“写作大模型”或者“通用代理”,而是一个开源的、清晰的写作框架,是赛博德鲁伊,上 Buff,让你的模型能写更长的内容


如果你也在做自动报告、长文生成、知识整合类项目,开源来借鉴一下。


工具、论文、Demo 都已经开源,跑一遍,比看十篇综述更直观。


用的 prompt,都在这里
https://github.com/thunlp/LLMxMapReduce/blob/main/LLMxMapReduce_V2/src/prompts/prompts_zh.py


文章来自于“赛博禅心”,作者“金色传说大聪明”。


如何 AI「拼好文」:生成万字报告,不限模型

1
OWL

【开源免费】OWL是一个完全开源免费的通用智能体项目。它可以远程开Ubuntu容器、自动挂载数据、做规划、执行任务,堪称「云端超级打工人」而且做到了开源界GAIA性能天花板,达到了57.7%,超越Huggingface 提出的Open Deep Research 55.15%的表现。

项目地址:GitHub:https://github.com/camel-ai/owl

2
OpenManus

【开源免费】OpenManus 目前支持在你的电脑上完成很多任务,包括网页浏览,文件操作,写代码等。OpenManus 使用了传统的 ReAct 的模式,这样的优势是基于当前的状态进行决策,上下文和记忆方便管理,无需单独处理。需要注意,Manus 有使用 Plan 进行规划。

项目地址:https://github.com/mannaandpoem/OpenManus


3
AI工作流

【开源免费】n8n是一个可以自定义工作流的AI项目,它提供了200个工作节点来帮助用户实现工作流的编排。

项目地址:https://github.com/n8n-io/n8n

在线使用:https://n8n.io/(付费)


【开源免费】DB-GPT是一个AI原生数据应用开发框架,它提供开发多模型管理(SMMF)、Text2SQL效果优化、RAG框架以及优化、Multi-Agents框架协作、AWEL(智能体工作流编排)等多种技术能力,让围绕数据库构建大模型应用更简单、更方便。

项目地址:https://github.com/eosphoros-ai/DB-GPT?tab=readme-ov-file



【开源免费】VectorVein是一个不需要任何编程基础,任何人都能用的AI工作流编辑工具。你可以将复杂的工作分解成多个步骤,并通过VectorVein固定并让AI依次完成。VectorVein是字节coze的平替产品。

项目地址:https://github.com/AndersonBY/vector-vein?tab=readme-ov-file

在线使用:https://vectorvein.ai/(付费)

4
AI数据分析

【开源免费】DeepBI是一款AI原生的数据分析平台。DeepBI充分利用大语言模型的能力来探索、查询、可视化和共享来自任何数据源的数据。用户可以使用DeepBI洞察数据并做出数据驱动的决策。

项目地址:https://github.com/DeepInsight-AI/DeepBI?tab=readme-ov-file

本地安装:https://www.deepbi.com/

【开源免费airda(Air Data Agent)是面向数据分析的AI智能体,能够理解数据开发和数据分析需求、根据用户需要让数据可视化。

项目地址:https://github.com/hitsz-ids/airda

5
智能体

【开源免费】AutoGPT是一个允许用户创建和运行智能体的(AI Agents)项目。用户创建的智能体能够自动执行各种任务,从而让AI有步骤的去解决实际问题。

项目地址:https://github.com/Significant-Gravitas/AutoGPT


【开源免费】MetaGPT是一个“软件开发公司”的智能体项目,只需要输入一句话的老板需求,MetaGPT即可输出用户故事 / 竞品分析 / 需求 / 数据结构 / APIs / 文件等软件开发的相关内容。MetaGPT内置了各种AI角色,包括产品经理 / 架构师 / 项目经理 / 工程师,MetaGPT提供了一个精心调配的软件公司研发全过程的SOP。

项目地址:https://github.com/geekan/MetaGPT/blob/main/docs/README_CN.md

6
AI搜索

【开源免费】MindSearch是一个模仿人类思考方式的AI搜索引擎框架,其性能可与 Perplexity和ChatGPT-Web相媲美。

项目地址:https://github.com/InternLM/MindSearch

在线使用:https://mindsearch.openxlab.org.cn/


【开源免费】Morphic是一个由AI驱动的搜索引擎。该项目开源免费,搜索结果包含文本,图片,视频等各种AI搜索所需要的必备功能。相对于其他开源AI搜索项目,测试搜索结果最好。

项目地址:https://github.com/miurla/morphic/tree/main

在线使用:https://www.morphic.sh/

7
微调

【开源免费】XTuner 是一个高效、灵活、全能的轻量化大模型微调工具库。它帮助开发者提供一个简单易用的平台,可以对大语言模型(LLM)和多模态图文模型(VLM)进行预训练和轻量级微调。XTuner 支持多种微调算法,如 QLoRA、LoRA 和全量参数微调。

项目地址:https://github.com/InternLM/xtuner

8
prompt

【开源免费】LangGPT 是一个通过结构化和模板化的方法,编写高质量的AI提示词的开源项目。它可以让任何非专业的用户轻松创建高水平的提示词,进而高质量的帮助用户通过AI解决问题。

项目地址:https://github.com/langgptai/LangGPT/blob/main/README_zh.md

在线使用:https://kimi.moonshot.cn/kimiplus/conpg00t7lagbbsfqkq0

IOS下载
安卓下载
微信群
沪ICP备2023015588号