""" 账号人设信息生成脚本 """ import asyncio import sys from pathlib import Path from dotenv import load_dotenv # 加载项目根目录 .env load_dotenv(Path(__file__).parent.parent / ".env") from create.utils import run_agent DEFAULT_MODEL = "google/gemini-3-flash-preview" async def generate_content( account_name: str, model: str = DEFAULT_MODEL, **run_config_kwargs ) -> str: """ 完整内容生成流程:人设提取 -> 自动搜索灵感 -> 选题生成 -> 创作脚本生成 使用单一agent调用完成整个流程,agent会自动: 1. 提取账号人设信息 2. 基于人设自动生成搜索关键词并搜索灵感 3. 生成选题 4. 生成创作脚本 Args: account_name: 账号名称 model: 模型名称 **run_config_kwargs: 其他 RunConfig 参数 Returns: str: 最终生成的完整内容(包含人设、灵感、选题和创作脚本) """ # 创建输出目录 output_dir = Path(__file__).parent / "data" / account_name output_dir.mkdir(parents=True, exist_ok=True) # 读取完整流程prompt print("=" * 60) print("开始执行完整内容生成流程...") print("=" * 60) print("流程包括:人设提取 -> 自动搜索灵感 -> 选题生成 -> 创作脚本生成") print("=" * 60) workflow_prompt_path = Path(__file__).parent / "prompt" / "full_workflow.md" workflow_prompt = workflow_prompt_path.read_text(encoding="utf-8") # 替换账号名称占位符 workflow_prompt = workflow_prompt.replace("{账号名称}", account_name) # 单次agent调用完成整个流程 final_result = await run_agent(workflow_prompt, model=model, **run_config_kwargs) # 保存最终结果 final_file = output_dir / "full_workflow_result.md" final_file.write_text(final_result, encoding="utf-8") print(f"\n✅ 完整流程执行完成") print(f"📁 最终结果已保存到: {final_file}\n") return final_result async def main(): """主函数""" account_name = '健康知识' result = await generate_content(account_name) print("=" * 60) print("最终结果:") print("=" * 60) print(result) if __name__ == "__main__": asyncio.run(main())