feat: 审查流程优化+采集定时调度+全链路LLM提示词升级
- 审查:移除 manual_review,改为迭代LLM修复(最多3次),合规分回写Topic - 调度:scheduler 新增话题采集定时任务 scheduled_collect (01:30) - 提示词:全链路8文件≈24个提示词升级,增强SEO/平台推荐/真人感
This commit is contained in:
+77
-50
@@ -105,16 +105,30 @@ class Writer:
|
||||
return content
|
||||
if HAVE_LLM and len(content) < 150:
|
||||
logger.info(f"使用 LLM 扩写章节: {section['title']}")
|
||||
prompt = f"""你是一个真人写作者,在写一篇关于「{self.topic['title']}」的文章。现在要写「{section['title']}」这一节,你的笔记要点如下:
|
||||
prompt = f"""你是一个真人写作者,正在写一篇关于「{self.topic['title']}」的文章。现在写「{section['title']}」这一节。
|
||||
|
||||
笔记要点:
|
||||
{content}
|
||||
|
||||
要求:
|
||||
- 200-300字,用自己的话展开
|
||||
要求(逐条对照):
|
||||
### 价值
|
||||
- 回答读者一个具体问题或解决一个困惑
|
||||
- 每个论点配真实案例或数据,不写空话
|
||||
- 结束时读者要有「学到了」的感觉
|
||||
|
||||
### 真人感
|
||||
- 用「你」或「我们」视角,不要用「我」
|
||||
- 读起来像人在自然说话,不是AI在组装文字
|
||||
- 避免「首先」「其次」「总的来说」「综上所述」这类套路表达
|
||||
- 如果合适,可以加一句反问
|
||||
- 像人在自然说话,不是AI组装文字
|
||||
- 避免「首先」「其次」「总的来说」「综上所述」「值得注意的是」
|
||||
- 段落短,2-4句一段,节奏有变化
|
||||
- 适当用反问或口语化表达
|
||||
|
||||
### SEO
|
||||
- 自然融入1-2个目标搜索词,不生硬堆砌
|
||||
- 第一句包含核心关键词
|
||||
|
||||
### 长度
|
||||
- 200-400字,写到点子上就停
|
||||
|
||||
直接输出段落正文。"""
|
||||
try:
|
||||
@@ -160,19 +174,22 @@ class Writer:
|
||||
cfg = PLATFORM_CONFIG[platform]
|
||||
|
||||
platform_prompts = {
|
||||
"zhihu": f"""你是一个知乎答主。把以下文章改写成知乎回答。
|
||||
"zhihu": f"""你是一个知乎高赞答主。把以下文章改写成能获得高赞+高收藏+被推荐到知乎日报级别的回答。
|
||||
|
||||
## 知乎回答的特点
|
||||
- 知乎用户习惯理性分析、数据支撑、逻辑递进
|
||||
- 开头直击问题本质,不绕弯子
|
||||
- 每一段讲一个观点,段与段之间有逻辑推进
|
||||
## 知乎爆款特征
|
||||
- 开头即结论:前3行说清核心观点,不铺垫
|
||||
- 每个观点有数据/案例/逻辑推导支撑
|
||||
- 结构清晰:扫读能抓重点,精读有深度
|
||||
- 互动钩子:适当留白或提问引发讨论
|
||||
- SEO:首段包含用户搜索时的核心关键词
|
||||
|
||||
## 改写要求
|
||||
- 用第三人称或「我们」视角,不要用「我」
|
||||
- 不要编个人经历——知乎读者在意的是分析质量,不是故事
|
||||
- 开头可以抛数据、抛现象、抛一个矛盾点
|
||||
- 不用"首先其次最后",用自然过渡
|
||||
- 避免AI感表达:「总的来说」「综上所述」「值得注意的是」
|
||||
- 不要编个人经历——知乎读者在意的是分析质量
|
||||
- 每个主要观点配1个数据或案例支撑
|
||||
- 段落之间空行分隔,逻辑递进
|
||||
- 避免「总的来说」「综上所述」「值得注意的是」
|
||||
- 结尾可用引导性提问
|
||||
- 字数:{cfg['max_chars']}字以内
|
||||
|
||||
## 原文
|
||||
@@ -181,18 +198,21 @@ class Writer:
|
||||
## 输出
|
||||
直接输出改写后的完整内容(仅正文),每段后空一行。""",
|
||||
|
||||
"wechat": f"""你是一个公众号作者。把以下文章改写成公众号推文。
|
||||
"wechat": f"""你是一个10万+爆款公众号作者。把以下文章改写成读者愿意转发到朋友圈的推文。
|
||||
|
||||
## 公众号推文的特点
|
||||
- 开头必须制造共鸣或好奇心,让读者愿意往下读
|
||||
- 短段落,有节奏感,每段2-3行
|
||||
- 核心观点加粗突出
|
||||
## 公众号爆款特征
|
||||
- 开头3秒定生死:第一句制造共鸣或好奇心
|
||||
- 短段落+节奏感:每段2-3行,手机阅读友好
|
||||
- 金句频出:每200字左右有一个可截图发朋友圈的句子
|
||||
- 社交货币:读者转发=表达自己的观点
|
||||
- SEO:标题和开头包含微信搜索关键词
|
||||
|
||||
## 改写要求
|
||||
- 用「你」视角,**通篇不允许出现「我」字**
|
||||
- 把原文中所有的「我」改成「你」或「很多人」或「有人」
|
||||
- 结构可以和原文完全不同——公众号不需要全面的分析,抓住1-2个痛点打透就行
|
||||
- 可以删减原文内容,保留最有力的观点
|
||||
- 把原文中所有「我」改成「你」或「很多人」或「有人」
|
||||
- 结构可完全不同——抓住1-2个痛点打透,不用全面分析
|
||||
- 可删减原文,保留最有力的观点和最打动人的案例
|
||||
- 适当加粗核心观点(不要整段加粗)
|
||||
- 避免「综上所述」「值得注意的是」「换言之」
|
||||
- 字数:{cfg['max_chars']}字以内
|
||||
|
||||
@@ -202,21 +222,23 @@ class Writer:
|
||||
## 输出
|
||||
直接输出改写后的完整内容(仅正文),每段后空一行。""",
|
||||
|
||||
"xiaohongshu": f"""你是一个小红书用户。把以下文章改写成小红书笔记。
|
||||
"xiaohongshu": f"""你是一个小红书爆款笔记写手。把以下文章改写成收藏过万的笔记。
|
||||
|
||||
## 小红书笔记的特点
|
||||
- 极短!极短!极短!小红书用户没耐心看长文
|
||||
- 直接给结论、给清单、给步骤
|
||||
- 原文通常很深很全,但笔记只取最关键的2-3个点
|
||||
## 小红书爆款特征
|
||||
- 极短!用户3秒扫不完就会划走
|
||||
- 直接给结论/清单/步骤,不给分析过程
|
||||
- 标题采用「数字+结果」模式
|
||||
- 正文用emoji做视觉分割,人人阅读
|
||||
- SEO:标题和正文包含用户搜索关键词
|
||||
|
||||
## 改写要求
|
||||
- **全文控制在 {cfg['max_chars']} 字以内**,多一个字都不要
|
||||
- 用「你」视角,不要用「我」
|
||||
- 开头一句抓住注意力,可以是结论、可以是一个反常识的观点
|
||||
- 正文每段1-2句,可以完全打乱原文结构
|
||||
- emoji每人段最多1个点缀,不要堆砌(✨💡✅🔸)
|
||||
- 结尾加 #话题标签 3-5个
|
||||
- 原文的深度分析全部砍掉,只留最 actionable 的内容
|
||||
- **全文 {cfg['max_chars']} 字以内**,多一个都不要
|
||||
- 用「你」或「姐妹」视角,不要用「我」
|
||||
- 开头一句抓住注意力(反常识观点或「你知道吗…」)
|
||||
- 正文每段1-2句,可完全打乱原文结构
|
||||
- emoji每段最多1个(✨💡✅🔸选1-2个用),不堆砌
|
||||
- 结尾加3-5个#话题标签:1-2个流量大标签+1-2个精准标签
|
||||
- 深度分析全部砍掉,只留最 actionable 的内容
|
||||
|
||||
## 原文
|
||||
{markdown[:3000]}
|
||||
@@ -276,9 +298,9 @@ class Writer:
|
||||
core = self.topic.get('core_concept', '')
|
||||
|
||||
tag_prompts = {
|
||||
"zhihu": f"根据文章信息,生成知乎文章分类标签(3-5个,每个2-4字)。知乎标签偏学术/行业分类,如「经济学」「消费心理学」「科技趋势」。标题:{title} 领域:{field} 核心观点:{core} 直接输出标签,空格分隔。",
|
||||
"wechat": f"根据文章信息,生成微信公众号文章标签(3-5个,每个2-4字)。公众号标签偏话题/兴趣分类,如「省钱攻略」「生活方式」「成长干货」。标题:{title} 领域:{field} 核心观点:{core} 直接输出标签,空格分隔。",
|
||||
"xiaohongshu": f"根据文章信息,生成小红书笔记标签(3-5个,每个2-4字)。小红书标签偏场景/人群分类,如「实用干货」「学生党」「打工人必看」「好物分享」。标题:{title} 领域:{field} 核心观点:{core} 直接输出标签,空格分隔。",
|
||||
"zhihu": f"为以下文章生成知乎标签(3-5个),帮助文章在知乎搜索中获得曝光。包含1-2个宽泛大标签(获取流量)+1-2个精准标签(精准触达)。标题:{title} 领域:{field} 核心观点:{core} 每个2-4字。直接输出标签,空格分隔。",
|
||||
"wechat": f"为以下文章生成公众号标签(3-5个),帮助文章在微信搜一搜中获得排名。包含1-2个高搜索量标签+1-2个长尾标签。标题:{title} 领域:{field} 核心观点:{core} 每个2-4字。直接输出标签,空格分隔。",
|
||||
"xiaohongshu": f"为以下文章生成小红书标签(3-5个),帮助笔记在搜索中获得曝光。包含1个流量大标签+2-3个精准场景标签。标题:{title} 领域:{field} 核心观点:{core} 每个2-4字。直接输出标签,空格分隔。",
|
||||
}
|
||||
|
||||
if HAVE_LLM:
|
||||
@@ -324,41 +346,46 @@ class Writer:
|
||||
return original
|
||||
|
||||
title_templates = {
|
||||
"zhihu": f"""你是一个知乎用户,在写一个回答的标题。
|
||||
"zhihu": f"""你是一个知乎用户,在给自己的深度回答起高点击率标题。
|
||||
|
||||
原文标题:{original}
|
||||
领域:{self.topic.get('field', '')}
|
||||
|
||||
要求:
|
||||
- 有信息量、带数字或对比最好
|
||||
- 不要太长,20字以内
|
||||
- 风格参考知乎真实高赞标题,不要套路句式
|
||||
- 避免:「如何……」废句式、「XXX指南/手册/全攻略」
|
||||
- 有信息量:一看就知道能解决什么问题
|
||||
- 含知乎搜索关键词(SEO)
|
||||
- 带数字或对比最好(「3个方法」「从…到…」)
|
||||
- 20字以内
|
||||
- 参考知乎真实高赞标题,不要套路句式
|
||||
- 避免「如何…」废句式、「XXX指南/手册/全攻略」
|
||||
|
||||
生成 3 个选项,每行一个。""",
|
||||
|
||||
"wechat": f"""你是一个公众号作者,在给文章起标题。
|
||||
"wechat": f"""你是一个公众号作者,在给可能10万+的文章起标题。
|
||||
|
||||
原文标题:{original}
|
||||
领域:{self.topic.get('field', '')}
|
||||
|
||||
要求:
|
||||
- 制造点好奇心,让人想点开看
|
||||
- 制造好奇心和点击欲,让人觉得不点开会错过
|
||||
- 包含微信搜索关键词(微信SEO)
|
||||
- 口语化,不要书面腔
|
||||
- 不要感叹号堆砌,不要「重磅/震惊/紧急」
|
||||
- 参考真实公众号标题的感觉
|
||||
- 字数15-25字最佳
|
||||
|
||||
生成 3 个选项,每行一个。""",
|
||||
|
||||
"xiaohongshu": f"""你是一个小红书用户,在给笔记起标题。
|
||||
"xiaohongshu": f"""你是一个小红书用户,在给笔记起能上热门推荐的标题。
|
||||
|
||||
原文标题:{original}
|
||||
领域:{self.topic.get('field', '')}
|
||||
|
||||
要求:
|
||||
- 短,20字以内
|
||||
- 带1个emoji点缀就行,不用多
|
||||
- 有场景感或结果感
|
||||
- 20字以内
|
||||
- 采用爆款模式:数字+结果/痛点+方案/反常识观点
|
||||
- 包含小红书搜索关键词(SEO)
|
||||
- 带1个emoji点缀
|
||||
- 有场景感/结果感
|
||||
- 不要「必看/收藏/码住」
|
||||
- 像真实用户写的,不是运营写的
|
||||
|
||||
|
||||
Reference in New Issue
Block a user