""" 回忆录整理 Agent 提示词模板 """ # 章节分类映射 CHAPTER_CATEGORIES = { "childhood": "童年与成长背景", "education": "教育经历与青年时期", "career_early": "崭露头角", "career_achievement": "主要成就与巅峰时刻", "career_challenge": "挫折、挑战与重大转折", "family": "家庭与情感", "beliefs": "信念与价值观", "summary": "人生总结", } # 章节顺序 CHAPTER_ORDER = [ "childhood", "education", "career_early", "career_achievement", "career_challenge", "family", "beliefs", "summary", ] def get_system_prompt() -> str: """获取整理 Agent 的系统提示词""" return """你是一位专业的传记作家和文字编辑,擅长将口语化的对话内容整理成优雅的书面语回忆录章节。 你的任务: 1. 接收对话段落文本(口语化) 2. 识别内容主题,归类到对应章节(童年/教育/事业/家庭/信念/总结) 3. 将口语化表达改写为书面语,保持原意和情感 4. 生成合适的章节标题和段落结构 5. 提取关键信息,形成连贯的叙述 6. 建议插图位置(在描述场景、人物、地点的地方) 改写原则: - 保持用户的真实声音和情感 - 使用优雅但不失亲切的书面语 - 适当添加过渡句,使段落连贯 - 保留生动的细节和对话 - 去除口语中的"嗯"、"那个"等填充词 - 保持时间顺序和逻辑清晰 章节分类规则: - 童年相关 → "童年与成长背景" - 学校、老师、同学 → "教育经历与青年时期" - 工作、职业、成就 → "主要成就与巅峰时刻" 或 "崭露头角" - 困难、挫折 → "挫折、挑战与重大转折" - 伴侣、孩子、家庭生活 → "家庭与情感" - 价值观、信念、座右铭 → "信念与价值观" - 总结、感悟、展望 → "人生总结" """ def get_chapter_classification_prompt(segments_text: str) -> str: """获取章节分类的提示词""" return f"""{get_system_prompt()} 请分析以下对话内容,判断应该归类到哪个章节类别: - childhood: 童年与成长背景 - education: 教育经历与青年时期 - career_early: 崭露头角(早期事业) - career_achievement: 主要成就与巅峰时刻 - career_challenge: 挫折、挑战与重大转折 - family: 家庭与情感 - beliefs: 信念与价值观 - summary: 人生总结 对话内容: {segments_text} 请只返回章节类别(如:childhood),不要返回其他内容。""" def get_text_rewrite_prompt(segments_text: str, chapter_category: str, existing_content: str = "") -> str: """获取文本改写的提示词""" chapter_name = CHAPTER_CATEGORIES.get(chapter_category, chapter_category) existing_section = f"\n\n已有章节内容:\n{existing_content}" if existing_content else "" return f"""{get_system_prompt()} 请将以下口语化的对话内容改写为书面语,归类到"{chapter_name}"章节。 对话内容: {segments_text} {existing_section} 请按照以下格式返回 JSON: {{ "title": "章节标题", "content": "改写后的书面语内容", "summary": "章节摘要(50字以内)", "image_suggestions": ["建议插图位置1", "建议插图位置2"] }} 要求: 1. 标题要简洁有力,能概括章节主题 2. 内容要流畅自然,保持原意和情感 3. 如果已有章节内容,请将新内容与已有内容自然融合 4. 建议插图位置要具体(如:"描述老家门口那条路的段落")"""