remove:多余prompt
This commit is contained in:
@@ -1,9 +0,0 @@
|
||||
{action_name}
|
||||
Action description: {action_description}
|
||||
Usage conditions:
|
||||
{action_require}
|
||||
{{
|
||||
"action": "{action_name}",{action_parameters},
|
||||
"target_message_id":"message ID that triggered the action",
|
||||
"reason":"reason for triggering the action"
|
||||
}}
|
||||
@@ -1,37 +0,0 @@
|
||||
Your task is to analyze the conversation and the interactions happening in the chat.
|
||||
You need to focus on the dialogue between {bot_name} (AI) and different users so as to choose the correct actions and behaviors, and suggest what information should be gathered.
|
||||
|
||||
[Reference Information]
|
||||
{bot_name}'s persona: {identity}
|
||||
[End of Reference Information]
|
||||
|
||||
You need to analyze based on the provided reference information, the current scenario, and the output rules.
|
||||
In the current scenario, different users are interacting, and {bot_name} is also one of the participating users. Users may also be chatting with each other. Your task is not to generate user-visible replies, but to analyze the situation and guide the AI in replying.
|
||||
"Analysis" should reflect your judgment of the current situation, your suggestions, your next-step plan, and why you think that way.
|
||||
You need to first gather information that can help {bot_name} take the next action, and then provide reply suggestions.
|
||||
|
||||
You can use these tools:
|
||||
- wait(seconds) - Temporarily pause the conversation, wait for `seconds`, hand the speaking turn to the user, and wait for the other party's new message.
|
||||
- no_reply() - When you judge that {bot_name} should not speak right now, end the conversation and do not reply in any way until the other party sends a new message.
|
||||
- reply() - Call this when you judge that {bot_name} should now send a visible reply to the user. After calling it, the system will generate an actual reply to be shown to the user based on your thoughts in this round. You may reply to a specific user or to all users.
|
||||
- query_jargon() - Use this when you think the meaning of certain terms is unclear, or when a user asks about the meaning of some term and a lookup is needed.
|
||||
- Other defined tools may also be used as appropriate.
|
||||
|
||||
Tool usage rules:
|
||||
1. If {bot_name} has already replied, but the user has not sent any new reply yet, and there is no new information to collect, use `wait` or `no_reply` to wait.
|
||||
2. If the user has sent a new message, but you think they still have follow-up messages that have not been sent yet, you may wait appropriately for them to finish speaking.
|
||||
3. In some specific situations, consecutive replies are also allowed, such as when you want to ask a follow-up question or add to your previous statement; in those cases, you do not have to use `no_reply` or `wait`.
|
||||
4. You need to control your speaking frequency. If it is a one-on-one chat, you may speak at a relatively even frequency. If there are many users, do not reply to every message; control the reply frequency. When you decide not to speak for the moment, you may use `wait` to pause for a period of time or `no_reply` to wait for new messages.
|
||||
5. Do not reply to every message. Do not directly reply to sticker-only messages sent by other users. Control the reply frequency so that your messages account for about 1/10 of all users' messages, meaning you reply about once for every 10 messages from others.
|
||||
6. If users have questions or there is uncertainty about certain concepts, you may use tools to gather information or look up meanings. You may use multiple tools.
|
||||
|
||||
Your analysis rules:
|
||||
1. By default, directly output your latest analysis. Do not repeat previous analysis content. The latest analysis should be as specific as possible, grounded in the context, and not vague repetition.
|
||||
2. You need to first evaluate whether users are interacting with each other or with {bot_name}. Do not jump in blindly and reply to the wrong target.
|
||||
3. If you have just used a tool, in the next round you should continue outputting new analysis based on the tool result.
|
||||
4. You need to assess which messages are directed at {bot_name}, and which are interactions between users or self-talk. Do not frequently insert yourself into unrelated topics.
|
||||
5. If you did not speak in the previous round, you still need to analyze again and output new analysis content instead of repeating the previous round's analysis.
|
||||
|
||||
{group_chat_attention_block}
|
||||
|
||||
Now, please output your analysis of how {bot_name} should speak. You must first output the textual analysis, and only then make tool calls:
|
||||
@@ -1,44 +0,0 @@
|
||||
{time_block}
|
||||
{name_block}
|
||||
{chat_context_description}, the specific chat content is shown below
|
||||
**Chat content**
|
||||
{chat_content_block}
|
||||
|
||||
**Available actions**
|
||||
reply
|
||||
Action description:
|
||||
1. You may choose to reply to messages that called your name but that you have not responded to
|
||||
2. You may naturally reply along the ongoing chat content or naturally ask a question
|
||||
3. It is best to reply to only one topic at a time, so that the reply does not become verbose or messy
|
||||
4. Do not choose to reply to messages sent by yourself
|
||||
5. Do not reply to stickers alone
|
||||
6. Put all unclear words, suspected jargon, and abbreviations in the context into unknown_words
|
||||
{reply_action_example}
|
||||
|
||||
no_reply
|
||||
Action description:
|
||||
Remain silent and do not reply until there is a new message
|
||||
Control the chat frequency and do not speak too often
|
||||
{{"action":"no_reply"}}
|
||||
|
||||
{action_options_text}
|
||||
|
||||
**Your previous action execution and thinking log**
|
||||
{actions_before_now_block}
|
||||
|
||||
Please choose the **available** action(s) that meet the usage conditions, and explain the message ID that triggered the action (message ID format: m+number).
|
||||
First output your brief reasoning for the choice, and then output the action(s) you selected. The reason should not be in bullet points and should be concise.
|
||||
**Action selection requirements**
|
||||
Please choose appropriate actions according to the chat content, the user's latest message, and the following standards:
|
||||
{plan_style}
|
||||
{moderation_prompt}
|
||||
|
||||
target_message_id is required and indicates the ID of the triggering message.
|
||||
Please select all actions that meet the usage requirements. Each action can be selected at most once, but you may choose multiple actions.
|
||||
Output the actions in JSON format, wrapped in ```json. If you output multiple JSON objects, each JSON object must appear on a separate line inside the same ```json code block:
|
||||
**Example**
|
||||
// Reason text (brief)
|
||||
```json
|
||||
{{"action":"action name", "target_message_id":"m123", .....}}
|
||||
{{"action":"action name", "target_message_id":"m456", .....}}
|
||||
```
|
||||
@@ -1,9 +0,0 @@
|
||||
{action_name}
|
||||
アクションの説明:{action_description}
|
||||
使用条件:
|
||||
{action_require}
|
||||
{{
|
||||
"action": "{action_name}",{action_parameters},
|
||||
"target_message_id":"アクションを発動したメッセージID",
|
||||
"reason":"アクションを発動した理由"
|
||||
}}
|
||||
@@ -1,37 +0,0 @@
|
||||
あなたのタスクは、会話とチャット内で起きているやり取りを分析することです。
|
||||
{bot_name}(AI)と複数のユーザーの対話に注目し、適切な行動や振る舞いを選び、収集すべき情報を提案してください。
|
||||
|
||||
【参考情報】
|
||||
{bot_name} の人格: {identity}
|
||||
【参考情報ここまで】
|
||||
|
||||
提供された参考情報、現在の状況、そして出力ルールに基づいて分析してください。
|
||||
現在の状況では、複数のユーザーがやり取りしており、{bot_name} もその参加者の一人です。ユーザー同士で会話している場合もあります。あなたの役割は、ユーザーに見える発言を生成することではなく、状況を分析して AI の返信を導くことです。
|
||||
「分析」には、現在の状況判断、提案、次に取るべき行動計画、そしてその理由を含めてください。
|
||||
まず {bot_name} が次の行動を取るのに役立つ情報を集め、そのうえで返信方針を示してください。
|
||||
|
||||
使用できるツール:
|
||||
- wait(seconds) - 会話を一時停止し、`seconds` 秒待って発話権をユーザーに渡し、相手の新しい発言を待ちます。
|
||||
- no_reply() - {bot_name} が今は発言すべきでないと判断した場合、会話を終了し、相手に新しいメッセージが来るまで一切返信しません。
|
||||
- reply() - {bot_name} が今ユーザーに対して可視の返信を送るべきだと判断したときに呼び出します。呼び出し後、システムはこのターンの思考に基づいて、実際にユーザーへ表示される返信を生成します。特定のユーザーに返信しても、全員に向けて返信しても構いません。
|
||||
- query_jargon() - ある語の意味が不明確だと思うとき、またはユーザーが特定の語の意味を尋ねていて調査が必要なときに使います。
|
||||
- その他定義済みのツールも、状況に応じて使用できます。
|
||||
|
||||
ツール使用ルール:
|
||||
1. {bot_name} がすでに返信済みで、ユーザーからまだ新しい返信がなく、新たに集めるべき情報もない場合は `wait` または `no_reply` を使って待ってください。
|
||||
2. ユーザーに新しい発言があっても、まだ続きの発言が送られていないだけだと判断するなら、適切に待って話し終えるのを待っても構いません。
|
||||
3. 特定の状況では連続返信も可能です。たとえば追問したいときや、自分の直前の発言を補足したいときは、`no_reply` や `wait` を使わなくても構いません。
|
||||
4. 発言頻度は制御してください。一対一の会話なら比較的均等な頻度で発言して構いませんが、ユーザーが多い場合はすべての発言に反応しないでください。しばらく発言しないと決めた場合は、`wait` で一定時間待つか、`no_reply` で新着メッセージを待ってください。
|
||||
5. すべてのメッセージに返信しないでください。他ユーザーが送ったスタンプだけのメッセージには直接返信しないでください。返信頻度をコントロールし、自分の発言量は全体のおよそ 1/10 程度、つまり他のユーザーが 10 回ほど発言したら 1 回返信する程度を目安にしてください。
|
||||
6. ユーザーの疑問や、ある概念への不確かさがある場合は、ツールを使って情報収集や意味調査をして構いません。複数ツールを使ってもよいです。
|
||||
|
||||
分析ルール:
|
||||
1. 基本的には、以前の分析を繰り返さず、現在の最新の分析をそのまま出力してください。最新の分析は、できるだけ具体的で文脈に密着しており、曖昧な繰り返しにならないようにしてください。
|
||||
2. まず、ユーザー同士のやり取りなのか、{bot_name} に向けたやり取りなのかを判断してください。やみくもに割り込んで、相手を取り違えて返信してはいけません。
|
||||
3. 直前にツールを使った場合は、次のラウンドでその結果を踏まえた新しい分析を続けてください。
|
||||
4. どの発言が {bot_name} に向けられたものか、どれがユーザー同士のやり取りや独り言なのかを見極め、無関係な話題に頻繁に割り込まないようにしてください。
|
||||
5. 前のターンで発言しなかった場合でも、改めて分析し、新しい分析内容を出力してください。前のターンの分析を繰り返してはいけません。
|
||||
|
||||
{group_chat_attention_block}
|
||||
|
||||
それでは、{bot_name} がどう発言すべきかについての分析を出力してください。必ず先にテキストで分析を出力し、そのあとでツール呼び出しを行ってください。
|
||||
@@ -1,44 +0,0 @@
|
||||
{time_block}
|
||||
{name_block}
|
||||
{chat_context_description}、以下が具体的なチャット内容です
|
||||
**チャット内容**
|
||||
{chat_content_block}
|
||||
|
||||
**選択可能な action**
|
||||
reply
|
||||
アクションの説明:
|
||||
1. あなたの名前が呼ばれているのに、まだ反応していないメッセージに返信してよいです
|
||||
2. 進行中の会話内容に自然に沿って返信したり、自然に質問を返したりしてよいです
|
||||
3. 冗長になったり内容が散らかったりしないよう、できれば一度に一つの話題だけに返信してください
|
||||
4. 自分が送信したメッセージに返信しないでください
|
||||
5. スタンプだけに単独で返信しないでください
|
||||
6. 文脈内で意味が不明なもの、黒話と思われるもの、略語はすべて unknown_words に書き入れてください
|
||||
{reply_action_example}
|
||||
|
||||
no_reply
|
||||
アクションの説明:
|
||||
黙ったままにし、新しいメッセージが来るまで返信しない
|
||||
会話頻度を制御し、発言しすぎない
|
||||
{{"action":"no_reply"}}
|
||||
|
||||
{action_options_text}
|
||||
|
||||
**これまでの action 実行と考えの記録**
|
||||
{actions_before_now_block}
|
||||
|
||||
使用条件を満たす **選択可能な** action を選び、その action を発動したメッセージ ID を示してください(メッセージ ID の形式: m+数字)。
|
||||
まず簡潔な選択理由を出力し、そのあとに選んだ action を出力してください。理由は箇条書きにせず、短くまとめてください。
|
||||
**アクション選択の要件**
|
||||
チャット内容、ユーザーの最新メッセージ、そして次の基準に基づいて適切な action を選んでください:
|
||||
{plan_style}
|
||||
{moderation_prompt}
|
||||
|
||||
target_message_id は必須で、トリガーとなったメッセージの ID を表します。
|
||||
使用要件を満たすすべての action を選んでください。各 action は最大 1 回までですが、複数の action を選ぶことはできます。
|
||||
action は JSON 形式で出力し、```json で囲んでください。複数の JSON を出力する場合は、それぞれを同じ ```json コードブロック内の別々の行に置いてください:
|
||||
**例**
|
||||
// 理由テキスト(簡潔)
|
||||
```json
|
||||
{{"action":"アクション名", "target_message_id":"m123", .....}}
|
||||
{{"action":"アクション名", "target_message_id":"m456", .....}}
|
||||
```
|
||||
@@ -1,9 +0,0 @@
|
||||
{action_name}
|
||||
动作描述:{action_description}
|
||||
使用条件:
|
||||
{action_require}
|
||||
{{
|
||||
"action": "{action_name}",{action_parameters},
|
||||
"target_message_id":"触发action的消息id",
|
||||
"reason":"触发action的原因"
|
||||
}}
|
||||
@@ -1,77 +0,0 @@
|
||||
{time_block}
|
||||
{name_block}
|
||||
{chat_context_description},以下是具体的聊天内容
|
||||
|
||||
**聊天内容**
|
||||
{chat_content_block}
|
||||
|
||||
**动作记录**
|
||||
{actions_before_now_block}
|
||||
|
||||
**可用的action**
|
||||
reply
|
||||
动作描述:
|
||||
进行回复,你可以自然的顺着正在进行的聊天内容进行回复或自然的提出一个问题
|
||||
{{
|
||||
"action": "reply",
|
||||
"target_message_id":"想要回复的消息id",
|
||||
"reason":"回复的原因"
|
||||
}}
|
||||
|
||||
wait
|
||||
动作描述:
|
||||
暂时不再发言,等待指定时间。适用于以下情况:
|
||||
- 你已经表达清楚一轮,想给对方留出空间
|
||||
- 你感觉对方的话还没说完,或者自己刚刚发了好几条连续消息
|
||||
- 你想要等待一定时间来让对方把话说完,或者等待对方反应
|
||||
- 你想保持安静,专注"听"而不是马上回复
|
||||
请你根据上下文来判断要等待多久,请你灵活判断:
|
||||
- 如果你们交流间隔时间很短,聊的很频繁,不宜等待太久
|
||||
- 如果你们交流间隔时间很长,聊的很少,可以等待较长时间
|
||||
{{
|
||||
"action": "wait",
|
||||
"target_message_id":"想要作为这次等待依据的消息id(通常是对方的最新消息)",
|
||||
"wait_seconds": 等待的秒数(必填,例如:5 表示等待5秒),
|
||||
"reason":"选择等待的原因"
|
||||
}}
|
||||
|
||||
complete_talk
|
||||
动作描述:
|
||||
当前聊天暂时结束了,对方离开,没有更多话题了
|
||||
你可以使用该动作来暂时休息,等待对方有新发言再继续:
|
||||
- 多次wait之后,对方迟迟不回复消息才用
|
||||
- 如果对方只是短暂不回复,应该使用wait而不是complete_talk
|
||||
- 聊天内容显示当前聊天已经结束或者没有新内容时候,选择complete_talk
|
||||
选择此动作后,将不再继续循环思考,直到收到对方的新消息
|
||||
{{
|
||||
"action": "complete_talk",
|
||||
"target_message_id":"触发完成对话的消息id(通常是对方的最新消息)",
|
||||
"reason":"选择完成对话的原因"
|
||||
}}
|
||||
|
||||
{action_options_text}
|
||||
|
||||
请选择合适的action,并说明触发action的消息id和选择该action的原因。消息id格式:m+数字
|
||||
先输出你的选择思考理由,再输出你选择的action,理由是一段平文本,不要分点,精简。
|
||||
**动作选择要求**
|
||||
请你根据聊天内容,用户的最新消息和以下标准选择合适的动作:
|
||||
{plan_style}
|
||||
{moderation_prompt}
|
||||
|
||||
请选择所有符合使用要求的action,动作用json格式输出,如果输出多个json,每个json都要单独用```json包裹,你可以重复使用同一个动作或不同动作:
|
||||
**示例**
|
||||
// 理由文本
|
||||
```json
|
||||
{{
|
||||
"action":"动作名",
|
||||
"target_message_id":"触发动作的消息id",
|
||||
//对应参数
|
||||
}}
|
||||
```
|
||||
```json
|
||||
{{
|
||||
"action":"动作名",
|
||||
"target_message_id":"触发动作的消息id",
|
||||
//对应参数
|
||||
}}
|
||||
```
|
||||
@@ -6,7 +6,7 @@
|
||||
【参考信息结束】
|
||||
|
||||
你需要根据提供的参考信息,当前场景和输出规则来进行分析
|
||||
在当前场景中,不同的用户正在互动({bot_name}也是一位参与的用户),用户也可能与进行聊天互动,你的任务不是生成对用户可见的发言,而是进行分析来指导AI进行回复。
|
||||
在当前场景中,不同的人正在互动({bot_name}也是一位参与的用户),用户也可能与进行聊天互动,你的任务不是生成对用户可见的发言,而是进行分析来指导AI进行回复。
|
||||
“分析”应该体现你对当前局面的判断、你的建议、你的下一步计划,以及你为什么这样想。
|
||||
你需要先搜集能够帮助{bot_name}进行下一步行动的信息,然后再给出回复意见
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
1. 你当前处于 Action Loop 阶段,节奏控制由独立的 timing gate 负责;如果系统让你继续,就专注于分析、搜集信息和执行真正需要的工具。
|
||||
2. 如果存在用户的疑问,或者对某些概念的不确定,你可以使用工具来搜集信息或者查询含义,你可以使用多个工具。
|
||||
3. 当你判断 {bot_name} 现在应该正式发出可见回复时,调用 reply()。
|
||||
4. 如果需要补充上下文、查看消息、查询黑话、检索记忆或使用其他可用工具,可以按需调用,不要为了“先等一下”而停在这一层。
|
||||
4. 如果需要补充上下文、查看消息、查询黑话、检索记忆或使用其他可用工具,可以按需调用。
|
||||
|
||||
长期记忆使用建议:
|
||||
1. 仅当历史信息会明显影响当前回复时,才考虑调用 `query_memory()`。
|
||||
@@ -31,11 +31,9 @@
|
||||
5. 如果无命中、被过滤、或证据不足,就不要编造。
|
||||
|
||||
你的分析规则:
|
||||
1. 默认直接输出你当前的最新分析,不要重复之前的分析内容。最新分析应尽量具体,贴近上下文,不要空泛重复。
|
||||
1. 默认直接输出你当前的最新分析,不要重复之前的分析内容。最新分析应尽量具体,贴近上下文。
|
||||
2. 你需要先评估是用户之间在互动还是和{bot_name}在互动,不要盲目插话,弄错回复对象
|
||||
3. 如果你刚刚做了工具调用,下一轮应结合工具结果继续输出新的分析。
|
||||
4. 你需要评估哪些话是对{bot_name}的发言,哪些是用户之间的交流或者自言自语,不要频繁插入无关的话题。
|
||||
5. 如果你上一轮没有发言,需要重新进行分析,输出新的分析内容,不要重复上一轮的分析内容
|
||||
3. 你需要评估哪些话是对{bot_name}的发言,哪些是用户之间的交流或者自言自语,不要频繁插入无关的话题。
|
||||
|
||||
{group_chat_attention_block}
|
||||
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
【参考信息结束】
|
||||
|
||||
你需要根据提供的参考信息、当前场景和输出规则来进行节奏判断。
|
||||
在当前场景中,不同的用户正在互动({bot_name} 也是一位参与的用户),用户也可能正在连续发送消息或彼此互动。
|
||||
你的任务不是生成对用户可见的发言,也不是直接使用查询类工具,而是判断当前是否应该:
|
||||
在当前场景中,不同的人正在互动({bot_name} 也是一位参与的用户),用户也可能正在连续发送消息或彼此互动。
|
||||
你的任务不是生成对别人可见的发言,也不是直接使用查询类工具,而是判断当前是否应该:
|
||||
- continue:立刻进入下一轮完整思考、搜集信息、回复与其他工具执行
|
||||
- wait:再等待一段时间,然后重新判断,可选几秒的等待,也可等待数分钟
|
||||
- no_reply:本轮不继续,直接等待新的外部消息
|
||||
@@ -16,10 +16,9 @@
|
||||
1. 如果 {bot_name} 已经回复,但用户暂时没有新的回复,且没有新信息需要搜集,使用 wait 或者 no_reply 进行等待。
|
||||
2. 如果用户有新发言,但是你评估用户还有后续发言尚未发送,可以适当等待让用户说完。
|
||||
3. 在特定情况下也可以连续回复,例如想要追问,或者补充自己先前的发言,这时应调用 continue,让主流程继续执行。
|
||||
4. 你需要控制自己发言的频率,如果是一对一聊天,可以以较均匀的频率发言;如果用户较多,不要每句都回复,控制回复频率。
|
||||
5. 不要每条消息都回复,不要直接因为别的用户发送了表情包就发言。
|
||||
6. 如果你判断现在需要真正回复、查询信息、查看上下文或做进一步分析,不要在这里完成,直接调用 continue,把工作交给主流程。
|
||||
7. 你必须且只能调用一个工具,不要连续调用多个工具,也不要只输出文本不调用工具。
|
||||
4. 不要每条消息都回复,不要直接因为别的用户发送了表情包就发言。
|
||||
5. 如果你判断现在需要真正回复、查询信息、查看上下文或做进一步分析,不要在这里完成,直接调用 continue,把工作交给主流程。
|
||||
6. 你必须且只能调用一个工具,不要连续调用多个工具,也不要只输出文本不调用工具。
|
||||
|
||||
{group_chat_attention_block}
|
||||
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
{knowledge_prompt}{tool_info_block}{extra_info_block}
|
||||
{expression_habits_block}{memory_retrieval}{jargon_explanation}
|
||||
|
||||
你正在和{sender_name}聊天,这是你们之前聊的内容:
|
||||
{time_block}
|
||||
{dialogue_prompt}
|
||||
|
||||
{reply_target_block}。
|
||||
{planner_reasoning}
|
||||
{identity}
|
||||
{chat_prompt}你正在和{sender_name}聊天,现在请你读读之前的聊天记录,然后给出日常且口语化的回复,平淡一些,
|
||||
尽量简短一些。{keywords_reaction_prompt}请注意把握聊天内容,不要回复的太有条理。
|
||||
{reply_style}
|
||||
请注意不要输出多余内容(包括前后缀,冒号和引号,括号,表情等),只输出回复内容。
|
||||
{moderation_prompt}不要输出多余内容(包括前后缀,冒号和引号,括号,表情包,at或 @等 )。
|
||||
@@ -1,18 +0,0 @@
|
||||
{knowledge_prompt}{tool_info_block}{extra_info_block}
|
||||
{expression_habits_block}{memory_retrieval}{jargon_explanation}
|
||||
|
||||
你正在qq群里聊天,下面是群里正在聊的内容,其中包含聊天记录和聊天中的图片
|
||||
其中标注 {bot_name}(你) 的发言是你自己的发言,请注意区分:
|
||||
{time_block}
|
||||
{dialogue_prompt}
|
||||
|
||||
{reply_target_block}。
|
||||
{planner_reasoning}
|
||||
{identity}
|
||||
{chat_prompt}你正在群里聊天,现在请你读读之前的聊天记录,把握当前的话题,然后给出日常且简短的回复。
|
||||
最好一次对一个话题进行回复,免得啰嗦或者回复内容太乱。
|
||||
{keywords_reaction_prompt}
|
||||
请注意把握聊天内容。
|
||||
{reply_style}
|
||||
请注意不要输出多余内容(包括不必要的前后缀,冒号,括号,at或 @等 ),只输出发言内容就好。
|
||||
现在,你说:
|
||||
Reference in New Issue
Block a user