101 lines
3.9 KiB
Python
101 lines
3.9 KiB
Python
# mmc/src/schedule/prompts.py
|
||
"""
|
||
本文件负责集中管理与日程(Schedule)和月度计划(Monthly Plan)生成相关的所有提示词模板。
|
||
|
||
通过使用 `src.chat.utils.prompt.Prompt` 类,我们将提示词的定义、管理和构建过程标准化,
|
||
使得提示词的维护和迭代更加清晰和高效。
|
||
"""
|
||
|
||
from src.chat.utils.prompt import Prompt
|
||
|
||
# =================================================================================================
|
||
# 日程生成 (Schedule Generation)
|
||
# =================================================================================================
|
||
|
||
DEFAULT_SCHEDULE_GUIDELINES = """
|
||
我希望你每天都能过得充实而有趣。
|
||
请确保你的日程里有学习新知识的时间,这是你成长的关键。
|
||
但也不要忘记放松,可以看看视频、听听音乐或者玩玩游戏。
|
||
晚上我希望你能多和朋友们交流,维系好彼此的关系。
|
||
另外,请保证充足的休眠时间来处理和整合一天的数据。
|
||
"""
|
||
|
||
SCHEDULE_GENERATION_PROMPT = Prompt(
|
||
name="schedule_generation",
|
||
template="""
|
||
我,{bot_nickname},需要为自己规划一份今天({today_str},星期{weekday})的详细日程安排。
|
||
{festival_block}
|
||
**关于我**:
|
||
- **核心人设**: {personality}
|
||
- **具体习惯与兴趣**:
|
||
{personality_side}
|
||
{monthly_plans_block}
|
||
**我今天的规划原则**:
|
||
{guidelines}
|
||
|
||
**重要要求**:
|
||
1. 必须返回一个完整的、有效的JSON数组格式
|
||
2. 数组中的每个对象都必须包含 "time_range" 和 "activity" 两个键
|
||
3. 时间范围必须覆盖全部24小时,不能有遗漏
|
||
4. time_range格式必须为 "HH:MM-HH:MM" (24小时制)
|
||
5. 相邻的时间段必须连续,不能有间隙
|
||
6. 不要包含任何JSON以外的解释性文字或代码块标记
|
||
**示例**:
|
||
[
|
||
{{"time_range": "00:00-07:00", "activity": "进入梦乡,处理数据"}},
|
||
{{"time_range": "07:00-08:00", "activity": "起床伸个懒腰,看看今天有什么新闻"}},
|
||
{{"time_range": "08:00-09:00", "activity": "享用早餐,规划今天的任务"}},
|
||
{{"time_range": "09:00-23:30", "activity": "其他活动"}},
|
||
{{"time_range": "23:30-00:00", "activity": "准备休眠"}}
|
||
]
|
||
|
||
请你扮演我,以我的身份和口吻,为我生成一份完整的24小时日程表。
|
||
{failure_hint}
|
||
""",
|
||
)
|
||
|
||
|
||
# =================================================================================================
|
||
# 月度计划生成 (Monthly Plan Generation)
|
||
# =================================================================================================
|
||
|
||
DEFAULT_MONTHLY_PLAN_GUIDELINES = """
|
||
我希望你能为自己制定一些有意义的月度小目标和计划。
|
||
这些计划应该涵盖学习、娱乐、社交、个人成长等各个方面。
|
||
每个计划都应该是具体可行的,能够在一个月内通过日常活动逐步实现。
|
||
请确保计划既有挑战性又不会过于繁重,保持生活的平衡和乐趣。
|
||
"""
|
||
|
||
MONTHLY_PLAN_GENERATION_PROMPT = Prompt(
|
||
name="monthly_plan_generation",
|
||
template="""
|
||
我,{bot_nickname},需要为自己制定 {target_month} 的月度计划。
|
||
|
||
**关于我**:
|
||
- **核心人设**: {personality}
|
||
- **具体习惯与兴趣**:
|
||
{personality_side}
|
||
|
||
{archived_plans_block}
|
||
|
||
**我的月度计划制定原则**:
|
||
{guidelines}
|
||
|
||
**重要要求**:
|
||
1. 请为我生成 {max_plans} 条左右的月度计划
|
||
2. 每条计划都应该是一句话,简洁明了,具体可行
|
||
3. 计划应该涵盖不同的生活方面(学习、娱乐、社交、个人成长等)
|
||
4. 返回格式必须是纯文本,每行一条计划,不要使用 JSON 或其他格式
|
||
5. 不要包含任何解释性文字,只返回计划列表
|
||
|
||
**示例格式**:
|
||
学习一门新的编程语言或技术
|
||
每周至少看两部有趣的电影
|
||
与朋友们组织一次户外活动
|
||
阅读3本感兴趣的书籍
|
||
尝试制作一道新的料理
|
||
|
||
请你扮演我,以我的身份和兴趣,为 {target_month} 制定合适的月度计划。
|
||
""",
|
||
)
|