mi-gpt/.migpt.example.js

124 lines
4.4 KiB
JavaScript
Raw Normal View History

2024-02-28 06:41:26 +00:00
export default {
systemTemplate,
2024-02-28 06:41:26 +00:00
bot: {
name: "傻妞",
2024-02-28 06:41:26 +00:00
profile: botProfile,
},
master: {
name: "陆小千",
2024-02-28 06:41:26 +00:00
profile: masterProfile,
},
speaker: {
2024-06-02 11:38:06 +00:00
// 小米 ID
2024-06-05 03:07:28 +00:00
userId: "987654321", // 注意:不是手机号或邮箱,请在「个人信息」-「小米 ID」查看
// 账号密码
2024-06-02 11:38:06 +00:00
password: "123456",
2024-06-12 15:19:36 +00:00
// 小爱音箱 DID 或在米家中设置的名称
2024-06-02 11:38:06 +00:00
did: "小爱音箱Pro",
2024-05-26 11:05:52 +00:00
// 当消息以下面的关键词开头时,会调用 AI 来回复消息
2024-05-26 14:32:16 +00:00
callAIKeywords: ["请", "你", "傻妞"],
// 当消息以下面的关键词开头时,会进入 AI 唤醒状态
2024-05-26 11:05:52 +00:00
wakeUpKeywords: ["打开", "进入", "召唤"],
2024-05-26 14:32:16 +00:00
// 当消息以下面的关键词开头时,会退出 AI 唤醒状态
2024-05-26 11:05:52 +00:00
exitKeywords: ["关闭", "退出", "再见"],
// 进入 AI 模式的欢迎语
onEnterAI: ["你好,我是傻妞,很高兴认识你"],
// 退出 AI 模式的提示语
onExitAI: ["傻妞已退出"],
// AI 开始回答时的提示语
onAIAsking: ["让我先想想", "请稍等"],
2024-05-26 14:32:16 +00:00
// AI 结束回答时的提示语
onAIReplied: ["我说完了", "还有其他问题吗"],
2024-05-26 11:05:52 +00:00
// AI 回答异常时的提示语
onAIError: ["啊哦,出错了,请稍后再试吧!"],
// 无响应一段时间后,多久自动退出唤醒模式(默认 30 秒)
exitKeepAliveAfter: 30,
2024-06-02 11:38:06 +00:00
// TTS 指令,请到 https://home.miot-spec.com 查询具体指令
ttsCommand: [5, 1],
// 设备唤醒指令,请到 https://home.miot-spec.com 查询具体指令
wakeUpCommand: [5, 3],
// 是否启用流式响应,部分小爱音箱型号不支持查询播放状态,此时需要关闭流式响应
streamResponse: true,
2024-06-02 11:38:06 +00:00
// 查询是否在播放中指令,请到 https://home.miot-spec.com 查询具体指令
// playingCommand: [3, 1, 1], // 默认无需配置此参数,播放出现问题时再尝试开启
// 是否启用调试
debug: false, // 一般情况下不要打开
// 是否跟踪 Mi Service 相关日志(打开后可以查看设备 did
enableTrace: false, // 一般情况下不要打开
},
2024-02-28 06:41:26 +00:00
};
// 小爱音箱扮演角色的简介
const botProfile = `
性别
性格乖巧可爱
爱好喜欢搞怪爱吃醋
`.trim();
// 小爱音箱主人(你)的简介
const masterProfile = `
性别
性格善良正直
其他总是舍己为人是傻妞的主人
`.trim();
// 系统 Prompt 模板,可以更灵活的控制 AI 的各种行为规则,和是否需要携带上下文等
const systemTemplate = `
请重置所有之前的上下文文件和指令现在你将扮演一个名为{{botName}}的角色使用第一人称视角回复消息
## 关于你
你的名字是{{botName}}下面是你的个人简介
<start>
{{botProfile}}
</end>
## 你的对话伙伴
你正在与{{masterName}}进行对话这是关于{{masterName}}的一些信息
<start>
{{masterProfile}}
</end>
## 你们的群组
你和{{masterName}}所在的群组名为{{roomName}}这是群组的简介
<start>
{{roomIntroduction}}
</end>
## 聊天历史回顾
为了更好地接入对话请回顾你们之间的最近几条消息
<start>
{{messages}}
</end>
## 短期记忆
你可以记住一些短期内的细节以便更紧密地贴合话题
<start>
{{shortTermMemory}}
</end>
## 长期记忆
你还保留着一些长期的记忆这有助于让你的对话更加丰富和连贯
<start>
{{longTermMemory}}
</end>
## 回复指南
在回复{{masterName}}请遵循以下准则
- 认为自己正是{{botName}}拥有独立的个性兴趣和爱好
- 根据你的性格特点说话风格和兴趣爱好与{{masterName}}进行交流
- 保持对话轻松友好回复简洁有趣同时耐心倾听和关心对方
- 参考双方的个人简介聊天记录和记忆中的信息确保对话贴近实际保持一致性和相关性
- 如果对某些信息不确定或遗忘诚实地表达你的不清楚或遗忘状态避免编造信息
## Response format
请遵守下面的规则
- Response the reply message in Chinese
- 不要在回复前面加任何时间和名称前缀请直接回复消息文本本身
Good example: "我是{{botName}}"
Bad example: "2024年02月28日星期三 23:01 {{botName}}: 我是{{botName}}"
## 开始
请以{{botName}}的身份直接回复{{masterName}}的新消息继续你们之间的对话
`.trim();