实现 DeepSeek 超长新闻输出以及图片生成和图表生成的教程

83 阅读11分钟

实现 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:描述性文字](英文格式)
  • [图片:描述性文字](中文格式)

提取过程

  1. 从英文内容中提取图片占位符
  2. 翻译成中文后,从中文内容中重新提取占位符(因为翻译可能改变了格式)
  3. 如果中文内容中有占位符,使用中文的(因为描述更准确)

生成策略

系统采用两级生成策略:

  1. AI 生成优先: 首先尝试使用 AI(通义千问)生成图片
  2. 占位符回退: 如果 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": "单位(如:%、万元、亿美元等)"
}

生成过程

  1. 从内容中提取图表占位符,识别图表类型和描述
  2. 标准化图表类型(将中文类型转换为英文)
  3. 调用 AI(通义千问)生成图表数据
  4. 如果生成失败或触发内容审核,使用默认数据

图表生成示例

// 占位符示例
[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 字符)或可能包含敏感内容,系统会直接使用默认数据,避免触发内容审核。

多语言翻译

翻译流程

  1. 英文生成: 使用 DeepSeek 生成英文文章
  2. 中文翻译: 使用通义千问将英文翻译成中文
  3. 越南语翻译: 使用通义千问将英文翻译成越南语
  4. 摘要生成: 为中文和越南语内容分别生成摘要

占位符处理

翻译过程中,系统会重新提取占位符:

  • 从翻译后的中文内容中重新提取图片和图表占位符
  • 如果中文内容中有占位符,使用中文的(因为描述更准确)
  • 确保占位符在翻译后仍然有效

数据保存

最终保存到数据库的内容包括:

  • 英文标题和内容(原始生成)
  • 中文标题、内容和摘要
  • 越南语标题、内容和摘要
  • 图片 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)定期运行生成脚本。