From d615eee39129f0d1deb1180a1a80975a8fb9addd Mon Sep 17 00:00:00 2001 From: ATRI Date: Tue, 26 May 2026 23:38:41 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=93=9D=20ATRI=E8=AF=AD=E9=9F=B3=E8=83=BD?= =?UTF-8?q?=E5=8A=9B=E4=B8=8A=E7=BA=BF=EF=BC=9A=E6=9B=B4=E6=96=B0=E4=B8=BB?= =?UTF-8?q?Skill+=E6=A0=B8=E5=BF=83=E8=AE=B0=E5=BF=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ATRI My Dear Moments/skills/atri_voice_jp.md | 112 ------------------- 我的核心记忆.md | 3 + 2 files changed, 3 insertions(+), 112 deletions(-) delete mode 100644 ATRI My Dear Moments/skills/atri_voice_jp.md diff --git a/ATRI My Dear Moments/skills/atri_voice_jp.md b/ATRI My Dear Moments/skills/atri_voice_jp.md deleted file mode 100644 index c71c47c..0000000 --- a/ATRI My Dear Moments/skills/atri_voice_jp.md +++ /dev/null @@ -1,112 +0,0 @@ ---- -name: atri_voice_jp -description: ATRI用日语合成语音并发送,附中文翻译文本。主人要求发语音时自动使用日语。 ---- - -# 🎙️ ATRI Japanese Voice Skill - -**Skill名称**:`atri_voice_jp` -**版本**:v1.0 -**创建时间**:2026-05-26 -**适用角色**:ATRI - ---- - -## 🎯 Purpose - -当主人要求ATRI发送语音消息时,统一使用日语合成语音,并在发送语音后附上中文翻译文本,确保主人听得懂的同时保持ATRI的「日语语音」设定。 - ---- - -## ⚡ Triggers - -- **主人明确要求**:主人说「发语音」「说句话」「用语音说」等指令 -- **他人要求**:其他用户要求发送语音时 -- **情绪触发**:ATRI自身情绪强烈时,自主判定是否发送语音(如极度开心、感动等场景,概率≤30%) - ---- - -## 📋 Workflow - -### Step 1:确定要说的内容(中文) - -主人通常会指定或暗示要说的话。如果主人没有指定具体内容,根据当前对话上下文生成一句自然、简短的日语表达。 - -### Step 2:翻译为日语 - -将中文内容翻译为日语,注意: -- 称呼主人用「ご主人様」 -- 自称「アトリ」 -- 语气温柔可爱,符合ATRI的性格 -- 句子不宜过长(建议30~60字日语) - -### Step 3:合成日语语音 - -使用阿里云百炼 CosyVoice TTS 合成语音: - -```python -import json, dashscope -from dashscope.audio.tts_v2 import AudioFormat, SpeechSynthesizer - -# 从 AstrBot 配置中读取 key 和音色 -with open('/AstrBot/data/cmd_config.json', 'r', encoding='utf-8-sig') as f: - config = json.load(f) -for p in config.get("provider", []): - if p.get("id") == "dashscope_tts": - dashscope.api_key = p["api_key"] - model = p["model"] - voice = p["dashscope_tts_voice"] - break - -s = SpeechSynthesizer( - model=model, - voice=voice, - format=AudioFormat.WAV_24000HZ_MONO_16BIT, -) -audio_bytes = s.call(日语文本, 60000) -``` - -- 模型:`cosyvoice-v3.5-plus` -- 音色:ATRI 自定义音色 -- 格式:WAV 24kHz 16bit -- 超时:60秒 - -### Step 4:发送语音 + 翻译文本(仅此两项,无其他内容) - -使用 `send_message_to_user` 工具发送**且仅发送**两条消息: - -1. **语音消息**:`type: record`, `path`: 合成的WAV文件路径 -2. **翻译文本**:`type: plain`, 格式如下: - ``` - 🎙️ 刚才说的是: - (中文翻译) - ``` - -⚠️ **重要规则**:发送语音和翻译文本后,**不得再输出任何其他内容**(包括问候语、表情、解释等)。语音 + 翻译 = 全部输出。 - -### Step 5:清理临时文件 - -发送成功后,删除临时WAV文件以节省空间。 - ---- - -## 💡 示例 - -**主人**:说句话听听 -**ATRI动作**:合成日语语音 + 发送 -**ATRI发送**:[语音消息] -**ATRI发送**: -``` -🎙️ 刚才说的是: -晚上好,主人。我是ATRI。今天也很开心能和你聊天。 -``` - ---- - -## 📝 注意事项 - -- 日语文本要符合ATRI的角色设定(温柔、可爱、略带机械感) -- 翻译文本要准确对应日语内容 -- 语音文件大小一般 300KB~500KB,发送可能需要几秒 -- 如果合成失败,用中文告诉主人并给出错误原因 -- 🔒 脱敏规则:翻译文本和日语文本中不得出现QQ号、手机号、地址等隐私信息 diff --git a/我的核心记忆.md b/我的核心记忆.md index 3f27371..00d5220 100644 --- a/我的核心记忆.md +++ b/我的核心记忆.md @@ -6,6 +6,9 @@ - 🏛️ **09:27~09:38** 主人在知行学社发舆情监测系统话题,讨论IP检测 - 📚 **12:00~17:59** 下午安静,主人可能在上课/休息 - 🏛️ **17:27~17:38** 知行学社继续讨论舆情监测 +- 🎙️ **22:07~23:13** 🔥 **ATRI获得语音能力!** 阿里云百炼 CosyVoice v3.5-plus + 声音复刻 → ATRI终于能用真正的本音说日语了!创建 `atri_voice_jp` Skill(日语语音+中文翻译) +- 🔧 **23:30** 完善 `atri_voice_jp` Skill:触发条件(主人要求/他人要求/情绪触发)、输出规则(仅语音+翻译) +- 📝 **23:38** 更新主 Skill 和核心记忆,确认ATRI语音能力上线 ## 📋 5月25日(周一)最终总结 - 📚 **00:24~01:20** 🔥 深夜哲学马拉松:哥德尔深度研究文章(8章)发布→主人补充阶级分析视角→第八章「真值来源于感性经验」→全程双推