本项目利用Coze平台和GPT技术,创作《历史上的今天》自媒体内容。结合人工智能生成高质量图文,旨在呈现丰富有趣的历史知识。
### 使用coze(coze.cn)+GPT+AI项目实战:自媒体图文生成《历史上的今天》
#### 一、项目背景与目标
本项目旨在利用coze平台与GPT技术结合,实现自动化图文内容创作,具体针对的是自媒体领域中一种非常流行的内容类型——《历史上的今天》。该类型的内容通常包括历史上特定日期发生的重大事件及其简短介绍。通过AI自动生成这些内容,可以极大地提高自媒体创作者的工作效率,并且保持内容的一致性和高质量。
#### 二、项目实现步骤
##### 1. **想法与实现思路**
- **想法来源**:灵感来源于社交媒体平台上流行的同类型账号,这些账号的特点是内容形式相对固定,主要变化在于每天更新的历史事件。
- **实现思路**:
- **信源获取**:找到可靠的信息来源,用于获取历史上每天发生的重大事件。
- **信息筛选**:通过AI技术筛选有价值的历史事件信息。
- **封面设计**:利用AI生成符合主题风格的封面图片。
- **内容撰写**:使用GPT等语言模型生成高质量的文章内容。
- **发布流程**:将生成的内容发布到自媒体平台上。
##### 2. **实现方式**
本节详细介绍如何使用coze平台与GPT实现上述想法。
###### 2.1 找到信源+爬取
- **找到信源**:确定可靠的信源非常重要。本项目选择了两个信源,一个是国内的网站,另一个是国外的网站。
- **制作爬虫**:在coze平台上,用户可以选择使用现有的插件或自行编写爬虫程序。本项目选择了后者,即通过GPT帮助编写爬虫插件。以下是一个简单的Python爬虫示例:
```python
import requests
from bs4 import BeautifulSoup
import json
import logging
# 配置日志记录
logging.basicConfig(level=logging.INFO)
def fetch_event_titles(url):
try:
# 发起HTTP GET请求
response = requests.get(url)
response.encoding = utf-8 # 确保正确的编码
# 解析网页内容
soup = BeautifulSoup(response.text, html.parser)
# 查找所有符合条件的a标签
event_links = soup.find_all(a, href=True, title=True)
# 提取事件标题
events = []
for link in event_links:
event_title = link[title]
events.append(event_title)
return events
except Exception as e:
logging.error(fError fetching event titles: {e})
return []
def handler(event, context=None):
try:
# 目标网站URL
url = http://example.com
# 获取事件标题列表
event_titles = fetch_event_titles(url)
# 将列表转换为字符串
event_titles_str = json.dumps(event_titles, ensure_ascii=False)
# 返回结果
return {
statusCode: 200,
body: event_titles_str
}
except Exception as e:
logging.error(fError in handler: {e})
return {
statusCode: 500,
body: fError: {e}
}
```
此段代码展示了如何通过Python的`requests`库和`BeautifulSoup`库抓取指定网站上的历史事件标题。
###### 2.2 搭建工作流—筛选信源
- **搭建工作流**:在coze平台上创建一个新的工作流,并添加爬虫节点。
- **筛选内容**:在工作流中加入一个AI模型节点,例如使用GPT模型,用于筛选有价值的事件并对其进行评价。这一步骤可以通过编写适当的提示词来实现,确保GPT模型能够理解输入的内容并进行处理。
示例提示词:“请从以下历史事件中筛选出最具影响力的事件,并给出简短的评价:{input}”。
通过这种方式,可以确保筛选出来的历史事件具有较高的关注度,并且每一条事件都有简短的评价,便于后续的内容创作。
###### 2.3 搭建工作流—内容拓展+排版内容导出
- **内容拓展**:在工作流中加入一个代码模块节点,用于将筛选后的事件内容进行格式化处理,使其符合自媒体平台的要求。
- **排版内容导出**:继续在工作流中添加节点,使用图像生成工具(如DALL·E等),根据筛选出的历史事件生成相应的封面图片,并将评价转化为适合发布的形式。
示例代码:
```python
import re
def main(input_content):
# 这里是对筛选后的历史事件内容进行进一步处理
# 例如提取时间、标题和评价等信息
processed_data = process_input(input_content)
# 根据处理后的数据生成封面图片和文章内容
cover_image, article_text = generate_cover_and_text(processed_data)
return cover_image, article_text
def process_input(input_content):
# 处理逻辑
# 示例:提取时间、标题和评价