共计 7641 个字符,预计需要花费 20 分钟才能阅读完成。
当然可以!只需遵循适当的方法,最近我尝试借助人工智能创作了一篇受东野圭吾启发的推理小说,愿将我的体会分享给大家。
首先,必须明确,当前AI的能力有限。如果仅仅将创意想法提交给它,甚至只是简单地说“写一篇东野圭吾风格的推理小说”,所生成的作品往往只是小学生水平的短文。虽然语言通顺,但缺乏深度和可读性。
因此,我们仍需提供一些设定要素,也就是AI创作中常提到的上下文。正如下面的图片所示,我们需要先明确人物设定、文体风格、谜题元素以及故事大纲,之后再让AI生成小说,这样的结果才更为可靠。

从工具的选择来看,我们需要一个能够将结果输出到文件的AI,因此建议避免使用网页聊天形式的AI工具。为什么呢?
因为在使用AI写作的过程中,我们需要掌控文本的版本。如果某次AI的修改不符合预期,我们可能需要回退到先前的版本,甚至多次回退。聊天形式的AI工具直接在对话框中输出文本,无法有效控制版本,即使某些画布形式的AI工具也难以做到这一点。因此,最佳的做法是让AI将文本输出到文件中,每次生成都针对文件进行修改,之后我们可以使用版本控制工具(最佳选择是git)来进行管理,这样便能把握整个过程。
基于以上原则,我们需要选择一个AI编程工具。
确实,虽然我们要进行的是小说创作,但AI编程工具最为适合,因为无论是命令行还是集成开发环境,它们都是直接操作文件的。而且据我所知,几乎所有的AI编程工具都能生成小说,因为其背后的模型本质上是语言模型,编程语言和自然语言都是可以处理的。
我使用的是某款不太知名的AI编程命令行工具,由于没有得到广告费用,我就不提名字了。我想强调的是,使用哪款工具其实并不重要,关键在于背后的语言模型,顶尖的语言模型屈指可数,尽量选择最先进的即可。
现在开始创作吧。
按照上述原则,我们需要完善小说的元素,再进行小说的生成。显然,小说元素和实际的小说应放置于不同的文件中。我首先指示AI生成一个包含小说元素的大纲文件,通过提示词提供一些概念性创意,我的要求大致是:故事发生在渔村,侦探是加贺恭一郎,文风遵循东野圭吾的风格,谜题利用物理原理 bla bla bla。
AI生成的outline.md文件内容大致如下(仅是部分内容):
# 渔村推理小说大纲
## 基本设定
– **地点**:偏远的海岛渔村(与外界联系不畅,形成封闭环境)
– **时间**:现代,台风季节前夕
– **核心谜题**:利用物理原理的密室谋杀
– **风格**:东野圭吾式传统推理
– **篇幅**:中篇小说(约8-10万字)## 文风设定
东野圭吾的写作风格。## 主要角色
### 侦探
#### 加贺恭一郎## 故事结构
### 第一幕:发现
### 第二幕:侦查
### 第三幕:解密
### 第四幕:完结
这样的初步大纲看似不错,但如此泛泛的设定所生成的小说必然会显得平淡,因此需要进一步改进。
我可以要求AI“根据当前设定提供一些可能的谜题设置”,然后AI会在outline.md中增加一段,列出多种谜题方案。不得不说,AI完全捕捉到了“渔村”的设定,所列出的谜题大多围绕这一背景展开。
## 核心谜题详解
### 可选谜题方案
#### 1. 浮力原理谜题
– **原理**:利用海水浮力和潮汐变化
– **手法**:凶手将尸体绑在浮筒上,涨潮时尸体被托起,退潮后形成悬挂假象
– **儿童优势**:小孩熟悉潮汐时间,成年人往往忽视细节#### 2. 杠杆原理谜题
– **原理**:利用渔船上的起重臂作为杠杆
– **手法**:小孩用杠杆轻松举起重物(尸体),并巧妙固定
– **渔村元素**:渔船设备成为作案工具#### 3. 冰块融化谜题
– **原理**:冰块支撑+时间延迟
– **手法**:用大块海冰作为踏脚台,冰块融化后无影无踪
– **环境配合**:海岛低温环境,冰块来源合理#### 4. 绳索张力谜题
– **原理**:渔网绳索的弹性与张力
– **手法**:利用渔网的回弹力将尸体“弹射”至高处
– **专业知识**:渔村孩子对渔网特性的了解#### 5. 水压差谜题
– **原理**:密闭容器内的水压变化
– **手法**:使用水桶和虹吸原理制造“隐形”的举升力
– **隐蔽性**:水迹干涸后不留痕迹#### 6. 重心转移谜题
– **原理**:通过改变物体重心实现“自动”移动
– **手法**:在尸体内部放置滑动重物,利用重心变化
– **医学掩护**:村医协助或无意中提供条件#### 7. 声波共振谜题
– **原理**:利用渔船发动机的低频振动
– **手法**:特定频率的振动使悬挂装置产生共振位移
– **时间控制**:渔船出海时间成为完美的时间证明
接下来,我们可以让AI列出所有出场人物,确定谁是受害者,谁是凶手,并细化角色描写。这是一个反复修改的过程,我们需要审视生成的内容是否符合我们的审美标准。
在这个过程中,人工修改是必不可少的。例如,AI对加贺恭一郎的描写如下:
#### 加贺恭一郎
– **年龄**:42岁,东京警视厅搜查一课的刑警
– **外貌**:身高175cm,中等身材,略显消瘦。黑色短发整齐梳理,额头宽阔显示智慧。深邃的黑眼睛总是在观察,眼角有细微的鱼尾纹。鼻梁挺直,嘴唇紧抿时显示专注。皮肤略显苍白,显示长期室内工作
这显然不对,加贺恭一郎怎么可能皮肤苍白、身材中等,这完全不符合东野圭吾推理世界的设定。加贺恭一郎的形象应当与影视剧中阿部宽的角色相似。

AI显然没有看过阿部宽的表演,因此我们需要亲自编辑outline.md进行设定的修改:
### 侦探
#### 加贺恭一郎
– **年龄**:42岁,东京警视厅搜查一课的刑警
– **外貌**:身材高大,肩部宽阔,皮肤稍显黝黑,眼神深邃,脸型消瘦
– **着装**:黑色西装,不打领带,衣着简洁整齐,无多余装饰
– **特征**:步伐稳健,语调平和,身体强壮,是剑道和柔道高手
– **背景**:前来渔村度假却因台风滞留,意外卷入案件
需要注意的是,AI在大纲中写出某个角色的具体身高可能导致后续生成的小说直接提及某人身高xx厘米,这显得不够灵活。因此,人物介绍最好避免使用具体数字,比如加贺恭一郎就可以简单描述为“身材高大”。
同样,我们还可以要求AI对故事情节进行细化,分成不同章节,并让AI撰写每一章节的大概剧情,之后我们再进行微调。
当大纲outline.md修改得差不多时,可以让AI“根据大纲生成故事的第一节”。我们只需生成第一节,因为我们写的是几万字的中篇小说,如果一次性生成过多内容,不仅耗时,而且效果也可能不理想,因为这仍然是一个需要微调的过程。我们可以先看看第一节的表现,以决定是否对大纲进行调整。
在这个过程中,我进行了多次反复,通过查看生成的第一节,发现了许多问题。于是,我对大纲outline.md进行了很多修改:
- AI生成的第一节字数不足1000字,显得太过紧凑——在outline.md中添加了“每小节2000-3000字”的要求
- AI生成的第一节让所有人物都出场,导致难以记住每个人物——要求AI在outline.md中调整故事情节,避免在第一节全部出场
- AI生成的第一节人物互动过于直接,缺乏日本人特有的礼貌用语——在outline.md的文风设定中增加“人物对话动作体现日本特别讲礼貌的特点”
- AI生成的第一节以加贺的视角叙述,这不符合东野圭吾的风格——告知AI修改故事梗概,让每小节都从某个角色的视角描述,但不从加贺的视角叙述。
- ……
这一过程是反复雕琢的,有时让AI修改大纲,有时直接自己修改,修改后再让AI生成第一节,观察效果以决定后续的调整。
最终,让我们看看生成的第一节内容:
# 第一幕第一节:台风警报
**【松本静子视角】**松本静子站在旅馆二楼的窗前,望着远处灰蒙蒙的海面。海风已经开始变得急躁,吹得窗框发出轻微的嘎吱声。她下意识地整理了一下身上素雅的套装,这是多年来养成的习惯——无论心情如何,外表总要保持得体。
“看起来今晚的台风会很厉害呢。”她轻声自语,目光扫过村子里零星的灯火。
楼下传来敲门声,打断了她的思绪。静子快步下楼,透过门上的毛玻璃看到一个高大的身影。她打开门,一阵带着海腥味的冷风扑面而来。
“不好意思,这么晚打扰了。”门外站着一个身材高大的男人,肩膀很宽,皮肤显得有点黑。他穿着黑色西装,没有打领带,衣着简洁但整洁。”我是加贺恭一郎,本来今天下午就该离开的,但是渡船因为台风停航了。请问还有房间吗?”
静子仔细打量着这个陌生人。他的眼神深邃,脸型消瘦,说话的语调很平和,但有一种让人不敢轻视的气质。在这个偏僻的渔村,很少有这样的客人。
“当然有房间。”静子微笑着让开身子,”请进来吧。外面风大,小心着凉。”
加贺点头致谢,步伐稳健地走进旅馆。静子注意到他走路的姿态很特别,既不急躁也不拖沓,给人一种训练有素的感觉。
“您是从东京来的吧?”静子一边引导他到前台,一边试探性地问道。
“是的,本来是来度假的。”加贺环顾四周,目光在旅馆简朴但整洁的装修上停留了一下,”没想到会遇到台风。”
静子熟练地从柜台后取出登记簿。”这个季节确实容易有台风。不过您运气还算不错,明天下午风应该就会小一些,后天应该就能通航了。”
她一边说着,一边观察加贺填写登记信息。他的字迹工整有力,写的是东京的地址。职业一栏,他略微停顿了一下,然后写下”公务员”。
“加贺先生,您是第一次来我们村子吗?”静子接过登记簿,装作随意地问道。
“是的。”加贺的回答很简洁,但静子从他的眼神中感觉到,这个人的观察力很敏锐。他似乎在打量着什么,但又不显得突兀。
“那您可能要失望了,我们这里没什么特别的景点。”静子苦笑了一下,”就是一个普通的渔村,靠海吃海。不过海鲜倒是很新鲜,明天我让厨房给您准备一些当地特色。”
“谢谢。”加贺点头,”其实我觉得这样的地方很好,安静,远离城市的喧嚣。”
静子领着他上楼,走过狭窄的走廊。”您住203房间,这是我们最好的房间了,能看到海景。”她打开房门,”虽然现在外面风大,但明天天气好的时候,景色还是很不错的。”
房间不大,但收拾得很干净。简单的木制家具,白色的床单,墙上挂着几幅渔村风景的照片。加贺放下行李,走到窗前看了看外面。
“加贺先生,有什么需要的话请随时叫我。”静子准备离开,”对了,晚饭时间已经过了,如果您饿的话,我可以让厨房给您准备一些简单的食物。”
“不用麻烦了,我不饿。”加贺转过身,”不过我想问一下,这个村子平时都很安静吗?”
静子愣了一下。这个问题有些奇怪,但她还是回答道:”是的,我们这里民风淳朴,很少有什么事情发生。大家都是靠打鱼为生,日出而作,日落而息。”
“那就好。”加贺点点头,”谢谢您的招待。”
静子关上房门,心里却有些不安。这个叫加贺的客人给她一种很特别的感觉,不像是普通的游客。他的问题,他的眼神,还有他身上那种难以言喻的气质,都让她觉得有些不寻常。
回到一楼,静子坐在前台后面,听着外面越来越大的风声。台风确实要来了,按照天气预报,今晚会是最严重的时候。她想起了村长田中正雄前几天说的话,要大家做好防台风的准备,检查房屋,加固渔船。
田中正雄…想到这个名字,静子的表情变得复杂起来。作为村长,他确实很有威严,村里的大小事务都要经过他的同意。但是这个人的脾气实在是太暴躁了,对谁都是一副高高在上的样子。特别是对他的妻子花子,静子经常看到花子身上有一些可疑的伤痕,虽然花子总是说是自己不小心摔的。
还有那个外来的商人铃木次郎,最近经常来村里,说是要收购水产。但是静子总觉得他的目的不那么简单。铃木是她的远房亲戚,偶尔会住在她的旅馆里。每次来,他都会和田中正雄谈很久,两个人的声音越来越大,最后总是不欢而散。
静子摇摇头,不想再想这些复杂的事情。她起身检查了一遍门窗,确保都关得严实。台风夜里,最重要的就是安全。
楼上传来轻微的脚步声,应该是加贺在房间里走动。静子抬头看了看天花板,心里还是有些疑惑。这个客人到底是什么人?为什么会在这个时候来到他们这个偏僻的渔村?
外面的风声越来越大,夹杂着海浪拍打岸边的声音。静子关掉大厅的灯,准备回自己的房间休息。明天台风过后,应该又会是平静的一天吧。
她不知道的是,这个台风夜过后,这个安静的渔村将再也不会平静。而楼上那个叫加贺恭一郎的客人,将会成为改变一切的关键人物。
风在窗外呼啸,仿佛在预示着即将到来的风暴——不仅仅是自然的风暴,还有人心深处的风暴。
感觉如何?
尽管不算完美,但确实有几分日式推理的味道呢:-)
采用同样的方法,重复递进,可以生成后续章节,之前生成的章节可以作为后续章节的上下文。关键在于我们控制大纲outline.md文件,其中包含了人物设定、文风设定、谜题元素以及每个小节的故事规划,最终小说的质量便能得到有效保障。
接下来再生成最后一幕最后一节的内容看看吧:
# 第五幕第三节:爱与救赎
**【小林太郎视角】**太郎坐在旅馆的小房间里,透过窗户看着外面已经平静下来的海面。台风过去了,但他的内心却比台风夜更加汹涌。
祖母花子刚刚在加贺面前承认了一切。
“太郎什么都不知道。”祖母的声音在他耳边回响,”是我杀了他们,是我策划的一切。太郎只是在保护我。”
太郎紧紧握着拳头,指甲深深陷入掌心。他想要冲出去,想要告诉所有人真相不是这样的。但是祖母用那双温柔而坚定的眼神制止了他。
“孩子,让祖母来承担这一切吧。”
门轻轻被推开,加贺走了进来。太郎抬起头,看到这个高大的刑警脸上没有胜利者的表情,反而带着一种复杂的痛苦。
“太郎。”加贺在他对面坐下,声音很轻,”你祖母说的是真的吗?”
太郎看着加贺深邃的眼睛,那里面没有审讯者的冷酷,而是一种他从未见过的温暖。这个人真的想要了解真相,不是为了破案,而是为了理解。
“加贺叔叔。”太郎的声音有些颤抖,”您相信一个12岁的孩子能够独自完成那些诡计吗?”
加贺沉默了一会儿,然后摇摇头。”从技术上来说,可能性很小。但是从动机上来说…”
“我恨外祖父。”太郎打断了他,”我恨他打祖母,恨他骂我,恨他把我们当作出气筒。当我看到他死在那里的时候,我的第一个想法不是害怕,而是高兴。”
加贺点点头,没有表现出任何惊讶。”然后呢?”
“然后我意识到,如果警察来调查,他们会怀疑祖母。”太郎的眼泪开始往下流,”祖母那么善良,那么温柔,她不应该为了保护我而受到伤害。所以我决定承认是我做的。”
“但是你祖母不同意。”
“是的。”太郎擦了擦眼泪,”她说她已经活够了,而我还有很长的路要走。她说她不能让我为了她毁掉自己的一生。”
加贺深深地叹了一口气。”所以你们两个人,一个想要保护另一个,都愿意承担罪名。”
太郎点点头。”祖母教会了我什么是爱。不是外祖父那种占有和控制,而是真正的爱——愿意为对方牺牲一切的爱。”
“那么,真相到底是什么?”加贺的声音很轻,像是在问自己。
太郎看着这个善良的刑警,心中做出了最后的决定。”加贺叔叔,您觉得真相重要吗?”
“什么意思?”
“我是说,如果真相会伤害无辜的人,如果真相会让爱变成痛苦,那么真相还重要吗?”太郎的眼神变得成熟,远超他的年龄,”外祖父死了,佐藤叔叔死了,山田医生也死了。他们都不是好人,他们的死让这个村子变得更好。而祖母和我,我们只是想要保护彼此。”
加贺沉默了很久。太郎能看出他内心的挣扎——作为一个刑警,他应该追求真相;但作为一个人,他能理解这种相互保护的爱。
“太郎,你知道吗?”加贺最终开口,”有时候,最大的正义不是惩罚,而是理解。最大的智慧不是揭露真相,而是知道什么时候应该保持沉默。”
太郎惊讶地看着他。”您的意思是…”
“我的意思是,这个案子的调查到此结束。”加贺站起身,”你祖母已经承认了罪行,案件已经结案。至于其他的细节,我想没有必要再深究下去了。”
太郎感到一阵巨大的解脱。”谢谢您,加贺叔叔。”
“不用谢我。”加贺走到窗前,看着外面的海面,”我只是选择了相信,有些时候爱比真相更重要。”
太郎也走到窗前,和加贺并肩站着。”祖母会怎么样?”
“她会得到应有的法律程序,但考虑到她的年龄和特殊情况,我会在报告中建议从轻处理。”加贺转过头看着太郎,”而你,需要一个新的开始。”
“我想和祖母在一起。”
“我知道。我会尽力安排的。”加贺的声音很温和,”太郎,你还记得我第一次见到你时说过的话吗?”
太郎想了想,”您说我很聪明。”
“是的。你确实很聪明,聪明到能够设计出那些复杂的诡计,也聪明到知道什么时候应该保护自己爱的人。”加贺蹲下身,和太郎平视,”但是我希望你能把这种聪明用在正确的地方。这个世界需要像你这样聪明的人,但不是用来伤害别人,而是用来帮助别人。”
太郎认真地点点头。”我明白了。”
“还有一件事。”加贺站起身,”仇恨会毁掉一个人,但爱能够拯救一个人。你祖母用她的爱拯救了你,现在轮到你用你的爱去拯救别人了。”
太郎感到眼眶又湿润了,但这次不是因为痛苦,而是因为希望。”加贺叔叔,您觉得我还能成为一个好人吗?”
“我相信你已经是一个好人了。”加贺轻轻拍了拍他的肩膀,”一个愿意为了保护祖母而承担一切的孩子,怎么可能不是好人呢?”
外面,夕阳西下,海面上泛起金色的波光。台风过后的渔村显得格外宁静,仿佛什么都没有发生过。但太郎知道,一切都改变了。
他不再是那个被仇恨驱使的孩子,也不再是那个只知道用暴力解决问题的孩子。他学会了什么是真正的爱,什么是真正的勇气,什么是真正的救赎。
“祖母。”太郎轻声说道,”我们都得到了救赎。”
加贺没有说话,只是静静地站在那里,看着这个12岁的孩子从复仇走向救赎,从仇恨走向爱。这也许不是一个完美的结局,但这是一个充满希望的结局。
在这个偏僻的渔村里,在这个台风过后的黄昏里,一个关于爱与救赎的故事终于落下了帷幕。而这个故事告诉我们,即使在最黑暗的时刻,爱依然能够照亮前行的路。
太郎走向门口,准备去见祖母最后一面。在门口,他回头看了看加贺。
“加贺叔叔,谢谢您教会了我什么是真正的正义。”
加贺微笑着点点头。”记住,太郎,正义不是惩罚,而是让世界变得更好。”
太郎深深地鞠了一躬,然后走出了房间。
加贺独自站在窗前,看着远方的海面。作为一个刑警,他也许没有完成最完美的工作。但作为一个人,他选择了用理解代替审判,用爱代替仇恨。
这就是他的正义。
海风轻柔地吹过,带走了所有的痛苦和仇恨,留下的只有希望和爱。
故事结束了,但生活还在继续。而在这个继续的生活中,爱将成为最强大的力量。
不得不说,尽管最后一章也很震撼,让我起了一身鸡皮疙瘩,但还是没有东野圭吾小说终章那种穿透人心的力量,因此,AI仍然无法完全取代人类创作。
不过,在东野圭吾的新作问世之前,我会利用AI生成东野圭吾风格的小说来满足自己的阅读需求。