实现 DeepSeek 超长新闻输出以及图片生成和图表生成的教程
本教程介绍如何使用 DeepSeek AI 生成超长新闻文章,并自动插入图片占位符和图表占位符,然后使用 AI 生成图片和图表数据,最终生成多语言(中文、越南语)的完整新闻内容。
- 核心功能:使用 DeepSeek 整合多篇新闻文章,生成 600-900 字的完整新闻
- 图片生成:自动识别图片占位符,使用 AI 生成图片或占位符服务
- 图表生成:自动识别图表占位符,使用 AI 生成图表数据(折线图、柱状图、饼图)
- 多语言支持:自动翻译成中文和越南语,并生成摘要
- 内容优化:避免内容审核限制,确保内容安全合规
目录
功能概述 · 工作流程 · DeepSeek 文章整合 · 图片生成机制 · 图表生成机制 · 多语言翻译 · 使用技巧 · FAQ
功能概述
DeepSeek 新闻生成系统是一个完整的 AI 新闻内容生成解决方案,能够:
核心能力
- 文章整合: 将多篇关于同一主题的英文科技新闻整合成一篇新的、完整的文章
- 超长输出: 支持生成 600-900 字的完整新闻文章(DeepSeek 支持更长的输出)
- 图片生成: 自动识别图片占位符,使用 AI 生成图片或占位符服务
- 图表生成: 自动识别图表占位符,使用 AI 生成图表数据(折线图、柱状图、饼图)
- 多语言翻译: 自动翻译成中文和越南语,并生成摘要
- 内容安全: 避免内容审核限制,确保内容安全合规
为什么使用 DeepSeek?
- 避免内容审核限制: DeepSeek 对内容审核更宽松,适合生成科技新闻
- 支持超长输出: DeepSeek 支持更长的输出 tokens,可以生成更完整的文章
- 更好的理解能力: DeepSeek 对复杂内容的理解和整合能力更强
- 成本效益: DeepSeek 的 API 成本相对较低,适合批量生成
完整工作流程
步骤 1 · 收集原始文章
系统从 RSS 源或数据库收集多篇关于同一主题的英文科技新闻文章,按主题自动分组(每组至少 2 篇)。
步骤 2 · DeepSeek 整合
使用 DeepSeek AI 将多篇文章整合成一篇新的、完整的英文文章,自动插入图片和图表占位符。
步骤 3 · 提取占位符
从生成的文章中提取图片占位符 [IMAGE:描述] 和图表占位符 [CHART:类型:描述]。
步骤 4 · 生成图片
使用 AI 生成图片或占位符服务,为每个图片占位符生成对应的图片 URL。
步骤 5 · 生成图表数据
使用 AI 生成图表数据,为每个图表占位符生成对应的图表数据(标签、数据、单位)。
步骤 6 · 多语言翻译
将生成的英文文章翻译成中文和越南语,并生成摘要,保存到数据库。
DeepSeek 文章整合详解
系统提示词(System Prompt)
系统使用专业的提示词指导 DeepSeek 生成高质量新闻:
你是一名专业的科技新闻编辑。请将以下多篇关于同一主题的英文科技新闻整合成一篇新的、完整的英文文章。
重要要求:
1. 保持客观中立,仅关注科技、商业、技术等中性主题
2. 不涉及任何政治、暴力、色情、争议性话题
3. 不包含任何可能触发内容审核的敏感词汇或表述
4. 整合不同来源的信息,形成完整的故事
5. 使用清晰的结构:引言、正文(2-3段,每段120-150字)、结论
6. 生成一个吸引人但中性的标题
7. 文章长度严格控制在 600-900 字(避免过长导致审核失败)
8. 使用专业的科技新闻写作风格
9. 在适当位置插入图片占位符:[IMAGE:描述性文字]
10. 如果涉及数据、统计或趋势,插入图表占位符:[CHART:图表类型:数据描述]
11. 确保内容深度和专业性,包含具体数据、引用和背景信息
12. 使用小标题(##)来组织内容,提升可读性
13. 所有内容必须符合内容安全规范,仅涉及科技、商业、技术等安全主题
输入处理
- 文章清理: 移除 HTML 标签、控制字符,清理文本内容
- 长度控制: 动态调整单篇文章长度,确保总输入不超过 8000 字符
- 主题清理: 清理主题文本,移除敏感内容
输出配置
- 最大 Tokens: 设置为 min(maxTokens * 2, 4000),允许更长的输出
- 温度参数: 使用默认温度参数,保持生成内容的稳定性
- 超时设置: HTTP 请求超时设置为 120 秒,适应长文本生成
提示: DeepSeek 对内容审核更宽松,适合生成科技新闻。如果使用其他 AI 服务(如通义千问),可能会遇到内容审核限制。
图片生成机制
占位符格式
系统支持以下格式的图片占位符:
[IMAGE:描述性文字](英文格式)[图片:描述性文字](中文格式)
提取过程
- 从英文内容中提取图片占位符
- 翻译成中文后,从中文内容中重新提取占位符(因为翻译可能改变了格式)
- 如果中文内容中有占位符,使用中文的(因为描述更准确)
生成策略
系统采用两级生成策略:
- AI 生成优先: 首先尝试使用 AI(通义千问)生成图片
- 占位符回退: 如果 AI 生成失败,使用占位符服务(via.placeholder.com)
图片生成示例
// 占位符示例
[IMAGE:AI 技术发展趋势]
[IMAGE:智能手机市场份额对比]
[图片:人工智能应用场景]
// 生成的图片 URL
AI 生成成功:https://example.com/ai-generated-image.jpg
AI 生成失败:https://via.placeholder.com/800x400/2563eb/ffffff?text=AI技术发展趋势
提示: 图片生成功能预留了接口,可以后续集成其他图片生成服务(如 Stable Diffusion、DALL-E 等)。
图表生成机制
占位符格式
系统支持以下格式的图表占位符:
[CHART:类型:数据描述](英文格式)[图表:类型:数据描述](中文格式)
支持的图表类型
- 折线图(line): 用于显示趋势、时间序列数据
- 柱状图(bar): 用于显示对比、分类数据
- 饼图(pie): 用于显示比例、分布数据
- 雷达图(radar): 用于显示多维度数据对比
- 散点图(scatter): 用于显示相关性、分布关系
图表数据格式
AI 生成的图表数据格式:
{
"labels": ["标签1", "标签2", "标签3"],
"data": [数值1, 数值2, 数值3],
"unit": "单位(如:%、万元、亿美元等)"
}
生成过程
- 从内容中提取图表占位符,识别图表类型和描述
- 标准化图表类型(将中文类型转换为英文)
- 调用 AI(通义千问)生成图表数据
- 如果生成失败或触发内容审核,使用默认数据
图表生成示例
// 占位符示例
[CHART:line:AI市场规模增长趋势,2020-2024年]
[CHART:bar:各公司市场份额对比]
[CHART:pie:技术采用率分布]
[图表:折线图:用户增长趋势,2020-2024年]
// 生成的图表数据
{
"type": "line",
"description": "AI市场规模增长趋势,2020-2024年",
"position": 0,
"data": {
"labels": ["2020", "2021", "2022", "2023", "2024"],
"data": [100, 150, 220, 320, 450],
"unit": "亿美元"
}
}
注意: 如果图表描述过长(超过 200 字符)或可能包含敏感内容,系统会直接使用默认数据,避免触发内容审核。
多语言翻译
翻译流程
- 英文生成: 使用 DeepSeek 生成英文文章
- 中文翻译: 使用通义千问将英文翻译成中文
- 越南语翻译: 使用通义千问将英文翻译成越南语
- 摘要生成: 为中文和越南语内容分别生成摘要
占位符处理
翻译过程中,系统会重新提取占位符:
- 从翻译后的中文内容中重新提取图片和图表占位符
- 如果中文内容中有占位符,使用中文的(因为描述更准确)
- 确保占位符在翻译后仍然有效
数据保存
最终保存到数据库的内容包括:
- 英文标题和内容(原始生成)
- 中文标题、内容和摘要
- 越南语标题、内容和摘要
- 图片 URL 列表(JSON 格式)
- 图表数据列表(JSON 格式)
- 来源文章 URL 列表
使用技巧与最佳实践
文章准备
- 主题一致性: 确保多篇文章都围绕同一主题,便于 AI 整合
- 内容质量: 选择内容质量较高的原始文章,避免低质量内容影响生成结果
- 数量控制: 建议每组 2-3 篇文章,过多文章可能导致整合困难
占位符使用
- 图片占位符: 在关键概念、产品介绍、数据可视化位置插入图片占位符
- 图表占位符: 在涉及数据、统计、趋势的位置插入图表占位符
- 描述清晰: 占位符描述要清晰具体,便于 AI 生成合适的图片和图表
内容优化
- 避免敏感内容: 确保内容不涉及政治、暴力、色情等敏感话题
- 保持中立: 保持客观中立的写作风格,避免主观判断
- 数据准确性: AI 生成的图表数据仅供参考,实际使用时需要验证
错误处理
- 内容审核失败: 如果触发内容审核,系统会自动使用默认数据或占位符
- 生成失败: 如果 AI 生成失败,系统会记录错误日志,不影响其他文章处理
- 重试机制: 可以重新运行生成脚本,系统会跳过已处理的文章
最佳实践: 建议定期运行新闻生成脚本,系统会自动处理未处理的文章,按主题分组生成新闻。每天限制生成 2 篇文章,避免过度消耗 API 配额。
FAQ
Q1: 为什么使用 DeepSeek 而不是其他 AI 服务?
A: DeepSeek 对内容审核更宽松,适合生成科技新闻。其他 AI 服务(如通义千问)可能会遇到内容审核限制,导致生成失败。
Q2: 图片生成失败怎么办?
A: 如果 AI 图片生成失败,系统会自动使用占位符服务(via.placeholder.com),确保文章仍然可以正常显示。
Q3: 图表数据不准确怎么办?
A: AI 生成的图表数据仅供参考,实际使用时需要验证。如果数据不准确,可以在数据库中手动修改图表数据。
Q4: 支持哪些图表类型?
A: 系统支持折线图、柱状图、饼图、雷达图、散点图。可以在占位符中指定图表类型,例如:[CHART:line:数据描述]。
Q5: 文章长度有限制吗?
A: 系统建议文章长度控制在 600-900 字,避免过长导致内容审核失败。DeepSeek 支持更长的输出,但为了确保内容质量和安全性,建议控制在这个范围内。
Q6: 可以自定义图片生成服务吗?
A: 可以。系统预留了图片生成接口,可以后续集成其他图片生成服务(如 Stable Diffusion、DALL-E 等)。
Q7: 翻译质量如何保证?
A: 系统使用通义千问进行翻译,翻译质量较高。如果发现翻译不准确,可以在数据库中手动修改翻译内容。
Q8: 每天可以生成多少篇文章?
A: 系统默认每天限制生成 2 篇文章,避免过度消耗 API 配额。可以在配置文件中修改 dailyLimit 参数。
Q9: 如何处理内容审核失败?
A: 如果触发内容审核,系统会自动使用默认数据或占位符,不会中断整个生成流程。错误信息会记录在日志中,便于排查问题。
Q10: 可以批量生成新闻吗?
A: 可以。系统支持批量处理未处理的文章,按主题自动分组生成新闻。建议使用定时任务(如 cron)定期运行生成脚本。