# 旅游内容自动生成系统 - 使用指南 ## 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. 联系与支持 如有问题或需要支持,请联系系统管理员或开发团队。