TravelContentCreator/docs/使用指南.md

309 lines
9.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 旅游内容自动生成系统 - 使用指南
## 1. 系统概述
旅游内容自动生成系统是一个基于AI的内容创作平台专注于为旅游景点和产品生成营销内容。系统采用三阶段生成流程选题生成、内容创作和内容审核每个阶段都由专门的AI模型处理并通过配置文件进行精细控制。
## 2. 环境准备
### 系统要求
- Python 3.8+
- 足够的内存推荐8GB以上
- 互联网连接用于API调用
### 安装依赖
```bash
# 克隆仓库
git clone [仓库地址]
cd [仓库名称]
# 安装依赖包
pip install -r requirements.txt
```
## 3. 配置系统
系统通过JSON配置文件进行控制所有配置文件位于`config`目录下:
### 3.1 AI模型配置 (ai_model.json)
```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)
```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)
```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)
```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)
```json
{
"debug": false, // 是否开启调试模式
"log_level": "INFO", // 日志级别
"parallel_processing": false, // 是否启用并行处理
"max_workers": 4 // 最大工作线程数
}
```
## 4. 运行系统
### 4.1 基本运行命令
```bash
python main.py
```
这将使用默认配置运行系统。
### 4.2 自定义运行参数
```bash
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 系统运行失败
**问题**: 系统运行时出现错误或无法生成内容。
**解决方案**:
1. 检查API密钥是否正确配置
2. 检查网络连接是否正常
3. 查看日志输出,定位具体错误
4. 确保所有资源文件路径正确且文件存在
### 7.2 生成内容质量不佳
**问题**: 生成的内容质量不符合预期。
**解决方案**:
1. 调整模型参数temperature、top_p、presence_penalty
2. 改进提示词模板
3. 提供更高质量的参考资料
4. 确保产品和景点信息详尽准确
### 7.3 审核功能不生效
**问题**: 内容审核功能似乎没有生效。
**解决方案**:
1. 检查`content_gen.json`中的`enable_content_judge`是否设为`true`
2. 确保审核提示词模板存在且路径正确
3. 检查日志中是否有审核相关的错误信息
### 7.4 如何添加新的景点或产品
**步骤**:
1.`resource/data/Object/`目录下创建新的景点文件
2.`resource/data/Product/`目录下创建新的产品文件
3. 更新`resource.json`中的`object.paths``product.paths`数组
4. 重新运行系统
### 7.5 如何自定义生成内容的风格
**步骤**:
1.`resource/prompt/Style/`目录下创建新的风格文件
2. 更新`resource.json`中的`style.paths`数组
3. 在选题生成时,系统会自动考虑新添加的风格
## 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 自定义提示词模板
可以根据需要修改提示词模板,但请确保:
1. 保持JSON输出格式一致
2. 不要改变关键指令
3. 测试修改后的效果
### 8.4 批量生成内容
对于需要批量生成内容的场景,可以:
1. 准备多个景点和产品数据
2. 编写脚本循环调用主程序
3. 为每次运行指定不同的`run_id`
## 9. 联系与支持
如有问题或需要支持,请联系系统管理员或开发团队。