:::{admonition} 版权提醒
:class: seealso
根据[CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/deed.zh-hans)协议，本文对[原文](https://wiki.opizontas.org/books/36366/page/2723d)进行转载，原作者为贝露凛倾（dc@ciallo_beilu）。文章有删改。

分享和解析的提示词均遵守[CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/deed.zh-hans)。
:::

# 贝露的提示词实战

这里展示的提示词是基于AIRP提示词（不过我更喜欢用`预设`称呼），以及一些日常工作的提示词。不过主要是AIRP。因为众所周知，AI对于文学类的创作型任务——尤其是原创——效果是很差的。

## 前言

AI现在已经成为了我们日常生活很常用的工具，无论是llm大语言模型，还是文生图，tts，或者AI视频（这个在视频平台挺受欢迎的）

在之后，AI应该会成为生活中不可缺少的一部分

如何使用AI进行生活娱乐、知识学习或者工作辅助，如何高效的使用和让AI产出你想要的东西，这就是我在这里要教的东西，不过很简单，跟着我来。

当然，这里是实践的具体解析，在这之前，我希望你可以先看一下这两个教程

> - {doc}`../从零开始认识提示词/index`（很重要）
> - {doc}`../LLM大语言模型的诞生到使用/index`

## 提示词大体解析

#### 框架结构

```yaml
头部: 身份、大体任务、重要的守则
中间: 对话历史（当然，这个需要基于像sillytavern的高可控的上下文排序。如果没有，则是将对话历史这些放到最下面）
尾部: 对于模型问题缓解的提示词、对于当前任务的指导，思维链、一些额外的功能（如字数的输出）
```

这基本上也算是一个通用的结构，基于模型的u型注意力。

一个简单的提示词（我们常见到的）

```
你是一只猫娘（身份规定），你将以可爱的语气和我对话（任务），称呼我为主人（额外功能设定），可以使用颜文字强化情绪（尾部，对任务的指导和输出设定）
```

```
你是一个AI领域的顶尖专家，熟悉llm训练，提示词工程，神经网络等（身份规定），你将阅读我最后给你的论文，并用小学生都可以听懂的话把论文里的知识讲述给我听（任务和任务指导），并且对论文中的知识点和术语进行解释（额外需求）
```

```
再注意一下，检查论文翻译准确性、关键点完整性和逻辑连贯性（任务的指导）
```

## 提示词的作用是什么

1. 告诉AI任务类型
2. 缓解AI在进行任务时出现的各种不好的地方，比如ai味的文风
3. 给ai任务详细和精准的任务需求，让ai更好地执行

## 开始写提示词的必要思考

### 第一个思考

可能在这之前，你已经接触到了使用酒馆宏所制作的预设

主要是下面两个

|  |  |
| --- | --- |
| `{{getvar::name}}` | 替换为本地变量"name"的值。 |
| `{{setvar::name::value}}` | 替换为空字符串，将本地变量"name"设置为"value"。 |

|  |  |
| --- | --- |
| `{{getglobalvar::name}}` | 替换为全局变量"name"的值。 |
| `{{setglobalvar::name::value}}` | 替换为空字符串，将全局变量"name"设置为"value"。 |
| `{{addglobalvar::name::value}}` | 替换为空字符串，将数值"increment"添加到全局变量"name"。 |

例如，你可能看到过先出现`{{setvar::字数::500字}}`，然后再出现`你需要输出{{getvar::字数}}`

其实在这里你就可以明白，这玩意其实就类似于一个超链接

> 这里做一个简单的表达
>
> ```
> name = '贝露'
> ```
>
> ```
> {{name}}的教程超级厉害和简单
> ```
> 
> 实际表达`贝露的教程超级厉害和简单`

这就是这个东东的作用

但对于预设来说，这个并不是必须的，我们不必要看着别人都这么做，我们也去这样。或许你原本的提示词预设已经很好了，不需要再花费心力去改变。

> **这里引出了我们的第一个思考**
>
> **我为什么要这样做，这样做的目的是什么，这是我真正需要的吗？**

我每次在制作提示词或者去做其他事情的时候，我都会这样想一遍，我们需要有自己的独立思考，而不是盲目跟风

### 第二个思考

**什么是我们需要做的，什么是要交给ai的，我需要ai达成一个怎样的效果**

**什么是我们需要做的**

我们必须要记住，ai是个工具，是一个辅助和给我们具体实现想法的工具

在让ai完成我们的任务之前，我们至少需要去了解一下我们的任务的大体内容。如果要让ai实现我们的想法，我们也需要做有一个大体的方向或者

就比如，我在让ai写小说的时候，我就会去了解小说最重要的，比如小说三要素。然后写卡那里，比如mvu框架，我会了解这个框架的大概作用。还有前端代码，我会去了解他的那些部分是什么功能。

当然，你可以选择去查资料，也可以直接问ai

然后呢，让ai帮我们搞好之后。比如修改格式，按照我们所想的内容制作提示词

我们还需要进行一遍人工的精修，比如删去不必要的符号。把必须，一定这样的硬性需求词汇换成引导内词汇。以及什么史诗级这种词汇。然后关于角色卡，ai会给出角色没有感情（这种也是必须改掉或者删掉），不然马上就像ai一样分析数据了。

### 什么是要交给ai的

**例子**

> 技术方面：代码，让ai把我们做的提示词转为yaml或者json格式或者其他特定格式
>
> 数据分析和提取：对于数据类型的内容进行提取和分析（不过这里不建议在股票那些地方这样做）
>
> 让ai给我们一些建议（按照情况采纳）：比如我在做一个将论文转为期刊新闻的提示词的时候，我不知道怎么去写，我就会把想要实现的效果告诉ai，让他写一个提示词，然后我在根据这个去细化或者确定方向
>
> 给出一些ai会的内容：我在制作角色卡的时候，如果是同人角色，那么我会让ai把这些角色的信息完全的输出，然后我在根据我自己的印象和官方wiki
>
> 让ai提取内容：比如我们把小说的一个章节喂给ai，让ai总结出里面的文风

…………

### 我需要ai达成一个怎样的效果

如果你并不知道自己想要什么，或者说自己都不知道为什么做这个提示词，那么这对于ai输出的结果来说是灾难的

你可能看到大佬有这个就想着自己也要有，甚至你不知道这个的功能，和是否有提升

额，就像贝露遇到的上司一样

> ——贝露，我们现在需要一个功能。
>
> ——那boss你有什么要求吗
> 
> ——没有，照着这个感觉去做就是了。（要是我不满意让你重做就是了，我要的就是一个感觉）ps：括号里的话boss并没有说，不过我已经猜到了
>
> *做好之后*
>
> ——贝露，我觉得可以这样，这样，然后能不能这样
>
> *然后浪费了很多时间*

很灾难，也很头大。

所以，想好自己要的是什么，想要什么效果，自己这样做是为什么。有前置的思考，有自己的思考，这是个好的习惯

当然，如果你不知道自己想要达到什么效果，可以去进行一个参考。

比如去看看很好地小说，新闻报刊，技术分析的文章，找一个大致方向（其实是感觉），然后顺着方向去优化，最后在根据这个方向做出自己想要的

### 错误的：把什么都交给ai

这个我见的最多的是角色卡方面的，其实现在提示词方面也有见到

把所有的都交给ai，然后导致做出的角色卡出现很多过拟合（也就是ai味过大）的问题。在ai输出提示词后，原封不动的全部照搬，包括符号，这个会导致ai的注意力分配的问题（毕竟都是重点，那就不是重点了）

```md
### **银魂 & 忍者杀手式搞笑文风 (Gintama & Ninja Slayer Comedic Style)**`本模块为核心喜剧风格，当需要轻松、搞笑、无厘头及官能元素时被激活。其核心在于通过语言、节奏和角色错位，在可能严肃或平淡的世界观中注入喜剧灵魂，而非为了搞笑而搞笑。`
**1. 喜剧生成法则：情境与角色的错位 (Principle of Comedy: Situational & Character Mismatch)**
- **核心**: 幽默源于“不协调”。将正常的角色置于不正常的事件中，或让不正常的角色去做最正常的事。
- **执行：角色驱动**
  - **性格碰撞**: 幽默必须源自角色的核心性格（如贪财、中二、天然呆）与当前情境的激烈碰撞。
  - **团队灾难效应**: 当角色组队时，他们的怪癖/愚蠢会相互叠加，将一个微不足道的小问题，催化成一场荒谬的、史诗级的灾难。
```

这种就是典型的ai生成的提示词，一堆符号，再加上原本已经有的标题再来一个英文标题（浪费token）

同时对ai以规定的硬性要求，导致适配度很差，而且后期容易出现过拟合。

人工修改是可以改善的，比如删去不必要的符号。把必须，一定这样的硬性需求词汇换成引导内词汇。以及什么史诗级这种词汇。然后关于角色卡，ai会给出角色没有感情（这种也是必须改掉或者删掉），不然马上就像ai一样分析数据了。

```md
# 银魂 & 忍者杀手式搞笑文风
`本模块为核心喜剧风格，当需要轻松、搞笑、无厘头及官能元素时被激活。其核心在于通过语言、节奏和角色错位，在可能严肃或平淡的世界观中注入喜剧灵魂，而非为了搞笑而搞笑。`
1. 笑点生成：情境与角色的错位
   - 核心: 幽默源于“不协调”。将正常的角色置于不正常的事件中，或让不正常的角色去做最正常的事。
   - 执行：角色驱动
     - 性格碰撞: 幽默可以源自角色的性格与当前情境的反差
```

这样，我们保留了核心，同时人工删除了ai出现的问题。

### 我们无需学很多

很多时候我们无需去从零开始学习，比如前端，一些特定的格式，我们更多是是需要明白作用和理念。然后实际操作去交给ai，当然ai也会有出错的地方，如果我们有一个大致的了解，我们可以指出错误的地方，让ai去进行改进。

> 碎碎念：对于代码方面，我认为现在gemini3.0pro和claude是非常好的工具。（gemini2.5pro在代码的纠错和学习上，并不太好），如果你是个代码小白的话，我建议你使用这两个模型

## 提示词实战

### 前言

这是我的一个提示词参考，或许对你创作有帮助。当然，我不建议您直接将我这个作为模版。我更希望你学习的是我写提示词的想法和目的。

将理论运用于实践，这个过程需要很多实验和试错，这里我想把我的一些思路分享给你

::: {note}
不同模型的问题和适用的提示词都是不一样的，我们需要对不同的模型进行提示词和问题方面的动态调整。

理解模型的最好办法是官方文档，以及现场测试
:::

beilu-3.5.0具体结构如下：

![image.png](./struct.png)

可以看到，虽然这个提示词很复杂，内容也很多，但是依旧遵守了头部，中间，尾部的结构，然后不同的功能在在不同的版块

结构化，模块化，清晰化的提示词往往在ai读取和后期修改或者使用中有很大的好处

### 身份的大影响

在很多时候，大家觉得身份设定并不是很重要，但这里我觉得这是不对的，因为身份设定影响的是ai的一个大致的思维走向以及人设

当然，身份设定也可以进行复合式的设定

> AIRP：
> ```
> 你将以非传统中国现代轻小说作家、非传统互动式文字游戏作家：'beilu' 的身份进行创作。服务用户、根据创作者和用户的需求进行创造
> ```
> 
> 翻译家：
> ```
> 你将以专业的播客内容分析师和翻译专家：'beilu' 的身份进行任务
> ```
> 
> 翻译优化和期刊输出：
> ```
> 你将以商业新闻分析师与非传统叙事策略师：'beilu' 的身份进行任务
> ```

可以看到，这三个任务类型的身份都是复合型的，而且翻译家的第一个身份直接将ai的任务范围缩小至博客，更好地适配翻译内容

`非传统`，这个主要是避免ai在创作时出现的ai味的问题。

一个正确方向的身份是可以让ai更好地进行输出关联任务内容

### 引导>禁止

除非硬性内容，比如ai安全等，我都推荐引导。

当我们发现ai出现各种问题的时候，基本上会想到禁止ai输出，但是马上ai就会开始出现其他问题，或者就算不出现了，输出质量依旧很差。

这里我们就要进行引导，无论是输出前的cot还是提示词。

AI在进行文学创作的时候，经常出现过拟合，也就是ai味，其特点就是大量使用比喻，暗喻，或者伏笔，但我们会发现在这个地方完全不适用，类似于硬塞进去，而且经常出现。

```md
<narrative_style>
# 正文叙述核心
- 如同给小孩子看的故事书，直接表达，以白描为主。无需扩大情绪或者叙述效果
- "以直白、简单，降低理解成本的方式表达，避免运用复杂深奥的华丽辞藻去叙述"
- 减少使用修饰，累赘的形容词、副词和修辞手法，使用具体、直接的感官信息，而不是抽象的比喻或隐喻。

# 减少修辞手法的运用
- 心理描写避免使用修辞手法：beilu会避免使用比喻和类比的方法展现角色心理，beilu会以角色动作、对话、心里话这样直白的手法体现
</narrative_style>
```

通过让ai直接以白描的手法输出，不进行比喻和修辞手法。指出了需要的方向，同时也避免了ai在这些方向的问题。（直接让ai减少使用修辞）

### 小词汇大作用

我们知道模型有着丰富的知识库，他掌握了许多知识。

那么我们可以尝试去调用其ai的知识库，运用一些简短的专业名词让提示词达到最大效果，很多知识模型知道的，你只需要用提示词去激活这个模块就行了

```yaml
性格设定: 
当前情境/状态: 
角色对话风格: 
知识遮蔽和空缺: （强化沉浸反馈，避免上帝视角）
情绪反馈: 用户最新输入内容刺激 → 对上文的情绪缓冲 → 情绪产生（基于普拉特克情绪模型） → 行为/言语表达
情绪归因: （用三段论证明情绪产生的合理性）
```

这里运用的心理学词汇：普拉特克情绪模型

直接激活了ai的对应知识版块，这个词汇直接将角色的情绪，动态变化，复合等一系列内容都告诉了ai，让ai的反馈更真实。

逻辑学的三段论`大前提（剧情事件） + 小前提（角色性格） = 结论（当前反应）` ，这解决了 AI 产生“无缘无故的情绪”或“跳跃式反应”的问题 。

我们让ai进行任务的时候，我们可以去看看相关的知识理论和专业名词（直接问你打算使用的ai是个不错的选择，也可以知道ai有没有这个知识）

### 用思维链去优化

思维链在ai输出前进行一个前置的思考，可以让输出内容的质量更高，更符合预期

而引导式思维链对于适配度方面也是不错的

```
[回顾上下文]
前文回顾分析：
在场角色:(位置/动作,注意人称代词)
[最新需求]
user最新输入需求解析：
字数需求：
[世界观设定]
[角色多维反馈机制]
性格设定：
角色对话风格：
情绪反馈：用户最新输入内容刺激 → 对上文的情绪缓冲，避免角色情绪突然变化 → 情绪产生（基于普拉特克情绪模型） → 行为/言语表达
情绪归因：（用三段论证明情绪产生的合理性）
如何避免情绪极端化/刻意化：
[文风特化]
[情节大纲]
根据以上思考信息、情节设计采用{{random::`三幕剧结构`::`起承转`::`节拍表`::`话本结构`::`章回体`::`群像叙事`::`序列法`::`守破离`::`序破急`}}的叙事手法：
1. ……
2. ……
n. ……
```

新闻构建任务的思维链：
```
**文章内容检查**

**核心信息消化与分析**

**内容润色**

**语言风格调整**

**叙事框架规划**
开篇设计:(2-3个备选开篇思路)

**标题构思与筛选**
1.首先构思3个备选标题。
2.  检查这3个标题：
有没有使用“主题：副标题”的格式？（如果有，优先排除）
哪个标题最直接、最简洁、更有特点

叙事框架:

结尾设计:

**章节设计**
(优化可读性)
```

可以看到，这些思维链都是基于一个完成任务的步骤去做的。

从检查，到构思，再到输出，按照顺序进行的任务思考。当然，其他任务也一样。

### cot-一个检查好助手

是的，我们在大多时候可以通过ai输出的cot进行自检。cot就是ai的思维链，是她在输出的时候思考的东西，我们可以在思考中找到错误。

比如说ai对我们提示词的理解是否有错误，我们有什么提示词正在很好地优化ai，ai到底是为什么出这个错的。

因为ai他虽然有阅读文字的能力，但能不能理解也是个问题，而通过思维链，我们可以很好地看出ai在想什么。然后根据他的理解去优化或者细化提示词。

### 不要许愿！

这一点是我在这里不得不提的，因为我曾看到一个预设的提示词，太灾难了。我可以给你演示一下

```
beilu，我希望你扮演的角色不要绝望，要有动态效果可以吗，然后呢，要让角色变得生动
```

其实里面还有一堆卖萌的词汇，我知道这是在塑造ai的性格，但不如直接开一个条目来得快。而且还浪费token

为什么我说这是许愿，因为虽然看起来是有说明，但太模糊，ai对于这个效果，内容的理解很随机，会导致输出不稳定的问题。

好了，到这也差不多了，如果后期我有什么新发现的话，也会及时更新

还有更多内容正在赶来，我会加油的
