本章导读
内容创作是大语言模型应用最广泛的领域之一。从营销文案到深度文章,从社交媒体帖子到创意写作,AI正在深刻改变内容生产的方式。本章将系统介绍内容创作各细分领域的提示词工程方法,帮助读者掌握从标题到全文、从SEO优化到多语言翻译的完整提示词设计技能。
21.1 营销文案生成:从标题到全文的完整流程
21.1.1 营销文案创作框架
营销文案创作是一个系统工程,需要从战略定位到具体执行的全链路设计。
python
class MarketingCopywritingFramework:
"""营销文案创作框架"""
FRAMEWORK_STRUCTURE = {
"strategy": {
"name": "策略层",
"elements": [
"目标受众分析",
"品牌定位与调性",
"传播目标(认知、兴趣、购买)",
"竞争差异化"
],
"questions": [
"目标用户是谁?",
"他们关心什么?",
"我们提供什么独特价值?",
"与其他品牌的区别是什么?"
]
},
"creative": {
"name": "创意层",
"elements": [
"核心卖点提炼",
"情感诉求设计",
"叙事角度选择",
"创意元素组合"
],
"approaches": [
"理性诉求:数据、证据、逻辑",
"感性诉求:情感、故事、体验",
"道德诉求:社会责任、公益、环保"
]
},
"execution": {
"name": "执行层",
"elements": [
"标题设计",
"开头钩子",
"内容主体",
"行动号召(CTA)"
],
"formats": [
"问题-解决方案型",
"故事叙述型",
"清单列表型",
"对比论证型",
"专家背书型"
]
}
}
21.1.2 标题生成提示词
python
class TitleGenerationPrompts:
"""标题生成提示词模板"""
HEADLINE_FORMULAS = {
"number_list": {
"template": """为以下产品/服务生成{number}个{style}风格的营销标题。
产品/服务信息:
- 名称:{product_name}
- 核心卖点:{key_benefits}
- 目标受众:{target_audience}
- 主要特点:{features}
风格要求:{style_requirements}
格式要求:
- 每个标题{number}字以内
- 包含数字(如{number}+、TOP{number}等)
- 突出具体利益点
- 引发好奇心或紧迫感
生成{count}个标题选项:""",
"examples": [
"5个理由告诉你为什么每个营销人都需要这款工具",
"7天学会Python,这位北大教授的方法火了",
"2024年最值得拥有的10款智能家居产品"
]
},
"question": {
"template": """为以下产品生成{count}个问题型标题。
产品/服务:{product_name}
目标痛点:{pain_points}
解决方案:{solution}
标题要求:
- 以问句形式开头
- 引发目标受众思考
- 暗示解决方案的存在
- 激发点击欲望
问题类型:
1. 反问型:难道你不想...?
2. 疑问型:如何...?
3. 设问型:你知道...吗?
4. 痛点型:还在为...烦恼吗?
生成{count}个标题:"""
},
"urgency": {
"template": """为以下产品/活动生成紧迫感型标题。
活动信息:{campaign_info}
截止日期:{deadline}
优惠内容:{offer}
紧迫感元素:
- 时间限制(限时、仅剩、马上)
- 数量限制(限量、前{number}名、抢完即止)
- 机会成本(错过、再不...就...)
标题风格:{style}(可选:惊叹型、数字型、疑问型)
生成{count}个标题:"""
}
}
@staticmethod
def generate_headlines(product_info: dict, style: str = "default",
count: int = 5) -> list:
"""生成标题"""
# 根据产品信息填充模板
template = TitleGenerationPrompts.HEADLINE_FORMULAS.get(style)
if not template:
template = TitleGenerationPrompts.HEADLINE_FORMULAS["number_list"]
# 模拟生成结果
headlines = [
f"{count}个{product_info.get('target_audience', '用户')}必须知道的{product_info.get('product_name', '产品')}优势",
f"为什么{product_info.get('target_audience', '越来越多人')}都在选择{product_info.get('product_name', '这个产品')}?",
f"用了{product_info.get('product_name', '它')}之后,我终于{product_info.get('key_benefits', '实现了目标')}",
f"揭秘:{product_info.get('key_benefits', '行业内幕')}的真相",
f"必读!{product_info.get('target_audience', '准备购买的人')}最关心的{count}个问题"
]
return headlines[:count]
# 使用示例
headline_generator = TitleGenerationPrompts()
product_info = {
"product_name": "智能在线教育平台",
"key_benefits": "随时随地学习、名师一对一辅导",
"target_audience": "职场人士",
"features": "AI个性化推荐、24小时答疑、证书认证"
}
headlines = headline_generator.generate_headlines(product_info, "number_list", 5)
for i, h in enumerate(headlines, 1):
print(f"{i}. {h}")
21.1.3 完整营销文案生成
python
class FullMarketingCopyGenerator:
"""完整营销文案生成器"""
COPY_STRUCTURE = {
"headline": "吸引眼球的标题",
"subheadline": "补充说明的副标题",
"hook": "开头的钩子段落",
"body": "核心内容主体",
"proof_points": "支撑论据",
"cta": "行动号召"
}
def __init__(self, llm_client=None):
self.llm = llm_client
def generate_full_copy(self, brief: dict) -> dict:
"""生成完整营销文案"""
# 1. 生成标题
headline = self._generate_headline(brief)
# 2. 生成副标题
subheadline = self._generate_subheadline(brief, headline)
# 3. 生成开头钩子
hook = self._generate_hook(brief)
# 4. 生成核心内容
body = self._generate_body(brief)
# 5. 生成支撑论据
proof_points = self._generate_proof_points(brief)
# 6. 生成行动号召
cta = self._generate_cta(brief)
return {
"headline": headline,
"subheadline": subheadline,
"hook": hook,
"body": body,
"proof_points": proof_points,
"cta": cta
}
def _generate_headline(self, brief: dict) -> str:
"""生成标题"""
template = f"""
为"{brief.get('product_name')}"生成一个营销标题。
目标受众:{brief.get('audience')}
核心价值:{brief.get('value_proposition')}
调性风格:{brief.get('tone', '专业')}
字数限制:{brief.get('headline_length', '15-25字')}
要求:
1. 突出核心卖点
2. 引发情感共鸣
3. 简洁有力
"""
# 实际调用LLM,这里模拟
return f"让{brief.get('audience', '你')}效率提升10倍的{brief.get('product_name')}的秘密"
def _generate_subheadline(self, brief: dict, headline: str) -> str:
"""生成副标题"""
return f"------{brief.get('product_name')},专为{brief.get('audience')}设计"
def _generate_hook(self, brief: dict) -> str:
"""生成开头钩子"""
templates = [
f"你是否也面临这样的困扰:{brief.get('pain_point', '效率低、效果差、压力大')}?",
f"想象一下,如果你能{brief.get('desired_outcome', '轻松高效地完成工作')},生活会怎样?",
f"据调查,{brief.get('audience', '90%的职场人')}都遇到过这个问题..."
]
return templates[0]
def _generate_body(self, brief: dict) -> str:
"""生成核心内容"""
features = brief.get('features', [])
benefits = brief.get('benefits', [])
body_parts = []
# 痛点放大
body_parts.append(f"""
### 你的困扰,我们懂
{brief.get('pain_point', '你是否经常为以下问题烦恼?')}
- 效率低下,{brief.get('pain_point_detail', '每天加班到深夜却还是做不完工作'}
- 效果不佳,{brief.get('pain_point_result', '投入大量时间却看不到明显的成果'}
- 压力山大,{brief.get('pain_point_emotion', '担心被超越、被淘汰'}
""")
# 解决方案
body_parts.append(f"""
### 我们的解决方案
{brief.get('product_name')}正是为你而来:
**亮点一:{features[0] if len(features) > 0 else '智能高效'}**
{benefits[0] if len(benefits) > 0 else '大幅提升工作效率'}
**亮点二:{features[1] if len(features) > 1 else '简单易用'}**
{benefits[1] if len(benefits) > 1 else '无需复杂学习'}
**亮点三:{features[2] if len(features) > 2 else '安全可靠'}**
{benefits[2] if len(benefits) > 2 else '数据安全有保障'}
""")
return "\n".join(body_parts)
def _generate_proof_points(self, brief: dict) -> str:
"""生成支撑论据"""
return f"""
### 信任背书
**权威认证**
{brief.get('certifications', '已获得ISO认证、行业协会推荐')}
**用户见证**
"{brief.get('testimonial', '使用后工作效率提升了3倍,真的太神奇了!')}"
**数据支撑**
{brief.get('statistics', '已有10万+用户,好评率98%')}
"""
def _generate_cta(self, brief: dict) -> str:
"""生成行动号召"""
return f"""
### 立即行动
{brief.get('offer', '限时优惠:首月免费试用')}
👉 {brief.get('cta_text', '点击免费试用')}
📞 {brief.get('contact', '如有疑问请联系客服')}
*名额有限,{brief.get('urgency', '仅剩30个名额')}*
"""
# 使用示例
generator = FullMarketingCopyGenerator()
brief = {
"product_name": "智能客服机器人",
"audience": "中小企业主",
"value_proposition": "24小时在线,成本降低80%",
"tone": "专业且有说服力",
"pain_point": "人工客服成本高、响应慢、难以24小时服务",
"features": [
"AI智能识别",
"多轮对话能力",
"一键接入"
],
"benefits": [
"自动解答85%常见问题",
"理解客户意图,准确率95%",
"5分钟完成配置"
],
"offer": "限时特惠:首月免费 + 专业部署服务",
"cta_text": "立即申请免费试用"
}
copy = generator.generate_full_copy(brief)
print("=== 营销文案 ===")
print(f"\n【标题】{copy['headline']}")
print(f"\n【副标题】{copy['subheadline']}")
print(f"\n【开头】\n{copy['hook']}")
print(f"\n【正文】\n{copy['body']}")
print(f"\n【论据】\n{copy['proof_points']}")
print(f"\n【行动号召】\n{copy['cta']}")
21.2 文章与报告写作:结构、内容与风格控制
21.2.1 长文章结构设计
python
class ArticleStructureTemplates:
"""文章结构模板"""
STRUCTURES = {
"problem_solution": {
"name": "问题-解决方案型",
"适用场景": "解决方案介绍、产品评测、教程指南",
"structure": """
【引言】
- 抛出问题或现象
- 阐述问题的普遍性和重要性
- 引出解决方案的必要性
【问题分析】
- 详细描述问题的各个方面
- 分析问题的根本原因
- 展示问题的真实案例
【解决方案】
- 提出解决方案
- 解释方案的核心原理
- 展示方案的优势特点
【实践指南】
- 具体实施步骤
- 注意事项和技巧
- 常见问题解答
【总结展望】
- 回顾核心要点
- 展望未来发展
- 呼吁采取行动
"""
},
"comparison": {
"name": "对比分析型",
"适用场景": "产品对比、方案选型、趋势分析",
"structure": """
【背景介绍】
- 说明对比的背景
- 阐述评估的标准
【方案A分析】
- 方案A的核心特点
- 方案A的优劣势
【方案B分析】
- 方案B的核心特点
- 方案B的优劣势
【深度对比】
- 各维度对比分析
- 数据支撑和证据
【结论建议】
- 综合评估结论
- 适用场景建议
"""
},
"story_narrative": {
"name": "故事叙述型",
"适用场景": "品牌故事、人物专访、案例分享",
"structure": """
【开场场景】
- 设置故事背景
- 营造氛围代入感
【人物介绍】
- 主人公的背景
- 面临的挑战
【冲突升级】
- 困难的逐步加剧
- 内心的挣扎纠结
【转折突破】
- 关键的转折点
- 灵感的来源
【成功蜕变】
- 最终的解决方案
- 取得的成果成就
【启示感悟】
- 经验教训总结
- 对读者的启示
"""
},
"expert_analysis": {
"name": "专家分析型",
"适用场景": "行业洞察、趋势预测、专业评论",
"structure": """
【核心观点】
- 开篇亮明观点
- 简述判断依据
【数据支撑】
- 关键数据引用
- 统计趋势分析
【原因剖析】
- 现象背后的原因
- 多维度解读
【影响评估】
- 对行业的影响
- 对相关方的影响
【趋势预测】
- 未来发展方向
- 可能的变化趋势
【行动建议】
- 针对不同主体的建议
- 具体可操作的步骤
"""
}
}
@staticmethod
def get_structure_prompt(article_type: str, topic: str,
requirements: dict) -> str:
"""生成文章结构提示词"""
structure = ArticleStructureTemplates.STRUCTURES.get(
article_type,
ArticleStructureTemplates.STRUCTURES["problem_solution"]
)
prompt = f"""
请按照以下结构撰写一篇{requirements.get('word_count', '2000')}字的文章。
【文章类型】
{structure['name']}
适用场景:{structure['适用场景']}
【文章主题】
{topic}
【目标读者】
{requirements.get('audience', '一般读者')}
【风格要求】
{requirements.get('tone', '专业严谨')}
【参考结构】
{structure['structure']}
【特殊要求】
{requirements.get('special', '无')}
请确保:
1. 逻辑清晰,层次分明
2. 论点有据,论据充分
3. 语言流畅,可读性强
4. 符合目标读者的阅读习惯
"""
return prompt
21.2.2 报告生成提示词
python
class ReportGenerationPrompts:
"""报告生成提示词模板"""
REPORT_TYPES = {
"executive_summary": {
"name": "执行摘要",
"length": "1-2页",
"focus": "关键发现和建议"
},
"quarterly_review": {
"name": "季度回顾",
"length": "10-20页",
"focus": "业绩分析和趋势"
},
"market_research": {
"name": "市场调研报告",
"length": "20-50页",
"focus": "市场分析和预测"
},
"feasibility_study": {
"name": "可行性研究报告",
"length": "30-100页",
"focus": "方案评估和决策支持"
}
}
@staticmethod
def generate_report_outline(report_type: str, topic: str) -> str:
"""生成报告大纲"""
template = f"""
为以下报告生成详细大纲:
报告类型:{ReportGenerationPrompts.REPORT_TYPES.get(report_type, {}).get('name', '通用报告')}
报告主题:{topic}
请生成包含以下内容的大纲:
1. 报告摘要
2. 主要章节及子节
3. 每个章节的核心内容要点
4. 数据和附录要求
格式要求:
- 使用Markdown格式
- 使用层级标题
- 标注每个章节的建议字数
"""
return template
@staticmethod
def generate_section_content(section_title: str,
section_context: dict) -> str:
"""生成章节内容"""
template = f"""
撰写以下报告章节的内容:
章节标题:{section_title}
背景信息:
{_section_context.get('background', '无')}
数据来源:
{_section_context.get('data_sources', '无')}
已有数据:
{_section_context.get('existing_data', '无')}
写作要求:
- 目标字数:{section_context.get('word_count', '800-1000')}字
- 风格:{section_context.get('tone', '专业')}
- 受众:{section_context.get('audience', '一般读者')}
- 必须包含:{section_context.get('required_elements', '数据图表')}
请撰写完整内容:
"""
return template
# 数据报告生成器
class DataReportGenerator:
"""数据报告生成器"""
def __init__(self):
self.chart_configs = {
"line": "折线图:展示趋势变化",
"bar": "柱状图:展示对比",
"pie": "饼图:展示占比",
"scatter": "散点图:展示相关性"
}
def generate_data_analysis_report(self, data_summary: dict,
analysis_type: str) -> dict:
"""生成数据分析报告"""
# 1. 生成关键发现
key_findings = self._extract_key_findings(data_summary)
# 2. 生成详细分析
detailed_analysis = self._generate_detailed_analysis(
data_summary, analysis_type
)
# 3. 生成图表建议
chart_recommendations = self._recommend_charts(data_summary)
# 4. 生成结论建议
conclusions = self._generate_conclusions(data_summary)
return {
"key_findings": key_findings,
"detailed_analysis": detailed_analysis,
"chart_recommendations": chart_recommendations,
"conclusions": conclusions,
"appendixes": self._suggest_appendixes(data_summary)
}
def _extract_key_findings(self, data_summary: dict) -> list:
"""提取关键发现"""
findings = []
# 趋势发现
if "trend" in data_summary:
findings.append({
"category": "趋势",
"finding": f"{data_summary['trend']['metric']}呈现"
f"{data_summary['trend']['direction']}趋势",
"significance": "显著"
})
# 对比发现
if "comparisons" in data_summary:
for comp in data_summary["comparisons"]:
findings.append({
"category": "对比",
"finding": f"{comp['item_a']}与{comp['item_b']}"
f"{comp['relationship']}",
"significance": comp.get("significance", "一般")
})
# 异常发现
if "anomalies" in data_summary:
for anomaly in data_summary["anomalies"]:
findings.append({
"category": "异常",
"finding": f"发现异常点:{anomaly['description']}",
"significance": anomaly.get("significance", "需关注")
})
return findings
def _recommend_charts(self, data_summary: dict) -> list:
"""推荐图表"""
recommendations = []
# 根据数据类型推荐图表
if "time_series" in data_summary:
recommendations.append({
"chart_type": "折线图",
"data": data_summary["time_series"],
"purpose": "展示时间趋势变化"
})
if "categories" in data_summary:
recommendations.append({
"chart_type": "柱状图",
"data": data_summary["categories"],
"purpose": "对比不同类别"
})
if "composition" in data_summary:
recommendations.append({
"chart_type": "饼图",
"data": data_summary["composition"],
"purpose": "展示组成结构"
})
return recommendations
def _generate_conclusions(self, data_summary: dict) -> list:
"""生成结论"""
conclusions = [
{
"type": "summary",
"content": "基于以上分析,整体趋势表明业务处于良好发展态势。"
},
{
"type": "risk",
"content": "需要关注潜在风险点,建议持续监控关键指标。"
},
{
"type": "recommendation",
"content": "建议下一步行动:加强A领域投入,优化B流程。"
}
]
return conclusions
21.3 社交媒体内容创作:不同平台的风格适配
21.3.1 平台特性分析
python
class PlatformCharacteristics:
"""社交媒体平台特性"""
PLATFORMS = {
"weibo": {
"name": "微博",
"content_type": "短内容 + 长文章",
"max_length": "正文2000字,话题无限制",
"features": [
"话题标签 (#话题#)",
"@提及",
"转发评论",
"热门榜单"
],
"audience": "年轻人、明星粉丝、热点关注者",
"best_practices": {
"tone": "轻松有趣,紧跟热点",
"timing": "早晚高峰、热点发生时",
"hashtags": "2-5个相关话题",
"media": "图片/短视频增强吸引力"
},
"content_formats": [
"热点评论",
"生活分享",
"观点表达",
"互动问答"
]
},
"wechat": {
"name": "微信公众号",
"content_type": "长文章为主",
"max_length": "无硬性限制,建议1500-3000字",
"features": [
"图文消息",
"音频/视频",
"阅读原文",
"赞赏功能"
],
"audience": "职场人士、专业领域读者",
"best_practices": {
"tone": "专业深度,有价值输出",
"structure": "小标题+图文配合",
"cta": "文末引导关注和分享",
"timing": "早7-9点、午12-14点、晚20-22点"
},
"content_formats": [
"深度分析",
"教程指南",
"行业洞察",
"人物专访"
]
},
"xiaohongshu": {
"name": "小红书",
"content_type": "图文/视频种草",
"max_length": "笔记1000字以内",
"features": [
"封面图片",
"标签地点",
"商品链接",
"收藏互动"
],
"audience": "年轻女性、消费决策者",
"best_practices": {
"tone": "真实分享,亲和力强",
"cover": "高清美图,吸引眼球",
"format": "emoji+分段+干货",
"keywords": "布局搜索关键词"
},
"content_formats": [
"好物推荐",
"教程攻略",
"探店体验",
"生活方式"
]
},
"douyin": {
"name": "抖音",
"content_type": "短视频为主",
"max_length": "15秒-10分钟",
"features": [
"短视频",
"直播",
"话题挑战",
"dou+推广"
],
"audience": "全年龄段,以年轻人为主",
"best_practices": {
"tone": "前3秒抓住注意力",
"structure": "黄金3秒+反转/悬念+结尾引导",
"music": "热门音乐增加曝光",
"cta": "关注+评论+分享"
},
"content_formats": [
"剧情短片",
"知识科普",
"产品展示",
"日常生活"
]
},
"zhihu": {
"name": "知乎",
"content_type": "问答+文章",
"max_length": "无限制,建议充分展开",
"features": [
"问答形式",
"专业深度",
"赞同收藏",
"知乎专栏"
],
"audience": "高学历、专业人士、问题解决者",
"best_practices": {
"tone": "专业严谨,有理有据",
"structure": "先说结论,再说论证",
"references": "引用数据来源",
"update": "定期更新维护"
},
"content_formats": [
"专业解答",
"经验分享",
"产品测评",
"行业分析"
]
}
}
21.3.2 跨平台内容适配
python
class CrossPlatformContentAdapter:
"""跨平台内容适配器"""
def __init__(self):
self.platform_chars = PlatformCharacteristics.PLATFORMS
def adapt_content(self, original_content: dict,
target_platforms: list) -> dict:
"""将原始内容适配到多个平台"""
adapted = {}
for platform in target_platforms:
adapted[platform] = self._adapt_to_platform(
original_content, platform
)
return adapted
def _adapt_to_platform(self, content: dict, platform: str) -> dict:
"""适配到特定平台"""
platform_info = self.platform_chars.get(platform, {})
adapted = {
"title": self._adapt_title(content.get("title", ""), platform),
"body": self._adapt_body(content.get("body", ""), platform),
"hashtags": self._generate_hashtags(content, platform),
"media_suggestions": self._suggest_media(platform),
"posting_tips": self._get_posting_tips(platform)
}
return adapted
def _adapt_title(self, original_title: str, platform: str) -> str:
"""适配标题"""
platform_limits = {
"weibo": 30,
"wechat": 64,
"xiaohongshu": 20,
"douyin": 40,
"zhihu": 50
}
limit = platform_limits.get(platform, 50)
# 平台特定的标题风格
platform_styles = {
"weibo": "话题式、悬念式",
"wechat": "信息量式、情感式",
"xiaohongshu": "种草式、攻略式",
"douyin": "冲击式、反转式",
"zhihu": "问题式、专业式"
}
# 根据平台调整
if platform == "xiaohongshu":
# 小红书添加emoji
return f"📌 {original_title[:limit-3]}"
elif platform == "weibo":
# 微博添加话题标签
return f"#{original_title}#"[:limit]
elif platform == "zhihu":
# 知乎问题式
return f"如何理解{original_title}?"
else:
return original_title[:limit]
def _adapt_body(self, original_body: str, platform: str) -> str:
"""适配正文"""
length_limits = {
"weibo": 2000,
"wechat": 3000,
"xiaohongshu": 1000,
"douyin": 500, # 主要是口播脚本
"zhihu": 5000
}
# 平台风格调整
if platform == "xiaohongshu":
# 小红书:emoji + 分段 + 实用干货
adapted = self._to_xiaohongshu_style(original_body)
elif platform == "douyin":
# 抖音:口播脚本格式
adapted = self._to_douyin_script(original_body)
elif platform == "weibo":
# 微博:精简 + 互动引导
adapted = self._to_weibo_style(original_body)
else:
adapted = original_body
# 截断到长度限制
limit = length_limits.get(platform, 2000)
if len(adapted) > limit:
adapted = adapted[:limit] + "..."
return adapted
def _to_xiaohongshu_style(self, content: str) -> str:
"""转换为小红书风格"""
lines = content.split("\n")
styled = []
for i, line in enumerate(lines[:10]): # 限制行数
if line.strip():
# 添加emoji
if i == 0:
styled.append(f"✨ {line}")
elif "特点" in line or "优势" in line:
styled.append(f"💡 {line}")
elif "步骤" in line or "方法" in line:
styled.append(f"📝 {line}")
elif "注意" in line or "提醒" in line:
styled.append(f"⚠️ {line}")
else:
styled.append(line)
styled.append("\n💖 觉得有用记得收藏~")
return "\n".join(styled)
def _to_douyin_script(self, content: str) -> str:
"""转换为抖音脚本"""
lines = content.split("\n")
script = ["【开场】"]
# 黄金3秒
script.append("⚡ 钩子:设置悬念或痛点")
script.append("")
script.append("【正文】")
for i, line in enumerate(lines[:5]):
if line.strip():
script.append(f"{i+1}. {line.strip()}")
script.append("")
script.append("【结尾】")
script.append("👉 关注我,获取更多干货")
return "\n".join(script)
def _to_weibo_style(self, content: str) -> str:
"""转换为微博风格"""
lines = content.split("\n")[:5] # 限制内容长度
styled = "\n".join(lines)
styled += "\n\n---"
styled += "\n你怎么看?欢迎评论区留言~"
styled += "\n➕ 关注我,更多精彩内容"
return styled
def _generate_hashtags(self, content: dict, platform: str) -> list:
"""生成话题标签"""
base_tags = content.get("tags", [])
platform_tags = {
"weibo": ["#{}#".format(tag) for tag in base_tags[:3]],
"xiaohongshu": base_tags[:5] + ["种草", "好物推荐"],
"douyin": ["#" + tag for tag in base_tags[:3]] + ["热门", "推荐"],
"zhihu": [tag for tag in base_tags[:3]],
"wechat": [] # 微信公众号不推荐使用标签
}
return platform_tags.get(platform, [])
def _suggest_media(self, platform: str) -> dict:
"""媒体建议"""
suggestions = {
"weibo": {
"primary": "高清图片(9图最佳)",
"secondary": "短视频",
"tips": "图片要精美有质感"
},
"xiaohongshu": {
"primary": "封面图 + 内页图(3-9张)",
"secondary": "视频",
"tips": "封面要吸引眼球,文字要清晰"
},
"douyin": {
"primary": "竖版短视频(9:16)",
"secondary": "封面图",
"tips": "视频要短平快,有节奏感"
},
"wechat": {
"primary": "封面图 + 正文配图",
"secondary": "音频/视频",
"tips": "图片要与内容相关"
}
}
return suggestions.get(platform, {})
def _get_posting_tips(self, platform: str) -> dict:
"""发布建议"""
tips = {
"weibo": {
"best_time": "早7-9点,午12-14点,晚18-21点",
"frequency": "每天1-3条",
"interaction": "及时回复评论,参与话题"
},
"xiaohongshu": {
"best_time": "晚19-22点",
"frequency": "每天1篇",
"interaction": "回复评论,@相关用户"
},
"douyin": {
"best_time": "午12-14点,晚18-22点",
"frequency": "每天1-3条",
"interaction": "回复评论,引导关注"
}
}
return tips.get(platform, {})
# 使用示例
adapter = CrossPlatformContentAdapter()
original_content = {
"title": "2024年十大科技趋势预测",
"body": """
2024年科技领域将迎来重大变革。以下是我对主要趋势的预测:
第一,人工智能将进一步渗透各行各业。从医疗诊断到金融风控,AI的应用场景将持续扩大。
第二,量子计算将取得突破性进展。多家科技巨头都在加大对量子计算的投资。
第三,元宇宙将从概念走向落地。更多实际应用场景将逐步呈现。
第四,新能源技术将加速发展。电动汽车和储能技术将更加成熟。
第五,生物技术将带来医疗革命。基因编辑和细胞疗法将取得更多突破。
""",
"tags": ["科技趋势", "AI", "量子计算", "元宇宙", "新能源"]
}
adapted = adapter.adapt_content(original_content,
["weibo", "xiaohongshu", "douyin"])
for platform, content in adapted.items():
print(f"\n=== {platform.upper()} ===")
print(f"标题: {content['title']}")
print(f"正文: {content['body'][:100]}...")
print(f"话题: {content['hashtags']}")
21.4 创意写作:小说、剧本、诗歌的提示词设计
21.4.1 小说创作提示词框架
python
class NovelWritingPrompts:
"""小说创作提示词框架"""
GENRE_TEMPLATES = {
"fantasy": {
"name": "奇幻小说",
"world_elements": [
"魔法系统设定",
"种族与势力",
"地理与环境",
"历史与神话"
],
"character_archetypes": [
"英雄主角",
"导师智者",
"盟友伙伴",
"反派boss"
],
"plot_structures": [
"英雄之旅",
"势力争斗",
"成长蜕变"
]
},
"romance": {
"name": "言情小说",
"world_elements": [
"时代背景",
"社会阶层",
"家庭关系",
"职业设定"
],
"character_archetypes": [
"霸道总裁",
"灰姑娘",
"青梅竹马",
"欢喜冤家"
],
"plot_structures": [
"相识相知",
"误会冲突",
"感情升温",
"大团圆结局"
]
},
"mystery": {
"name": "悬疑推理",
"world_elements": [
"案发现场",
"时间线",
"证人关系",
"证据链"
],
"character_archetypes": [
"侦探主角",
"嫌疑人",
"知情者",
"真凶"
],
"plot_structures": [
"案发发现",
"线索搜集",
"推理分析",
"真相大白"
]
},
"scifi": {
"name": "科幻小说",
"world_elements": [
"科技设定",
"太空/未来背景",
"政治格局",
"外星文明"
],
"character_archetypes": [
"科学家/工程师",
"探险家",
"AI/机器人",
"外星生命"
],
"plot_structures": [
"危机出现",
"探索求知",
"冲突对抗",
"解决升华"
]
}
}
@staticmethod
def generate_world_building_prompt(genre: str, theme: str) -> str:
"""生成世界观构建提示词"""
template = f"""
请为一部{genre}类型的小说构建完整的世界观。
【小说主题】
{theme}
【需要构建的要素】
1. 世界观框架
- 故事发生的时代背景
- 社会政治结构
- 经济文化特征
2. 规则体系
- 核心规则(如魔法、科技)
- 规则的限制与代价
- 规则的运用方式
3. 地理环境
- 主要场景描述
- 场景与情节的关系
- 场景的氛围营造
4. 历史背景
- 世界形成的历史
- 重要历史事件
- 历史对现在的影响
请提供详细且具有创意的内容,为后续的故事创作奠定基础。
"""
return template
@staticmethod
def generate_character_prompt(character_role: str, genre: str,
world_context: str) -> str:
"""生成角色塑造提示词"""
template = f"""
为一个{genre}小说创建深度角色。
【角色定位】
{character_role}
【世界观背景】
{world_context}
【角色塑造要素】
1. 基础信息
- 姓名与昵称
- 外貌特征
- 年龄与身份
2. 性格塑造
- 核心性格特质
- 性格的矛盾与复杂性
- 性格形成的原因
3. 背景故事
- 成长经历
- 重要的人生事件
- 对角色影响最大的人
4. 目标与动机
- 表层目标(角色自己认知的)
- 深层动机(内心真实的渴望)
- 目标与动机的冲突
5. 关系网络
- 与其他角色的关系
- 关系的发展变化
请创建一个立体、有深度的角色形象。
"""
return template
@staticmethod
def generate_chapter_prompt(chapter_outline: str,
writing_style: str,
word_count: int) -> str:
"""生成章节写作提示词"""
template = f"""
请根据以下大纲撰写小说章节。
【章节大纲】
{chapter_outline}
【写作风格要求】
{writing_style}
【技术要求】
- 目标字数:{word_count}字
- 视角:{writing_style.get('viewpoint', '第三人称')}
- 节奏:{writing_style.get('pace', '中等')}
- 对话比例:{writing_style.get('dialogue_ratio', '30%')}
【写作要点】
1. 开场要吸引读者
2. 善用细节描写
3. 对话要符合角色性格
4. 节奏把控张弛有度
5. 为后续情节埋下伏笔
请撰写完整、精彩的章节内容。
"""
return template
21.4.2 剧本创作提示词
python
class ScriptwritingPrompts:
"""剧本创作提示词"""
SCRIPT_ELEMENTS = {
"format": """
【剧本格式规范】
场景标题:[内景/外景] 场景名称 - 时间
动作描写:
(括号内描述环境、人物动作、表情等)
对话:
人物A:(动作)台词
人物B:(动作)台词
转场:
>>> 场景过渡描述
""",
"scene_structure": """
【场景结构】
开场:
- 设置场景氛围
- 引入主要角色
- 建立冲突或悬念
发展:
- 深化冲突
- 角色互动
- 信息揭示
高潮:
- 冲突顶点
- 关键决定
- 情感爆发
结尾:
- 解决或深化
- 过渡到下一场景
"""
}
@staticmethod
def generate_screenplay_prompt(genre: str, premise: str,
target_length: str) -> str:
"""生成电影剧本提示词"""
template = f"""
请创作一个{genre}类型的电影剧本。
【故事前提】
{premise}
【篇幅要求】
{target_length}
【剧本结构】
1. 故事大纲(500字)
- 起因
- 经过
- 高潮
- 结局
2. 人物设定(每人200字)
- 主要角色3-5人
- 性格、目标、冲突
3. 场景大纲(1000字)
- 主要场景列表
- 场景功能说明
4. 完整剧本(按篇幅要求)
【格式要求】
请使用标准剧本格式:
- 场景标题大写
- 动作用括号
- 对话居中
- 人物名大写
请创作有吸引力、故事完整、人物立体的剧本。
"""
return template
@staticmethod
def generate_dialogue_prompt(scene_context: str,
character_a: dict,
character_b: dict,
dialogue_purpose: str) -> str:
"""生成对话提示词"""
template = f"""
请为以下场景创作对话。
【场景背景】
{scene_context}
【角色A】
- 姓名:{character_a.get('name')}
- 性格:{character_a.get('personality')}
- 说话风格:{character_a.get('speaking_style')}
- 当前情绪:{character_a.get('emotion')}
- 隐藏目的:{character_a.get('hidden_agenda')}
【角色B】
- 姓名:{character_b.get('name')}
- 性格:{character_b.get('personality')}
- 说话风格:{character_b.get('speaking_style')}
- 当前情绪:{character_b.get('emotion')}
- 隐藏目的:{character_b.get('hidden_agenda')}
【对话目的】
{dialogue_purpose}
【写作要求】
1. 对话要自然,符合角色性格
2. 通过对话展现人物关系
3. 潜台词要丰富
4. 推动情节发展
5. 控制对话长度
请创作精彩、有张力的对话。
"""
return template
21.4.3 诗歌创作提示词
python
class PoetryWritingPrompts:
"""诗歌创作提示词"""
POETRY_FORMS = {
"modern": {
"name": "现代诗",
"features": [
"形式自由",
"意象丰富",
"情感真挚",
"语言凝练"
],
"techniques": [
"比喻象征",
"通感",
"意象叠加",
"留白"
]
},
"classical": {
"name": "古典诗词",
"forms": [
"五言律诗",
"七言律诗",
"词牌"
],
"rules": [
"平仄押韵",
"对仗工整",
"意象统一",
"情景交融"
]
}
}
@staticmethod
def generate_poem_prompt(poem_type: str, theme: str,
mood: str, length: str) -> str:
"""生成诗歌创作提示词"""
if poem_type == "modern":
template = f"""
请创作一首现代诗。
【主题】
{theme}
【情感基调】
{mood}
【篇幅要求】
{length}
【写作要点】
1. 选择独特的意象
2. 运用比喻、象征等手法
3. 语言要凝练有韵味
4. 情感要真挚动人
5. 留有想象空间
【意象建议】
- 自然意象:星辰、月亮、海洋、森林
- 生活意象:咖啡、书信、老照片、站台
- 情感意象:距离、等待、告别、重逢
请创作一首有意境、有情感的现代诗。
"""
else:
template = f"""
请创作一首古典诗词。
【体裁】
{poem_type}
【主题】
{theme}
【情感基调】
{mood}
【格式要求】
- 押韵规则:{length}
- 对仗要求:{length}
【写作要点】
1. 意象选择要典型
2. 情景要交融
3. 语言要典雅
4. 意境要深远
5. 情感要含蓄
请创作一首符合格律、意境优美的{poem_type}。
"""
return template
21.5 内容优化与改写:SEO优化、润色、翻译
21.5.1 SEO优化提示词
python
class SEOOptimizationPrompts:
"""SEO优化提示词"""
OPTIMIZATION_TYPES = {
"keyword_integration": {
"name": "关键词整合",
"focus": "自然融入目标关键词"
},
"meta_optimization": {
"name": "元标签优化",
"focus": "标题、描述的吸引力"
},
"structure_optimization": {
"name": "结构优化",
"focus": "标题层级、段落安排"
},
"readability_optimization": {
"name": "可读性优化",
"focus": "段落长度、句子结构"
}
}
@staticmethod
def generate_keyword_optimized_content(
original_content: str,
target_keywords: list,
secondary_keywords: list = None
) -> str:
"""生成关键词优化内容"""
template = f"""
请将以下内容进行SEO关键词优化。
【原文】
{original_content}
【目标关键词】(必须自然出现3-5次)
{chr(10).join([f'- {kw}' for kw in target_keywords])}
【次要关键词】(出现1-2次)
{chr(10).join([f'- {kw}' for kw in (secondary_keywords or [])])}
【优化要求】
1. 关键词密度:控制在1-3%
2. 关键词位置:
- 标题必须包含主关键词
- 首段必须出现关键词
- 结尾必须出现关键词
3. 自然融入,避免堆砌
4. 保持内容可读性
5. 语义相关,避免生硬插入
【输出要求】
请提供优化后的完整内容。
"""
return template
@staticmethod
def generate_meta_tags(topic: str, content_summary: str,
keywords: list) -> dict:
"""生成Meta标签"""
template = """
【主题】
{topic}
【内容摘要】
{content_summary}
【关键词】
{keywords}
请生成以下Meta标签:
1. Title(标题)
- 长度:30-60字符
- 要求:包含主关键词,有吸引力
2. Meta Description(描述)
- 长度:120-160字符
- 要求:概括内容,包含关键词,激发点击
3. H1(主标题)
- 要求:清晰表达主题
4. H2(副标题列表)
- 要求:覆盖主要内容点
5. URL Slug(URL片段)
- 要求:简洁、包含关键词
"""
return {
"title": f"{topic} | 完整指南与最佳实践",
"meta_description": f"了解关于{topic}的一切。本文提供{content_summary},包含实用技巧和案例分析。立即阅读!",
"h1": topic,
"h2_list": [
f"{topic}基础知识",
f"{topic}的核心要点",
f"{topic}的实践应用",
f"{topic}常见问题解答"
],
"url_slug": topic.lower().replace(" ", "-")
}
21.5.2 内容润色提示词
python
class ContentPolishingPrompts:
"""内容润色提示词"""
POLISHING_LEVELS = {
"light": {
"name": "轻度润色",
"changes": ["错别字", "病句", "标点"],
"preserve": ["用词风格", "句子结构", "情感色彩"]
},
"medium": {
"name": "中度润色",
"changes": ["语言流畅", "表达清晰", "逻辑通顺"],
"preserve": ["核心观点", "主要论据", "个人风格"]
},
"heavy": {
"name": "深度改写",
"changes": ["整体结构", "表达方式", "风格统一"],
"preserve": ["主题核心", "关键信息"]
}
}
@staticmethod
def polish_content(content: str,
level: str = "medium",
target_style: str = None) -> str:
"""润色内容"""
polish_config = ContentPolishingPrompts.POLISHING_LEVELS.get(
level,
ContentPolishingPrompts.POLISHING_LEVELS["medium"]
)
template = f"""
请对以下内容进行{polish_config['name']}。
【原文】
{content}
【润色程度】
{polish_config['name']}
【修改范围】
{chr(10).join([f'- {c}' for c in polish_config['changes']])}
【保持不变】
{chr(10).join([f'- {p}' for p in polish_config['preserve']])}
【目标风格】(可选)
{target_style or '保持原文风格'}
【润色要点】
1. 修正语法错误
2. 优化表达不清的地方
3. 增强语言节奏感
4. 提升整体可读性
5. 保持作者个人特色
请提供润色后的内容。
"""
return template
@staticmethod
def transform_tone(content: str,
original_tone: str,
target_tone: str) -> str:
"""转变语气风格"""
template = f"""
请将以下内容的语气从"{original_tone}"转变为"{target_tone}"。
【原文】
{content}
【原文语气特征】
{original_tone}
【目标语气特征】
{target_tone}
【语气转换要求】
1. 保持核心信息不变
2. 调整用词风格
3. 改变句式结构
4. 调整情感色彩
5. 确保语气统一
请提供转换后的内容。
"""
return template
21.5.3 多语言翻译提示词
python
class TranslationPrompts:
"""翻译提示词"""
TRANSLATION_TYPES = {
"literal": {
"name": "直译",
"description": "忠实原文,保留原格式",
"use_cases": ["技术文档", "合同条款", "官方文件"]
},
"fluent": {
"name": "意译",
"description": "传达原意,符合目标语言习惯",
"use_cases": ["文学作品", "营销文案", "日常内容"]
},
"localized": {
"name": "本地化",
"description": "文化适配,本地化处理",
"use_cases": ["网站内容", "APP界面", "广告文案"]
}
}
@staticmethod
def translate_content(content: str,
source_lang: str,
target_lang: str,
translation_type: str = "fluent") -> str:
"""翻译内容"""
template = f"""
请将以下内容从{source_lang}翻译为{target_lang}。
【翻译类型】
{TranslationPrompts.TRANSLATION_TYPES[translation_type]['name']}
描述:{TranslationPrompts.TRANSLATION_TYPES[translation_type]['description']}
【原文】
{content}
【翻译要求】
1. 准确性:忠实传达原文含义
2. 流畅性:符合{target_lang}的表达习惯
3. 文化适应性:适当处理文化差异
4. 术语一致性:使用标准术语
5. 格式保留:保持原文格式结构
【输出】
请提供翻译后的内容。
"""
return template
@staticmethod
def translate_marketing_content(content: str,
source_lang: str,
target_lang: str) -> dict:
"""翻译营销内容(带本地化建议)"""
template = f"""
请翻译并本地化以下营销内容。
【原文语言】
{source_lang}
【目标语言】
{target_lang}
【原文】
{content}
【翻译+本地化要求】
1. 情感共鸣:确保翻译后仍能触动目标受众
2. 文化适配:
- 避免文化禁忌
- 使用当地常用表达
- 符合当地审美
3. 品牌调性:保持品牌一致性
4. 行动号召:根据当地习惯调整
5. 提供以下内容:
- 翻译版本
- 文化注释(解释可能的文化差异)
- 本地化建议(可选优化)
"""
return template
# 使用示例
translation = TranslationPrompts()
marketing_text = "Experience the future of technology with our revolutionary product."
result = translation.translate_marketing_content(
content=marketing_text,
source_lang="English",
target_lang="中文"
)
print("翻译结果:")
print(result)
本章小结
本章系统介绍了内容创作领域的提示词工程方法:
-
营销文案生成:掌握了从标题到全文的完整营销文案创作框架,能够生成吸引眼球的标题和结构完整的营销文案。
-
文章与报告写作:学会了问题-解决方案、对比分析、故事叙述等多种文章结构模板,能够根据不同场景生成专业的长篇文章和数据分析报告。
-
社交媒体内容创作:了解了微博、微信、小红书、抖音、知乎等主流平台的特点差异,掌握了跨平台内容适配的方法。
-
创意写作:建立了小说、剧本、诗歌等创意文体的提示词框架,能够根据不同类型进行世界观构建、角色塑造和情节设计。
-
内容优化与改写:掌握了SEO优化、润色改写、多语言翻译的提示词技巧,能够有效提升内容的质量和传播效果。
通过本章的学习,读者能够系统掌握各类内容创作场景的提示词工程方法,提升内容生产的效率和质量。
参考资源
- Copywriting Framework - MarketingProfs: www.marketingprofs.com/
- SEO Best Practices - Moz: moz.com/beginners-g...
- Content Marketing Institute: contentmarketinginstitute.com/
- Social Media Writing Tips - Hootsuite: blog.hootsuite.com/
- Creative Writing Prompts - Writer's Digest: www.writersdigest.com/
- Screenwriting Format Guide - Screenplay Format: www.screenplayformat.com/