
写小说最容易卡住的地方很多人一开始就忽略了。我说一个判断卡文从来不是灵感问题而是工程问题。很多写作者遇到卡住第一反应是“再等等灵感”“换个时间再写”或者硬着头皮写下去结果越写越别扭。但如果你把“卡文”这件事拆开看会发现它很少发生在具体某句话写不出来的时候。更多时候卡住发生在你根本不知道接下来这一段要达成什么目的不知道这个场景里人物要什么不知道这一章在整个故事里承担什么功能。这三个“不知道”其实在一开始动笔时就已经埋下了。1. 写小说为什么总是卡住先定义什么叫卡住。不是写不出字而是写出来的内容自己不满意或者不知道下一句该往哪里走。我见过很多例子。有人开篇写了三千字气氛很好文笔也不错但写到主角第一次面对冲突时停住了因为他不确定主角会怎么做。有人设定了一个复杂的奇幻世界写到第三章就写不下去了因为世界观的规则限制了他想写的剧情。还有人每一章都能写但写完回头发现故事线对不上人物性格前后矛盾于是整章废掉重写。这些问题表面上是“写不下去”实际上是结构性问题。用技术一点的说法你没有在系统层面定义清楚人物目标、场景冲突、章节控制和整体节奏所以每写一步都要现想而现想的时候大脑处于高负荷状态写作自然就卡住了。有经验的作者会告诉你写小说要有大纲。但大纲远远不够。真正影响写作流畅度的是一套可以随时查询、校验、回溯的“创作工程规范”。比如当前场景里谁的需求在驱动行动冲突的升级点在哪里这一章的结尾要让读者产生什么情绪如果这些信息在一开始就结构化地建立起来写作过程会从“临场发挥”变成“按图施工”。卡住的情况会显著减少因为你不是靠灵感在撑而是靠设定和逻辑在支撑。2. 很多人一开始忽略的是动机与冲突的一致性大部分人在开篇时花大量时间想什么设定世界观、设计人名、写外貌、铺背景。这些不是不重要但它们不是让故事前进的动力。让故事前进的只有两样东西人物的动机和场景中的冲突。动机是人物想要什么冲突是这个“想要”遇到什么阻碍。所有精彩的章节本质上都是“人物带着欲望撞上了阻碍于是做出选择引发新变化”的循环。而很多新手恰恰在最开始忽略了这个循环。他们写主角是个善良的人、写他住在某个城市、写他有个妹妹但这些信息没有转化成动机和冲突故事就没有发动机。这也是为什么很多人写着写着就卡住人物没有“想要的东西”所以你在任何场景里都无法判断他下一步会做什么。你只能强行安排剧情而强行安排的剧情会让读者觉得人物不可信于是你又要回头改设定陷入恶性循环。正确的做法是在动笔之前就把人物动机字段化、冲突链条化。每个主要角色都要能回答三个问题他想要什么终极目标他为什么想要内在原因他愿意为此付出什么行为边界这三个答案决定了角色在任意场景中的行为逻辑。当你在某一章不知道怎么写时不要翻文笔技巧书先问自己这个人物现在最想得到什么他面前有什么阻碍他会优先选择什么方式答案出来剧情自然就往前走了。3. 从灵感写作到工程化写作很多创作者对“工程化写作”有抵触觉得写作是感性的事不能被流程束缚。这其实是个误读。工程化的目的不是取代感性表达而是把感性表达之前那些重复性的、可以被沉淀和复用的工作分离开来人物设定、身份标签、行为动机这些是可以结构化的。世界观规则、势力分布、时间线这些是可以编码化的。章节目标、场景功能、节奏起伏这些是可以流程化的。当你把这三件事做成规范写作本身反而会更自由。因为你在进入具体章节时已经知道自己要在什么约束下创造创造会更有方向感。一个可用的比喻是你在装修前画好水电线路图不是在限制家具摆放而是确保住进去以后不会每天跳闸。现在很多小说写到一半崩掉不是因为作者文笔不好而是管线全乱了。从今天开始你可以把“写小说”拆成两条流水线创作流水线概念 → 设定 → 大纲 → 章节 → 初稿 → 修订质量保障流水线一致性校验 → 动机校验 → 冲突强度校验 → 节奏校验这两条流水线都有对应的检查清单而 AI 辅助写作工具恰好可以用来做这两条流水线的执行和检查。4. 用 AI 辅助写作工具搭建创作工作台这里要说清楚AI 不会替你写出伟大的小说但它可以帮你完成很多“不伟大但必须做”的工作比如把零散灵感整理成结构化设定、在写作前生成段落草案、在写完后检查人物性格是否偏离。具体来说你可以用目前的通用大模型配合一套明确的提示词体系搭建自己的创作工作台。工作台包含四个模块模块一设定管理器人物卡、世界观卡、势力关系卡 模块二大纲生成器从设定生成章节级大纲 模块三段落起草器根据章节目标和上下文生成草案 模块四一致性校验器检查草稿与设定的偏差这套模块不需要额外开发用一套成体系的 Prompt 就能实现。关键是每次调用 AI 都要给它足够完整的上下文而不是直接让它“写一段”。很多人觉得 AI 写出来千篇一律原因就是它只看到了一个孤立的指令没有看到人物动机、冲突压力和章节目标。你给的信息越是结构化AI 生成的内容就越接近你的意图。5. 完整示例一套可复制的人物设定与章节生成流程下面给出一个完整的练习路径。你可以复制这套流程到任意支持长上下文的大模型中使用。先看人物设定。这是所有动作的第一步。如果人物设定不清晰后面所有生成内容都会失真。假设我们写一个现代都市悬疑故事主角叫林澈身份是旧案组的刑警。用统一格式定义人物卡# 角色卡林澈 - 角色定位主角 - 核心欲望查出十年前搭档坠楼案的真相 - 内在恐惧恐惧自己是当年案件的关键失职者 - 行为底线可以违规但不能伤害无辜的人 - 外在特点习惯性失眠说话简洁不喜欢参加集体活动 - 性格弱点过度自负总认为自己的判断是唯一正确的 - 关系锚点 - 搭档已故既是愧疚也是动力 - 新任上司与他理念冲突但拥有关键线索 - 受害者家属让他重新审视自己的办案方式这张卡定义了角色的发动机。每次生成内容前把这张卡贴进 PromptAI 就不会写出与动机相悖的行为。接下来生成章节大纲。给 AI 一个章节目标和当前剧情位置请根据以下设定生成章节大纲 故事背景旧案组刑警林澈在复查一宗十年前的坠楼案时发现案件相关证人接连遇害。 人物卡 林澈旧案组刑警核心欲望是查出搭档坠楼真相行为底线是不伤害无辜性格固执习惯性失眠。 本章目标 让林澈发现第一起证人遇害案并意识到幕后黑手在刻意清除当年案件的知情者。 冲突要求 1. 林澈不是被动接受消息而是主动发现异常 2. 场景结尾要形成一个两难选择追查线索还是保护下一个证人 3. 全章情绪由冷静调查转向紧迫感 输出要求 给出本章 4 个场景的段落级大纲每个场景 3 句话概览标明该场景的冲突类型和目标。这条 Prompt 的价值在于它不给 AI 自由发挥的空间而是限定目标、冲突和情绪走向。生成出来的大纲大概率是能用的。得到大纲后可以进入段落起草。这一步把场景大纲继续细化请根据下面的场景大纲写一个 600 字的草稿 场景目标林澈在停车场发现证人周明死亡并观察到车上的行车记录仪被人取走。 重要约束 1. 从林澈的视角写用有限第三人称 2. 开场不要直接写尸体先写停车场异常安静的氛围 3. 林澈的第一反应不是害怕而是快速分析现场细节 4. 结尾落在“记录仪被取走”这个发现上引导读者和主角同样产生疑问 人物信息 林澈习惯性失眠观察力强面对案件时冷静到近乎冷漠。这里的关键是“约束”。给 AI 的约束越多生成内容越贴近可用状态。如果你只写“写一个发现尸体的场景”AI 给出的内容大概率是套话因为你没有告诉它视角、情绪、叙事节奏和结尾钩子。完整流程示例用一段 Python 脚本可以串联这些 Prompt实现批量生成。注意这里只是演示调用方式实际使用请替换为你自己的 API 配置。# 文件路径novel_assistant.py import os import requests API_URL 你的接口地址 def chat(prompt: str, system_prompt: str ) - str: response requests.post( API_URL, json{ model: 你的模型名称, messages: [ {role: system, content: system_prompt}, {role: user, content: prompt} ], temperature: 0.8 } ) response.raise_for_status() return response.json()[choices][0][message][content] def generate_chapter_outline(character_card: str, chapter_goal: str) - str: system_prompt 你是一位擅长类型小说结构设计的编辑只输出结构化的章节大纲。 user_prompt f 已知人物卡片 {character_card} 本章目标 {chapter_goal} 请生成四个场景的段落级大纲每个场景包含场景目标、冲突类型、场景结尾状态。 return chat(user_prompt, system_prompt) def generate_scene_first_draft(character_card: str, scene_outline: str) - str: system_prompt 你是一位小说执笔助手用有限第三人称完成场景草稿语言克制不使用华丽空泛的辞藻。 user_prompt f 人物卡片 {character_card} 场景要求 {scene_outline} 请输出 600 字左右的场景草稿。 return chat(user_prompt, system_prompt) if __name__ __main__: # 演示流程 card 林澈旧案组刑警核心欲望是查出搭档坠楼真相行为底线是不伤害无辜习惯性失眠观察力强。 goal 林澈发现第一起证人遇害案并意识到幕后黑手在清除知情者。 outline generate_chapter_outline(card, goal) print( 章节大纲 ) print(outline)这段脚本把前面的人为流程变成了可重复执行的工序。每一次生成都基于同一份人物卡片传递上下文避免越写越偏。6. 运行结果与效果验证运行上面的脚本在 API 配置正确的情况下会输出一段结构化的章节大纲接着可以调用generate_scene_first_draft生成场景草稿。判断生成质量可以从三个层面验证第一人物行为是否一致。打开生成文本看林澈面对血腥现场时是否表现出了卡片里设定的“冷静分析优先”特质。如果他突然恐慌、流泪、情绪失控那就是 Prompt 没有把人物行为底线传递清楚需要调整角色卡描述。第二章节目标是否达成。阅读场景结尾看读者是否自然地意识到“记录仪被取走”这一关键信息是否产生了悬念。如果信息被淹没在无关描写中说明场景大纲还需要更聚焦。第三冲突是否推进。检查当前场景结束时主角是否处于一个新的压力状态。如果只是调查到一个新线索但没有增加紧迫感说明冲突设计偏弱。如果生成的草稿质量不高第一优先检查的是输入约束是否足够而不是模型能力。绝大多数不满意结果都是因为 Prompt 里没有给出足够的上下文和限制条件。7. 常见问题与排查思路问题现象可能原因排查方式解决方案生成内容与人物性格不符角色卡信息不完整或没有在每次调用时传递检查 Prompt 中是否包含人物卡全文将角色卡固定为系统提示词的一部分章节缺乏冲突像流水账场景大纲只写了“发生什么”没写“谁反对谁”回看场景大纲中是否包含冲突类型为每个场景补充冲突类型与对抗方连续生成后前后矛盾没有维护统一设定快照检查上下文是否因为长度被裁剪每次生成前把关键设定重新注入 Prompt文风趋同缺少辨识度没有给出风格参照或语言约束检查系统提示词中是否有风格限制增加语言偏好、句式习惯、叙述距离等约束生成速度慢经常超时上下文过长或接口不稳定查看 API 日志和请求耗时精简每次请求携带的上下文只保留必要设定大纲与细纲对不上两步之间的中间产物未被人工审核检查大纲生成后是否有人工确认环节在大纲生成后人工调整后再进入起草8. 最佳实践与工程建议把写小说当成一个长期维护的项目你可以在第一天就建立好以下工作规范。第一设定文档单独维护不要散落在章节里。把人物卡、世界观规则、时间线、势力关系做成独立文档。每章写完如果对设定做了补充同步更新设定文件。这样无论写 10 章还是 100 章设定始终有据可查。第二角色卡写入后每次生成都要带上下文。AI 没有记忆不会因为你之前提过“林澈很执着”就一直记得。必要的信息要在每次对话中重复传递。这是 AI 辅助写作中最容易被忽略的工程细节。第三AI 草稿定位是“初稿素材”不是成品。使用时可以搭配人工修订流程。每次生成后先审场景目标是否达成再改文笔和细节。别指望生成段落直接进入正文那样你的写作风格会越来越像模型默认风格。第四一致性校验要定期做。写长篇时可以每写 5 章进行一次全面检查人物称呼是不是变了、身高外貌有没有变化、时间线有没有冲突、动机强度有没有滑坡。这些重复劳动可以交给 AI 完成用一致性校验 Prompt 快速扫描。第五注意版权与原创性。AI 生成的内容并不能天然保证原创性也不意味着可以无限复制他人作品的桥段结构。更稳妥的方式是把 AI 定位为“写作助理”用于扩展思路、起草结构和检查逻辑而不直接替代创作。最终发布的作品必须在创意、表达和情感层面经过你自己的充分处理。第六不要迷信 Prompt先建立自己的方法论。Prompt 只是工具真正让故事成立的是你对人物动机、冲突设计和节奏的把握。先学基础叙事再谈 AI 提效顺序不要反。9. 总结与后续学习方向写小说容易卡住本质上是因为你在没有规则、没有模板、没有约束的情况下进行自由创作。自由创作看起来很浪漫但对绝大多数写作者来说它意味着极高的认知负荷。人一旦同时思考情节、人物、对话、文笔、节奏大脑很快会超载卡住就是必然结果。把写作工程化以后认知负荷就分散了。设定是提前做好的人物卡是固定的章节大纲是明确的你的大脑只需要专注在“如何把这一句话写得更好”上而不是“接下来发生什么”。后者是结构问题前者才是表现问题。大多数人混为一谈以至于卡住时不知道该改结构还是改文笔。后续可以继续深入学习几条线。一条线是叙事结构比如经典的三幕剧、英雄之旅、节拍表它们能帮你把大纲设计得更扎实。另一条线是 AI 提示词工程学习如何建立一套稳定的 Prompt 模板而不是每次临时起意。还有一条线是内容管理用版本管理工具管理小说设定和章节修改这对长篇连载尤其有价值。如果你现在手头正好有写到一半卡住的小说不要急着删掉重写。先停下来给主要角色补一张动机卡再回头看看卡住的那个场景问问自己这个场景的主角到底想要什么。答案通常就在那里。