TravelContentCreator/examples/run_step1_topics.py

46 lines
1.5 KiB
Python
Raw Normal View History

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
示例脚本仅执行选题生成步骤 (阶段 1)
"""
import os
import sys
2025-04-22 14:16:29 +08:00
import traceback
# 添加项目根目录到Python路径
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
# 导入所需模块
2025-04-22 14:16:29 +08:00
from main import load_config
from utils.tweet_generator import run_topic_generation_pipeline
if __name__ == "__main__":
print("==== 阶段 1: 仅生成选题 ====")
try:
# 1. 加载配置
print("加载配置...")
# 可以通过命令行参数指定配置文件,这里使用默认值
config = load_config()
print("配置加载成功。")
# 2. 执行选题生成
print("\n执行选题生成...")
2025-04-22 14:16:29 +08:00
run_id, tweet_topic_record = run_topic_generation_pipeline(config)
if run_id and tweet_topic_record:
output_dir = config.get("output_dir", "./result")
topics_file = os.path.join(output_dir, run_id, "tweet_topic.json")
print("\n==== 选题生成成功 ====")
print(f"Run ID: {run_id}")
print(f"生成的选题数量: {len(tweet_topic_record.topics_list)}")
print(f"选题文件已保存到: {topics_file}")
print("\n请记录下 Run ID阶段 2 将需要它。")
else:
print("\n==== 选题生成失败 ====")
sys.exit(1)
except Exception as e:
print(f"\n处理过程中出错: {e}")
traceback.print_exc()
sys.exit(1)