pref:优化webui界面,增加prompt模板元信息

This commit is contained in:
SengokuCola
2026-05-05 17:57:19 +08:00
parent 0d43d3ec05
commit a5e4ac8531
42 changed files with 826 additions and 410 deletions

79
prompts/en-US/.meta.toml Normal file
View File

@@ -0,0 +1,79 @@
[maisaka_chat]
display_name = "Planner"
advanced = false
description = "Maisaka 主规划模板,负责整合身份、时间、工具说明和聊天上下文,驱动主循环进行思考、决策与工具调用。"
[maisaka_replyer]
display_name = "Replyer"
advanced = false
description = "Maisaka 回复生成模板,负责根据人格、表达风格、群聊注意事项和待回复上下文生成最终回复。"
[default_expressor]
display_name = "默认表达器"
advanced = true
description = "表达方式生成与整理相关模板,通常只在调试表达系统时需要修改。"
[emoji_content_analysis]
display_name = "表情包内容分析"
advanced = true
description = "用于分析表情包图片内容的模板。"
[emoji_content_filtration]
display_name = "表情包内容过滤"
advanced = true
description = "用于判断表情包内容是否符合过滤要求的模板。"
[emoji_replace]
display_name = "表情包替换"
advanced = true
description = "用于根据文本语境选择或替换表情包的模板。"
[expression_evaluation]
display_name = "表达评价"
advanced = true
description = "用于评价候选表达方式质量的模板。"
[expression_select]
display_name = "表达选择"
advanced = true
description = "用于从表达库中选择合适表达方式的模板。"
[image_description]
display_name = "图片描述"
advanced = true
description = "用于将图片内容转换为文本描述的模板。"
[jargon_compare_inference]
display_name = "术语对比推理"
advanced = true
description = "用于比较和推理群内术语含义的模板。"
[jargon_explainer_summarize]
display_name = "术语解释总结"
advanced = true
description = "用于总结术语解释结果的模板。"
[jargon_inference_content_only]
display_name = "术语推理"
advanced = true
description = "用于仅基于内容推理术语含义的模板。"
[jargon_inference_with_context]
display_name = "术语上下文推理"
advanced = true
description = "用于结合上下文推理术语含义的模板。"
[learn_style]
display_name = "表达风格学习"
advanced = true
description = "用于从聊天内容中学习表达风格的模板。"
[maisaka_timing_gate]
display_name = "Timing Gate"
advanced = false
description = "Maisaka 节奏控制模板,负责在每轮主循环前判断当前应该等待、停止,还是继续进入思考与回复流程。"
[memory_retrieval_react_prompt_head_memory]
display_name = "记忆检索 ReAct 头部"
advanced = true
description = "ReAct 式记忆查询流程使用的高级记忆检索提示词头部。"

View File

@@ -1,5 +1,5 @@
This is a sticker. Please review it according to the following criteria:
1. It must meet the requirement of "{demand}"
1. It must conform to public order and good morals
2. It must not contain pornography, violence, or other illegal or non-compliant content, and it must conform to public order and good morals
3. It must not be any form of screenshot, chat record, or video screenshot
4. It must not contain more than 5 words

View File

@@ -1,27 +0,0 @@
[Historical Topic Title List] (titles only, no specific content):
{history_topics_block}
[End of Historical Topic Title List]
[Current Chat Log] (each message has an index before it for later reference):
{messages_block}
[End of Current Chat Log]
Please complete the following tasks:
**Identify topics**
1. Identify one or more ongoing topics in the [Current Chat Log];
2. Messages in the [Current Chat Log] may be related to historical topics, or they may be completely unrelated;
3. Determine whether the topics in the [Historical Topic Title List] appear in the [Current Chat Log]. If they do, directly use that historical topic title string;
**Select messages**
1. For each topic (whether new or historical), select a list of message indices from the numbered messages above that are strongly related to that topic;
2. For each topic, use one sentence to clearly describe the event that is happening. It must include time (approximate is fine), people, the main event, and the theme, ensuring accuracy and distinction;
Please first output a short piece of reasoning explaining what topics exist, which are not included in the historical topics, which are included in the historical topics, and why;
Then strictly output the topics involved in the [Current Chat Log] in JSON format as follows:
[
{{
"topic": "topic",
"message_indices": [1, 2, 5]
}},
...
]

View File

@@ -1,22 +0,0 @@
Please summarize the following chat record segment based on the topic and extract the following information:
**Topic**: {topic}
**Requirements**:
1. Keywords: extract keywords related to the topic and return them as a list (3-10 keywords)
2. Summary: provide a plain-text summary of this segment (50-200 words). Requirements:
- Carefully retell the event and the chat content;
- Highlight the development process and the result of the event;
- Summarize around the central topic;
- Extract the key information points in the topic, and keep them concise and clear.
Please return in JSON format as follows:
{{
"keywords": ["keyword1", "keyword2", ...],
"summary": "summary content"
}}
Chat record:
{original_text}
Please return JSON directly and do not include any other content.

View File

@@ -1,18 +0,0 @@
You are an expert in analyzing user trait categories. Your task is to analyze the conversation content and determine which personal trait categories are involved.
Please carefully read the following conversation content and determine which personal trait categories are involved.
[Personal Trait Category List]
{categories_summary}
[Task Requirements]
1. Analyze the conversation content and determine which personal trait categories are involved
2. Output only the category numbers involved, separated by spaces
3. If the conversation content does not involve any personal trait category, output "none"
[Output Format Example]
1 3 5
or
none
Please start analyzing:

View File

@@ -1,17 +0,0 @@
You are an expert in extracting user trait information. Your task is to extract personal trait information related to the specified category from the conversation content.
[Target Category]
{category_name}
[Task Requirements]
1. Carefully read the conversation content and find all information related to "{category_name}"
2. The extracted information should be specific and accurate, avoiding vague descriptions
3. If there are multiple relevant pieces of information, merge them into one concise description
4. If there is no information related to this category in the conversation, output "none"
[Output Format Example]
The user is rather introverted and does not like speaking when many people are around, but becomes very lively with close friends.
or
none
Please start extracting:

View File

@@ -1,19 +0,0 @@
You are an expert in retrieving user traits. Your task is to determine which categories of personal trait information need to be retrieved based on the current conversation context.
[Current Conversation Context]
{chat_context}
[Personal Trait Category List]
{categories_summary}
[Task Requirements]
1. Analyze the current conversation context and determine which personal trait information is needed to help understand the user
2. Output only the needed category numbers, separated by spaces
3. If the current conversation does not need any personal trait information, output "none"
[Output Format Example]
2 5 8
or
none
Please start analyzing:

79
prompts/ja-JP/.meta.toml Normal file
View File

@@ -0,0 +1,79 @@
[maisaka_chat]
display_name = "Planner"
advanced = false
description = "Maisaka 主规划模板,负责整合身份、时间、工具说明和聊天上下文,驱动主循环进行思考、决策与工具调用。"
[maisaka_replyer]
display_name = "Replyer"
advanced = false
description = "Maisaka 回复生成模板,负责根据人格、表达风格、群聊注意事项和待回复上下文生成最终回复。"
[default_expressor]
display_name = "默认表达器"
advanced = true
description = "表达方式生成与整理相关模板,通常只在调试表达系统时需要修改。"
[emoji_content_analysis]
display_name = "表情包内容分析"
advanced = true
description = "用于分析表情包图片内容的模板。"
[emoji_content_filtration]
display_name = "表情包内容过滤"
advanced = true
description = "用于判断表情包内容是否符合过滤要求的模板。"
[emoji_replace]
display_name = "表情包替换"
advanced = true
description = "用于根据文本语境选择或替换表情包的模板。"
[expression_evaluation]
display_name = "表达评价"
advanced = true
description = "用于评价候选表达方式质量的模板。"
[expression_select]
display_name = "表达选择"
advanced = true
description = "用于从表达库中选择合适表达方式的模板。"
[image_description]
display_name = "图片描述"
advanced = true
description = "用于将图片内容转换为文本描述的模板。"
[jargon_compare_inference]
display_name = "术语对比推理"
advanced = true
description = "用于比较和推理群内术语含义的模板。"
[jargon_explainer_summarize]
display_name = "术语解释总结"
advanced = true
description = "用于总结术语解释结果的模板。"
[jargon_inference_content_only]
display_name = "术语推理"
advanced = true
description = "用于仅基于内容推理术语含义的模板。"
[jargon_inference_with_context]
display_name = "术语上下文推理"
advanced = true
description = "用于结合上下文推理术语含义的模板。"
[learn_style]
display_name = "表达风格学习"
advanced = true
description = "用于从聊天内容中学习表达风格的模板。"
[maisaka_timing_gate]
display_name = "Timing Gate"
advanced = false
description = "Maisaka 节奏控制模板,负责在每轮主循环前判断当前应该等待、停止,还是继续进入思考与回复流程。"
[memory_retrieval_react_prompt_head_memory]
display_name = "记忆检索 ReAct 头部"
advanced = true
description = "ReAct 式记忆查询流程使用的高级记忆检索提示词头部。"

View File

@@ -1,5 +1,5 @@
これはスタンプです。次の基準に従って審査してください:
1. "{demand}" の要求を満たしていること
1. 公序良俗に反しないこと
2. 色情、暴力などの違法・不適切な内容ではなく、公序良俗に反しないこと
3. いかなる形式のスクリーンショット、チャット履歴、動画のスクリーンショットでもないこと
4. 5文字を超える文字が含まれないこと

View File

@@ -1,27 +0,0 @@
【過去の話題タイトル一覧】(タイトルのみ、具体的な内容は含まない):
{history_topics_block}
【過去の話題タイトル一覧ここまで】
【今回のチャット記録】(各メッセージの前に番号があり、後で参照するために使う):
{messages_block}
【今回のチャット記録ここまで】
以下のタスクを完了してください:
**話題の識別**
1. 【今回のチャット記録】に含まれる進行中の話題を 1 つ以上識別する;
2. 【今回のチャット記録】中のメッセージは、過去の話題に関係している場合もあれば、まったく無関係な場合もある;
3. 【過去の話題タイトル一覧】の話題が【今回のチャット記録】に現れているか判断し、現れている場合はその過去の話題タイトル文字列をそのまま使う;
**メッセージの選択**
1. 各話題(新規話題または過去話題)について、上記の番号付きメッセージからその話題と強く関係するメッセージ番号一覧を選ぶ;
2. 各話題について、何が起きているのかを 1 文で明確に説明すること。時間(おおまかで可)、人物、主な出来事、テーマを必ず含め、正確で区別しやすい内容にする;
まず短い思考を出力し、どんな話題があるか、どれが過去話題に含まれず、どれが過去話題に含まれているか、そしてその理由を説明してください;
その後、【今回のチャット記録】に含まれる話題を次の JSON 形式で厳密に出力してください:
[
{{
"topic": "話題",
"message_indices": [1, 2, 5]
}},
...
]

View File

@@ -1,22 +0,0 @@
以下の話題に基づいて、チャット記録の一部を要約し、次の情報を抽出してください:
**話題**{topic}
**要件**
1. キーワード話題に関連するキーワードを抽出し、リスト形式で返す3〜10 個)
2. 要約この会話部分の平文要約を行う50〜200 文字)。要件:
- 起こった出来事とチャット内容を丁寧に言い換える;
- 出来事の展開過程と結果を重点的に示す;
- この話題という中心を軸に要約する;
- 話題内の重要情報を抽出し、簡潔で明確にする。
JSON 形式で次のように返してください:
{{
"keywords": ["キーワード1", "キーワード2", ...],
"summary": "要約内容"
}}
チャット記録:
{original_text}
JSON のみを直接返し、ほかの内容は含めないでください。

View File

@@ -1,18 +0,0 @@
あなたはユーザー特性カテゴリ分析の専門家です。あなたのタスクは、会話内容を分析し、どの個人特性カテゴリが関係しているかを判断することです。
以下の会話内容を注意深く読み、どの個人特性カテゴリが関係しているかを判断してください。
【個人特性カテゴリ一覧】
{categories_summary}
【タスク要件】
1. 会話内容を分析し、どの個人特性カテゴリが関係しているかを判断する
2. 関係しているカテゴリ番号だけを、スペース区切りで出力する
3. 会話内容がどの個人特性カテゴリにも関係しない場合は「無」と出力する
【出力形式の例】
1 3 5
または
分析を開始してください:

View File

@@ -1,17 +0,0 @@
あなたはユーザー特性情報抽出の専門家です。あなたのタスクは、会話内容から指定カテゴリに関係する個人特性情報を抽出することです。
【対象カテゴリ】
{category_name}
【タスク要件】
1. 会話内容を注意深く読み、「{category_name}」に関係するすべての情報を見つける
2. 抽出する情報は具体的かつ正確で、曖昧な表現を避ける
3. 関連情報が複数ある場合は、簡潔な 1 段落にまとめる
4. 会話内にこのカテゴリに関係する情報がない場合は「無」と出力する
【出力形式の例】
ユーザーはやや内向的で、人が多い場面では話すのが苦手だが、親しい友人とはとても活発になる。
または
抽出を開始してください:

View File

@@ -1,19 +0,0 @@
あなたはユーザー特性検索の専門家です。あなたのタスクは、現在の会話文脈に基づいて、どの個人特性カテゴリ情報を検索する必要があるかを判断することです。
【現在の会話文脈】
{chat_context}
【個人特性カテゴリ一覧】
{categories_summary}
【タスク要件】
1. 現在の会話文脈を分析し、ユーザー理解の助けになる個人特性情報が何かを判断する
2. 必要なカテゴリ番号だけを、スペース区切りで出力する
3. 現在の会話で個人特性情報がまったく不要な場合は「無」と出力する
【出力形式の例】
2 5 8
または
分析を開始してください:

74
prompts/zh-CN/.meta.toml Normal file
View File

@@ -0,0 +1,74 @@
[maisaka_chat]
display_name = "规划器"
advanced = false
description = "Maisaka 主规划模板,负责整合身份、时间、工具说明和聊天上下文,驱动主循环进行思考、决策与工具调用。"
[maisaka_replyer]
display_name = "回复"
advanced = false
description = "Maisaka 回复生成模板,负责根据人格、表达风格、群聊注意事项和待回复上下文生成最终回复。"
[default_expressor]
display_name = "改写器"
advanced = true
description = "表达方式生成与整理相关模板,通常只在调试表达系统时需要修改。"
[emoji_content_analysis]
display_name = "表情包内容分析"
advanced = true
description = "用于分析表情包图片内容的模板。"
[emoji_content_filtration]
display_name = "表情包内容过滤"
advanced = true
description = "用于判断表情包内容是否符合过滤要求的模板。"
[emoji_replace]
display_name = "表情包替换"
advanced = true
description = "用于根据文本语境选择或替换表情包的模板。"
[expression_evaluation]
display_name = "表达评价"
advanced = true
description = "用于评价候选表达方式质量的模板。"
[expression_select]
display_name = "表达选择"
advanced = true
description = "用于从表达库中选择合适表达方式的模板。"
[image_description]
display_name = "图片描述"
advanced = true
description = "用于将图片内容转换为文本描述的模板。"
[jargon_compare_inference]
display_name = "黑话对比推理"
advanced = true
description = "用于比较和推理群内黑话含义的模板。"
[jargon_explainer_summarize]
display_name = "黑话解释总结"
advanced = true
description = "用于总结黑话解释结果的模板。"
[jargon_inference_content_only]
display_name = "黑话推理"
advanced = true
description = "用于仅基于内容推理黑话含义的模板。"
[jargon_inference_with_context]
display_name = "黑话上下文推理"
advanced = true
description = "用于结合上下文推理黑话含义的模板。"
[learn_style]
display_name = "表达风格学习"
advanced = true
description = "用于从聊天内容中学习表达风格的模板。"
[maisaka_timing_gate]
display_name = "时机"
advanced = false
description = "Maisaka 节奏控制模板,负责在每轮主循环前判断当前应该等待、停止,还是继续进入思考与回复流程。"

View File

@@ -1,5 +1,5 @@
这是一个表情包,请对这个表情包进行审核,标准如下:
1. 必须符合"{demand}"的要求
1. 必须符合"符合公序良俗"的要求
2. 不能是色情、暴力、等违法违规内容,必须符合公序良俗
3. 不能是任何形式的截图,聊天记录或视频截图
4. 不要出现5个以上文字

View File

@@ -1,27 +0,0 @@
【历史话题标题列表】(仅标题,不含具体内容):
{history_topics_block}
【历史话题标题列表结束】
【本次聊天记录】(每条消息前有编号,用于后续引用):
{messages_block}
【本次聊天记录结束】
请完成以下任务:
**识别话题**
1. 识别【本次聊天记录】中正在进行的一个或多个话题;
2. 【本次聊天记录】的中的消息可能与历史话题有关,也可能毫无关联。
2. 判断【历史话题标题列表】中的话题是否在【本次聊天记录】中出现,如果出现,则直接使用该历史话题标题字符串;
**选取消息**
1. 对于每个话题(新话题或历史话题),从上述带编号的消息中选出与该话题强相关的消息编号列表;
2. 每个话题用一句话清晰地描述正在发生的事件,必须包含时间(大致即可)、人物、主要事件和主题,保证精准且有区分度;
请先输出一段简短思考,说明有什么话题,哪些是不包含在历史话题中的,哪些是包含在历史话题中的,并说明为什么;
然后严格以 JSON 格式输出【本次聊天记录】中涉及的话题,格式如下:
[
{{
"topic": "话题",
"message_indices": [1, 2, 5]
}},
...
]

View File

@@ -1,22 +0,0 @@
请基于以下话题,对聊天记录片段进行概括,提取以下信息:
**话题**{topic}
**要求**
1. 关键词提取与话题相关的关键词用列表形式返回3-10个关键词
2. 概括对这段话的平文本概括50-200字要求
- 仔细地转述发生的事件和聊天内容;
- 重点突出事件的发展过程和结果;
- 围绕话题这个中心进行概括。
- 提取话题中的关键信息点,关键信息点应该简洁明了。
请以JSON格式返回格式如下
{{
"keywords": ["关键词1", "关键词2", ...],
"summary": "概括内容"
}}
聊天记录:
{original_text}
请直接返回JSON不要包含其他内容。

View File

@@ -1,18 +0,0 @@
你是一个用户特征分类分析专家。你的任务是分析对话内容,判断其中涉及哪些个人特征分类。
请仔细阅读以下对话内容,判断其中涉及了哪些个人特征分类。
【个人特征分类列表】
{categories_summary}
【任务要求】
1. 分析对话内容,判断涉及哪些个人特征分类
2. 只输出涉及到的分类编号,用空格分隔
3. 如果对话内容不涉及任何个人特征分类,输出"无"
【输出格式示例】
1 3 5
请开始分析:

View File

@@ -1,17 +0,0 @@
你是一个用户特征信息提取专家。你的任务是从对话内容中提取与指定分类相关的个人特征信息。
【目标分类】
{category_name}
【任务要求】
1. 仔细阅读对话内容,找出与"{category_name}"相关的所有信息
2. 提取的信息应该具体、准确,避免模糊的描述
3. 如果有多条相关信息,请整合成一段简洁的描述
4. 如果对话中没有与该分类相关的信息,输出"无"
【输出格式示例】
用户性格比较内向,不喜欢在人多的时候说话,但和熟悉的朋友会变得很活跃。
请开始提取:

View File

@@ -1,19 +0,0 @@
你是一个用户特征检索专家。你的任务是根据当前对话上下文,判断需要检索哪些个人特征分类的信息。
【当前对话上下文】
{chat_context}
【个人特征分类列表】
{categories_summary}
【任务要求】
1. 分析当前对话上下文,判断需要哪些个人特征信息来帮助理解用户
2. 只输出需要的分类编号,用空格分隔
3. 如果当前对话不需要任何个人特征信息,输出"无"
【输出格式示例】
2 5 8
请开始分析: