9.7 KiB
9.7 KiB
旅游内容自动生成系统 - 使用指南
1. 系统概述
旅游内容自动生成系统是一个基于AI的内容创作平台,专注于为旅游景点和产品生成营销内容。系统采用三阶段生成流程:选题生成、内容创作和内容审核,每个阶段都由专门的AI模型处理,并通过配置文件进行精细控制。
2. 环境准备
系统要求
- Python 3.8+
- 足够的内存(推荐8GB以上)
- 互联网连接(用于API调用)
安装依赖
# 克隆仓库
git clone [仓库地址]
cd [仓库名称]
# 安装依赖包
pip install -r requirements.txt
3. 配置系统
系统通过JSON配置文件进行控制,所有配置文件位于config目录下:
3.1 AI模型配置 (ai_model.json)
{
"model": "qwen-plus", // 使用的模型名称
"api_url": "https://dashscope.aliyuncs.com/compatible-mode/v1", // API地址
"api_key": "your_api_key", // 替换为您的API密钥
"temperature": 0.3, // 生成多样性控制
"top_p": 0.4, // 采样控制
"presence_penalty": 1.2, // 重复惩罚
"timeout": 120, // API超时时间(秒)
"max_retries": 3 // 最大重试次数
}
重要提示: 请替换
your_api_key为您的实际API密钥。
3.2 选题生成配置 (topic_gen.json)
{
"topic_system_prompt": "resource/prompt/generateTopics/system.txt", // 系统提示路径
"topic_user_prompt": "resource/prompt/generateTopics/user.txt", // 用户提示路径
"model": {
"temperature": 0.2, // 选题生成的温度参数
"top_p": 0.3, // 选题生成的top_p参数
"presence_penalty": 1.5 // 选题生成的重复惩罚参数
},
"topic": {
"date": "2024-07-20", // 选题目标日期
"num": 5, // 生成选题数量
"variants": 1 // 每个选题的变体数量
}
}
3.3 内容生成配置 (content_gen.json)
{
"content_system_prompt": "resource/prompt/generateContent/system.txt", // 内容生成系统提示
"content_user_prompt": "resource/prompt/generateContent/user.txt", // 内容生成用户提示
"judger_system_prompt": "resource/prompt/judgeContent/system.txt", // 审核系统提示
"judger_user_prompt": "resource/prompt/judgeContent/user.txt", // 审核用户提示
"enable_content_judge": true, // 是否启用内容审核
"model": {
"temperature": 0.3, // 内容生成温度参数
"top_p": 0.5, // 内容生成top_p参数
"presence_penalty": 1.2 // 内容生成重复惩罚参数
},
"judger_model": {
"temperature": 0.2, // 内容审核温度参数
"top_p": 0.3, // 内容审核top_p参数
"presence_penalty": 0.8 // 内容审核重复惩罚参数
}
}
3.4 资源配置 (resource.json)
{
"resource_dirs": ["."], // 资源基础目录
"style": {
"paths": [ // 文案风格文件路径
"resource/prompt/Style/攻略风文案提示词.md",
"resource/prompt/Style/极力推荐风文案提示词.md"
]
},
"demand": {
"paths": [ // 用户需求文件路径
"resource/prompt/Demand/亲子向文旅需求.md",
"resource/prompt/Demand/周边游文旅需求.md"
]
},
"refer": {
"refer_list": [ // 参考资料配置
{
"path": "resource/prompt/Refer/2025各月节日宣传节点时间表.md",
"sampling_rate": 1, // 采样率,1表示100%使用
"step": "topic" // 使用阶段:topic/content/judge
},
{
"path": "resource/prompt/Refer/标题参考格式.json",
"sampling_rate": 0.25,
"step": "content"
},
{
"path": "resource/prompt/Refer/正文范文参考.json",
"sampling_rate": 0.5,
"step": "content"
}
]
},
"object": {
"paths": [ // 景点对象文件路径
"resource/data/Object/天津冒险湾.txt"
]
},
"product": {
"paths": [ // 产品信息文件路径
"resource/data/Product/天津冒险湾-2大2小套票.txt"
]
},
"output_dir": {
"base_dir": "result" // 输出目录
}
}
3.5 系统配置 (system.json)
{
"debug": false, // 是否开启调试模式
"log_level": "INFO", // 日志级别
"parallel_processing": false, // 是否启用并行处理
"max_workers": 4 // 最大工作线程数
}
4. 运行系统
4.1 基本运行命令
python main.py
这将使用默认配置运行系统。
4.2 自定义运行参数
python main.py --config_dir custom_config --run_id my_run_20240601
参数说明:
--config_dir: 配置文件目录路径,默认为 "config"--run_id: 运行ID,用于标识本次运行,默认为时间戳格式
5. 输出结果
系统运行后,会在 result/{run_id} 目录下生成以下文件:
topics_generated.json: 生成的选题列表(JSON格式)topics_generated.txt: 人类可读的选题列表(文本格式)- 每个选题的子目录
topic_{index}:content_system_prompt.txt: 内容生成的系统提示content_user_prompt.txt: 内容生成的用户提示content_raw_response.txt: AI返回的原始响应article.json: 生成的文章内容judger_system_prompt.txt: 审核的系统提示(如果启用审核)judger_user_prompt.txt: 审核的用户提示(如果启用审核)judger_raw_response.txt: 审核的原始响应(如果启用审核)article_judged.json: 审核后的文章内容(如果启用审核)
6. 资源文件准备
6.1 提示词模板
系统使用以下提示词模板:
-
选题生成:
resource/prompt/generateTopics/system.txt: 选题生成系统提示resource/prompt/generateTopics/user.txt: 选题生成用户提示
-
内容生成:
resource/prompt/generateContent/system.txt: 内容生成系统提示resource/prompt/generateContent/user.txt: 内容生成用户提示
-
内容审核:
resource/prompt/judgeContent/system.txt: 内容审核系统提示resource/prompt/judgeContent/user.txt: 内容审核用户提示
6.2 风格和需求文件
-
风格文件 (
resource/prompt/Style/):- 每个文件描述一种文案风格
- 例如:
攻略风文案提示词.md,极力推荐风文案提示词.md
-
需求文件 (
resource/prompt/Demand/):- 每个文件描述一种用户需求
- 例如:
亲子向文旅需求.md,周边游文旅需求.md
6.3 参考资料文件
- 参考资料 (
resource/prompt/Refer/):- 节日时间表:
2025各月节日宣传节点时间表.md - 标题参考:
标题参考格式.json - 正文参考:
正文范文参考.json
- 节日时间表:
6.4 产品和景点数据
-
景点数据 (
resource/data/Object/):- 每个文件包含一个景点的详细信息
- 例如:
天津冒险湾.txt
-
产品数据 (
resource/data/Product/):- 每个文件包含一个产品的详细信息
- 例如:
天津冒险湾-2大2小套票.txt
7. 常见问题解答
7.1 系统运行失败
问题: 系统运行时出现错误或无法生成内容。
解决方案:
- 检查API密钥是否正确配置
- 检查网络连接是否正常
- 查看日志输出,定位具体错误
- 确保所有资源文件路径正确且文件存在
7.2 生成内容质量不佳
问题: 生成的内容质量不符合预期。
解决方案:
- 调整模型参数(temperature、top_p、presence_penalty)
- 改进提示词模板
- 提供更高质量的参考资料
- 确保产品和景点信息详尽准确
7.3 审核功能不生效
问题: 内容审核功能似乎没有生效。
解决方案:
- 检查
content_gen.json中的enable_content_judge是否设为true - 确保审核提示词模板存在且路径正确
- 检查日志中是否有审核相关的错误信息
7.4 如何添加新的景点或产品
步骤:
- 在
resource/data/Object/目录下创建新的景点文件 - 在
resource/data/Product/目录下创建新的产品文件 - 更新
resource.json中的object.paths和product.paths数组 - 重新运行系统
7.5 如何自定义生成内容的风格
步骤:
- 在
resource/prompt/Style/目录下创建新的风格文件 - 更新
resource.json中的style.paths数组 - 在选题生成时,系统会自动考虑新添加的风格
8. 高级使用技巧
8.1 调整模型参数
不同的内容类型可能需要不同的模型参数:
- 高
temperature(0.7-1.0):更有创意但可能不够精确 - 低
temperature(0.1-0.3):更精确但可能缺乏创意 - 高
presence_penalty:减少重复内容 - 低
top_p:更保守的输出
8.2 参考内容采样率调整
通过调整sampling_rate参数,可以控制参考内容的使用量:
1.0:全部使用0.5:使用约50%0.25:使用约25%
8.3 自定义提示词模板
可以根据需要修改提示词模板,但请确保:
- 保持JSON输出格式一致
- 不要改变关键指令
- 测试修改后的效果
8.4 批量生成内容
对于需要批量生成内容的场景,可以:
- 准备多个景点和产品数据
- 编写脚本循环调用主程序
- 为每次运行指定不同的
run_id
9. 联系与支持
如有问题或需要支持,请联系系统管理员或开发团队。