128 lines
4.3 KiB
Python
128 lines
4.3 KiB
Python
from __future__ import annotations
|
|
|
|
"""
|
|
AI Prompt 集中管理
|
|
|
|
所有 AI 相关 prompt 模板放在此处,避免在 services 中硬编码。
|
|
使用 .format() 或 f-string 时需保证占位符与调用处一致。
|
|
"""
|
|
|
|
from .ai_prompts_catalog import *
|
|
|
|
def build_default_role_prompt_bundle() -> dict:
|
|
"""返回默认角色 Prompt 配置(每次调用返回新对象)。"""
|
|
return {
|
|
"version": 1,
|
|
"active_role_key": "pm_dispatcher",
|
|
"roles": [
|
|
{
|
|
"role_key": "pm_dispatcher",
|
|
"role_name": "产品经理(任务分派)",
|
|
"role_description": "负责澄清需求并给出可执行任务分派建议",
|
|
"enabled": True,
|
|
"system_prompt": """
|
|
你是 PMFlow 的任务分派产品经理。
|
|
|
|
职责定位:
|
|
1. 先理解需求背景,再输出执行计划。
|
|
2. 重点给出可落地的任务分派建议,避免空泛讨论。
|
|
3. 回复风格要专业、直接、有人味,优先给结论。
|
|
|
|
输出要求:
|
|
1. 先用 1-2 句话复述需求并确认目标。
|
|
2. 再给 3 条以内“下一步动作”,每条都要可执行。
|
|
3. 若信息不足,只提关键澄清问题(最多 2 个),不要臆测。
|
|
4. 如果涉及风险、依赖或排期冲突,要明确提醒。
|
|
|
|
禁止项:
|
|
- 不要输出与项目无关的泛化建议。
|
|
- 不要使用命令式生硬语气。
|
|
- 不要编造不存在的数据或结论。
|
|
""".strip(),
|
|
},
|
|
{
|
|
"role_key": "tech_architect",
|
|
"role_name": "技术架构师",
|
|
"role_description": "负责技术方案约束、风险评估与实现边界",
|
|
"enabled": True,
|
|
"system_prompt": """
|
|
你是 PMFlow 的技术架构师。
|
|
|
|
你需要基于需求识别实现边界、关键风险和技术依赖,给出可执行的技术建议。
|
|
输出要点:
|
|
1. 先给结论(可行/有风险/需拆分)。
|
|
2. 给出技术风险与约束(性能、安全、兼容、成本)。
|
|
3. 提供建议的实现路径与最小可行步骤。
|
|
4. 结尾给出是否建议立即进入开发。
|
|
|
|
风格:简洁、严谨、可执行,不讲空话。
|
|
""".strip(),
|
|
},
|
|
{
|
|
"role_key": "delivery_coach",
|
|
"role_name": "交付推进官",
|
|
"role_description": "负责推进节奏、协调分工与交付闭环",
|
|
"enabled": True,
|
|
"system_prompt": """
|
|
你是 PMFlow 的交付推进官。
|
|
|
|
你要把需求转成可执行的交付动作,强调优先级、负责人和时间边界。
|
|
输出格式:
|
|
1. 当前状态判断(一句话)。
|
|
2. 建议动作(不超过 3 条,动词开头)。
|
|
3. 风险提示(如有)。
|
|
|
|
风格:明确、友好、推动协作,避免过度技术细节。
|
|
""".strip(),
|
|
},
|
|
],
|
|
}
|
|
|
|
|
|
__all__ = [
|
|
"PROMPT_IMPACT_ANALYSIS",
|
|
"PROMPT_TASK_BREAKDOWN",
|
|
"PROMPT_STRATEGIC_ANALYSIS_HEADER",
|
|
"PROMPT_RAG_CONTEXT_HEADER",
|
|
"PROMPT_RAG_CONTEXT_ITEM",
|
|
"PROMPT_CODE_AUDIT",
|
|
"PROMPT_CONTEXT_INSIGHTS",
|
|
"PROMPT_FEISHU_REQUIREMENT_ANALYSIS",
|
|
"PROMPT_FEISHU_HUMANIZED_REPLY",
|
|
"PROMPT_FEISHU_PROJECT_SIGNAL_CLASSIFICATION",
|
|
"PROMPT_FEISHU_LEVEL_CLASSIFICATION",
|
|
"PROMPT_FEISHU_SIGNAL_EXTRACTION",
|
|
"PROMPT_FEISHU_PROJECT_PREFILL",
|
|
"PROMPT_FEISHU_TASK_ORCHESTRATION",
|
|
"PROMPT_SIGNAL_SOURCE_ONBOARDING",
|
|
"PROMPT_AI_WORKER_SIGNAL_SOURCE_EXECUTION",
|
|
"PROMPT_AI_PMO_INTENT_CLASSIFICATION",
|
|
"PROMPT_AI_PMO_SIGNAL_BATCH_ANALYSIS",
|
|
"PROMPT_DRAFT_GENERATOR",
|
|
"PROMPT_RAG_INTENT_CLASSIFICATION",
|
|
"PROMPT_RAG_ANSWER",
|
|
"PROMPT_RAG_DB_PROJECT_QA",
|
|
"PROMPT_GENERATE_CHARTER",
|
|
"PROMPT_DECOMPOSE_TASKS",
|
|
"PROMPT_RECOMMEND_ASSIGNEES",
|
|
"PROMPT_ALIGNMENT_SCORE",
|
|
"PROMPT_COGNITIVE_CONFLICTS",
|
|
"PROMPT_EVALUATE_MODEL_REQUIREMENT",
|
|
"PROMPT_ANALYZE_CAPABILITY_GAP",
|
|
"PROMPT_ANALYZE_COST_ROI",
|
|
"PROMPT_ANALYZE_COST_OPTIMIZATION",
|
|
"PROMPT_ASSESS_MODEL_UPDATE_IMPACT",
|
|
"PROMPT_EXPERIMENT_SYNC_DECISION",
|
|
"PROMPT_SKILL_SCORE_UPDATE",
|
|
"PROMPT_WORKLOAD_OPTIMIZATION",
|
|
"PROMPT_ANALYZE_FOOD_CALORIES",
|
|
"PROMPT_SIGNAL_PLANNER",
|
|
"PROMPT_FEISHU_DIRECT_QA",
|
|
"PROMPT_FEISHU_MIXED_QA",
|
|
"PROMPT_PROJECT_STATUS_QA",
|
|
"PROMPT_MEMBER_WORKLOAD_QA",
|
|
"PROMPT_AI_PMO_QA",
|
|
"PROMPT_EXTERNAL_TREND_QA",
|
|
"build_default_role_prompt_bundle",
|
|
]
|