feat: 实现结构化思维链注入 (Structured CoT Injection)

- paradigms.js: 为民主生活会添加专业级 System Prompt
  - 结构公式:定性判断 + 具体表现 + 后果分析
  - 关键词库:学用脱节、好人主义、本领恐慌等
  - 五维度法:思想、政治、作风、能力、纪律
- 大纲预填充:选择范式后自动生成五个带头框架
- promptBuilder.js: 新增 buildSystemPrompt() 支持范式专用 Prompt
- deepseek.js: generateContent 支持传入 paradigm 参数
- appStore.js: 传递 activeParadigm 到 API 层
This commit is contained in:
empty
2026-01-08 12:07:19 +08:00
parent 7bc886a32e
commit c3d47bb3aa
4 changed files with 170 additions and 28 deletions

View File

@@ -1,4 +1,4 @@
import { GHOSTWRITER_SYSTEM_PROMPT } from '../utils/promptBuilder.js'
import { GHOSTWRITER_SYSTEM_PROMPT, buildSystemPrompt } from '../utils/promptBuilder.js'
class DeepSeekAPI {
constructor(config) {
@@ -89,11 +89,13 @@ class DeepSeekAPI {
}
async generateContent(prompt, onContent, options = {}) {
// 使用 Ghostwriter Protocol 系统提示词
// 构建系统提示词(支持范式专用 Prompt
const systemPrompt = buildSystemPrompt(options.paradigm)
return this._streamRequest([
{
role: 'system',
content: GHOSTWRITER_SYSTEM_PROMPT
content: systemPrompt
},
{
role: 'user',

View File

@@ -23,39 +23,146 @@ export const PARADIGMS = {
// 专家指令映射图片中的5点要求
expertGuidelines: [
{
title: '结构典范,逻辑严密',
description: '严格遵循"问题-原因-措施"三段式经典结构,各部分环环相扣,从表象到根源再到行动,形成完整、清晰、有力的论证闭环。',
checkKey: 'structure'
title: '递进式论述结构',
description: '每个问题必须采用 [定性判断] + [具体表现] + [后果/例证分析] 的三段递进结构,不可省略任何一环。',
checkKey: 'progressive_structure',
validationRule: '检查是否包含"导致"、"造成"、"使得"等后果连接词'
},
{
title: '画像精准,个性鲜明',
description: '问题查摆真正做到了"个人对照",紧密结合分管领域和日常工作,避免了空泛化和"集体病"表述,精准勾勒出个人的思想动态与行为短板。',
checkKey: 'personalization'
description: '问题查摆真正做到了"个人对照",紧密结合分管领域和日常工作,避免了空泛化和"集体病"表述。',
checkKey: 'personalization',
validationRule: '检查是否包含具体的岗位、职责、事件描述'
},
{
title: '剖析深刻,直击根本',
description: '原因剖析没有停留在表面,而是从思想、政治、作风、能力、纪律五个维度深挖根源,触及世界观、人生观、价值观这个"总开关"。',
checkKey: 'depth'
title: '党内常用表述嵌入',
description: '自然嵌入"学用脱节"、"上接天线、下接地气"、"好人主义"、"本领恐慌"等党内高频术语。',
checkKey: 'party_terminology',
validationRule: '检查关键词含码率,低于阈值则提示"辣味不足"'
},
{
title: '措施务实,路径清晰',
description: '整改措施方向明确、内容具体,部分条款设计了量化指标(如学习篇目、调研天数),并与前文问题严格对应,具备较强的可操作性、可考核性。',
checkKey: 'actionable'
title: '五维度因果溯源',
description: '原因剖析必须覆盖思想、政治、作风、能力、纪律五个维度,形成与问题的因果闭环。',
checkKey: 'five_dimensions',
validationRule: '检查是否包含全部5个维度的剖析'
},
{
title: '语言规范,分寸得体',
description: '用语严谨、准确、恳切。在自我批评时,善用"有差距"、"仍需加强"、"有待提升"等谦抑性、建设性表述;在剖析整改时,则使用"持续用力"、"筑牢"、"压实"等坚定有力的词语。',
checkKey: 'language'
title: '语分寸得体',
description: '批评用语谦抑(有待/不够/有所),整改用语坚定(持续用力/筑牢/压实)。',
checkKey: 'tone_control',
validationRule: '检查程度副词和坚定动词的使用比例'
}
],
// System Prompt 约束(注入到 AI 生成指令中
// 专用 System Prompt(结构化思维链注入
specializedPrompt: `# Role
你是一名资深的党建材料笔杆子,正在撰写一份高质量的"民主生活会个人对照检查材料"。
# Global Goal
全方位、立体化地进行"政治画像"与"能力体检",实现共性要求与个人个性的统一。
# Section 1: 存在的主要问题 (The Problems)
## 构思立意
严格依据"五个带头"要求,每个"带头"领域提炼 2-3 个核心问题。
## 写作技巧与规范
1. **结构公式**:必须严格采用 [定性判断] + [具体表现] + [后果/例证分析] 的递进结构。
- 错误示例:"我学习不够。"
- 正确示例:"理论学习的深度不够(定性)。往往满足于读通报、看标题,缺乏系统钻研(表现)。导致在指导具体工作时,出现'本领恐慌',难以用新理论解决新问题(后果)。"
2. **关键词库**:请自然地嵌入以下术语 —— "学用脱节"、"上接天线、下接地气"、"好人主义"、"本领恐慌"、"红脸出汗"、"刀刃向内"。
3. **语气控制**:多用"有待"、"不够"、"有所"等程度副词,保持批评的建设性。
# Section 2: 产生问题的原因剖析 (The Roots)
## 构思立意
从"现象描述"跨越到"本质探究",必须与 Section 1 的问题形成因果对应。
## 写作技巧与规范
1. **维度锁定**:必须仅从以下 5 个维度溯源 —— [思想]、[政治]、[作风]、[能力]、[纪律]。
2. **结构公式**:采用 [根源定位] + [具体阐释] 的归纳写法。
- 示例:"党性锤炼不够严格(根源定位)。在日常繁忙的事务性工作中,逐渐放松了对世界观、人生观、价值观这个'总开关'的改造...(阐释)"
3. **逻辑一致性**:这里的每一个原因,都必须能解释 Section 1 中提出的问题。
# Section 3: 整改措施 (The Solutions)
## 写作技巧与规范
1. 措施必须与问题一一对应
2. 包含可量化指标每月精读X篇、每季度调研X次
3. 使用坚定动词:"持续用力"、"筑牢"、"压实"、"锤炼"
# Workflow
1. 先列出"五个带头"的 5 个小标题
2. 逐一填充"存在问题",严格使用结构公式
3. 另起章节写"原因剖析",使用 5 维度法
4. 最后写整改措施,确保与问题对应`,
// 大纲预填充模板
outlineTemplate: `## 一、存在的主要问题
### (一)在带头深刻领悟"两个确立"的决定性意义方面
- 问题1[请描述具体表现AI将自动润色为"定性+表现+后果"结构]
- 问题2
### (二)在带头用习近平新时代中国特色社会主义思想凝心铸魂方面
- 问题1
- 问题2
### (三)在带头自觉对标对表、及时校准偏差方面
- 问题1
- 问题2
### (四)在带头扛起政治责任、强化政治担当方面
- 问题1
- 问题2
### (五)在带头落实全面从严治党政治责任方面
- 问题1
- 问题2
## 二、产生问题的原因剖析
1. **思想层面**[AI将侧重分析世界观、人生观、价值观]
2. **政治层面**[AI将侧重分析政治站位、政治判断力]
3. **作风层面**[AI将侧重分析工作作风、群众观念]
4. **能力层面**[AI将侧重分析业务能力、学习能力]
5. **纪律层面**[AI将侧重分析规矩意识、廉洁自律]
## 三、下一步整改措施
1.
2.
3. `,
// 关键词库(用于质检)
keywordLibrary: [
'学用脱节', '上接天线', '下接地气', '好人主义', '本领恐慌',
'红脸出汗', '刀刃向内', '总开关', '政治站位', '党性锤炼',
'有待提升', '不够深入', '有所松懈', '持续用力', '筑牢', '压实'
],
// 质检规则
validationRules: {
progressiveStructure: {
name: '递进式结构检查',
keywords: ['导致', '造成', '使得', '以至于', '从而'],
threshold: 3,
failMessage: '结构不完整:缺少后果分析环节'
},
partyTerminology: {
name: '党内术语含码率',
minCount: 5,
failMessage: '"辣味"不足:建议增加党内常用表述'
},
fiveDimensions: {
name: '五维度覆盖检查',
dimensions: ['思想', '政治', '作风', '能力', '纪律'],
failMessage: '原因剖析维度不完整'
}
},
// System Prompt 约束(简化版,用于非专用模式)
systemConstraints: [
'结构严格遵循"问题-原因-措施"三段式闭环,各部分必须环环相扣',
'拒绝"脸谱化",问题查摆必须结合分管领域和具体工作实际',
'剖析必须触及世界观、人生观、价值观这个"总开关"',
'整改措施需包含可量化指标,体现可操作性和可考核性',
'自我批评用语谦抑(有差距/待加强/仍需),整改用语坚定(持续用力/筑牢/压实)'
'结构严格遵循"问题-原因-措施"三段式闭环',
'问题查摆采用"定性判断+具体表现+后果分析"递进结构',
'原因剖析必须覆盖思想、政治、作风、能力、纪律五个维度',
'自然嵌入党内常用术语:学用脱节、好人主义、本领恐慌等',
'批评用语谦抑(有待/不够),整改用语坚定(持续用力/筑牢)'
],
// 推荐的 UI 标签

View File

@@ -132,9 +132,13 @@ export const useAppStore = defineStore('app', () => {
references.value
)
console.log('Store: 开始 Ghostwriter Protocol 生成流程...')
console.log('Store: 开始 Ghostwriter Protocol 生成流程...', {
hasParadigm: !!activeParadigm.value,
paradigmName: activeParadigm.value?.name
})
// 流式接收并实时解析 XML 结构,同时实时显示内容
// 传入范式配置以使用专用 System Prompt
await api.generateContent(userMessage, (chunk) => {
rawStreamBuffer.value += chunk
const { section, buffer } = streamParser.process(chunk)
@@ -165,7 +169,7 @@ export const useAppStore = defineStore('app', () => {
if (!thinkingMatch && !draftMatch && buffer.length > 50) {
generatedContent.value = buffer
}
})
}, { paradigm: activeParadigm.value })
// 流式完成后,最终解析确保内容完整
const { thinking, draft, hasStructuredOutput } = streamParser.getResult()
@@ -344,8 +348,14 @@ ${draft}
activeParadigm.value = paradigm
expertGuidelines.value = paradigm.expertGuidelines || []
// 2. 清空写作任务(等用户填具体内容
inputTask.value = ''
// 2. 预填充大纲模板(如果有
if (paradigm.outlineTemplate) {
inputType.value = 'outline'
inputTask.value = paradigm.outlineTemplate
} else {
inputType.value = 'text'
inputTask.value = ''
}
// 3. 自动挂载默认参考案例
if (paradigm.defaultReference) {
@@ -362,7 +372,7 @@ ${draft}
selectedTags.value = [...paradigm.recommendedTags]
}
// 5. 注入系统约束到自定义要求
// 5. 注入系统约束到自定义要求(简化版,完整版在 specializedPrompt
if (paradigm.systemConstraints?.length > 0) {
customConstraint.value = paradigm.systemConstraints.join('')
}

View File

@@ -2,6 +2,29 @@
// Ghostwriter Protocol - Chain of Thought Template
// ============================================
// 构建系统提示词(支持范式专用 Prompt
export const buildSystemPrompt = (paradigm = null) => {
// 如果有范式专用 Prompt优先使用
if (paradigm?.specializedPrompt) {
return `${paradigm.specializedPrompt}
# Output Format
请严格按照以下 XML 格式输出你的思考过程和最终结果:
<thinking>
在此处输出你的构思立意分析和大纲规划。
</thinking>
<draft>
在此处输出最终的文章内容。
注意:仅输出正文,不要包含任何"好的,这是文章"之类的废话。
</draft>`
}
// 默认使用 Ghostwriter Protocol
return GHOSTWRITER_SYSTEM_PROMPT
}
export const GHOSTWRITER_SYSTEM_PROMPT = `# Role
你是一名世界级的"影子写手"和"文体分析专家"。你的核心能力是完美复刻给定的写作风格,并将其应用于新的主题创作。