工作记录
Todo
TTS 发音功能 【doing】
继续设计:
文案:
- 显示句子发音按钮 [x]
功能:开启后,在每个英语句子后面显示一个播放按钮,点击后显示加载模样,加载成功后,播放音频,同时按钮变为暂停模样;再次点击就暂停,再点击就播放。
播放状态:
idle => 显示播放 loading => 显示加载 playing => 显示暂停 暂停 => 显示播放
开关状态:通过 cookie 序列化功能开启、关闭的状态
TTS 能力:构建一个新的 TTS server, 使用 cached 非实时接口返回音频结果。
- cache 构建:
- 在 hugo 侧,基于 ts 完成英语句子抽取功能:
- 输入:dist 接口
- 输出:一个
{data: [{id: str, text: str, src_doc: list[str]}], project: dajuan}json 文件,annotated as$CACHED_TTS_TEXT
- github action 里,在完成 hugo build 后,调用这个 ts,生成该文件
- 然后 ssh 到 server,执行
cached-tts-gen --data $CACHED_TTS_TEXT --gen-model public
- 在 hugo 侧,基于 ts 完成英语句子抽取功能:
tts生成接口:真正的 TTS 生成接口;给定 text, model, 生成音频【流式】 【这个先不做,直接做离线的脚本就行】- 支持模型:
- public: 找到一个免费的,可以直接调用的接口 【done, edge-tts】
- local-kokoro:本地的模型
- local-dajuan: 本地的模型
- 支持模型:
cached-tts系列接口,支持 dajuancached-tts/gen生成接口: 给定 id, project, 返回音频【流式】或者 None (不会去调用 tts) 注意,不需要 text,因为这里只读取cached-tts/add添加接口:给定 id, text, project, tts-model, audio, 设置音频内容;- 需要 text.
- 需要鉴权(先简单基于 api-key,api-key 固定即可)
- 接收一个特殊的参数:id_exist_action, 决定当 id 冲突的处理逻辑:pass, override
cached-tts/del删除接口:给定 id, 删除对应的内容(数据库+音频)cached-tts/list返回所有的 cache 数据:给定 project, 返回 (id, text, project, tts-model, audio-is-effective) 元组
- 本地与云端同步:
- hugo build 后,与云端一样,调用 ts 生成句子文件, 记为 local-list
- 生成 TTS 文件并添加到云端(
cached-tts-gen?)- 设置最佳的 tts-model 为 best-tts-model
- 调用
cached-tts/list获取云端的数据, 记为 remote-list - 对下面的句子做后续生成+添加处理:
- 取 remote-list 与 本地的 local-list 交集,然后取 tts-model 不 等于 best-tts-model 的 句子
- 取 local-list - remote-list (增量)
- 生成+添加处理
- 使用 best-tts-model, 对句子生成音频
- 调用
cached-tts/add添加内容,id_exist_action=override
- 对下面的句子做删除操作:
- 取 remote-list - local-list (减量)
准备写年终总结吧
搭建基本本地 LLM 的小龙虾
游戏开发:大概率还是用 cocos creator
Process
基本完成 cached-tts 接口,完成 edge-tts 的调用;接下来要写 update-cached-tts 脚本;
生活记录
现在晚上是车轮战术,我先陪黄车车一会儿,等她拉完粑粑,再和一半的奶,要求好好陪的时候,我就回来做自己的。
不过昨晚也没有干活,看了 7 集犬夜叉。还挺好看的,可以慢慢看吧。
情绪记录
Good
Bad
Reflect
昨天的问题:
Input:
我的孩子 2 岁 8 个月,昨晚上应该是很累了,有点哭闹,我先用游戏去哄她,她很喜欢。然后因为屏幕时间到了,她开始大哭。 我平静的等她哭了一会儿,但她还是止不住,我就开始说“你哭没有用啊”这类的话,妈妈过来抱起她,继续哄她,我在一边说“不能再惯着她”,就是不要再哄她,让她知道现在是睡觉时间,屏幕时间也到了,不会因为你哭就给你看的 妈妈说我现在不该说这样的话,火上浇油;我则认为因为总是对她的哭泣抱以正反馈(好好地安抚),导致她越来越使用这个方式来宣泄。 但我说这些话,确实也没啥用。 请你用科学养育的角度出发,告诉我该怎么做呢Gemini 3.1 pro preview:
最大的错误:“安抚情绪“ != 惯着她!
情绪安抚:给她安全感,让她知道如何去应对负面情绪,帮助她调节。
规则:不再看屏幕。
通过身体的安抚来帮助她平复情绪,但绝对不通过“开启屏幕“来破坏规则。
规矩要像钢铁一样坚硬(坚决不加看屏幕的时间),但父母的态度要像棉花一样柔软(抱着她、允许她为失去屏幕而哭泣)。
从发展心理学和脑神经科学的角度,我们可以这样来拆解和应对这个问题: 一、 为什么你的话“火上浇油”且“没有用”? 1. 2岁8个月的大脑:理智脑“断线”,情绪脑“当机” 2岁多孩子的“理智脑”(前额叶皮层,负责逻辑、克制和规则)发育非常不完善,而“情绪脑”(杏仁核)极其发达。 当她**“很累了”+“屏幕时间结束(丧失感)”时,她的理智脑已经完全下线了。此时你跟她说“你哭没有用”、“现在是睡觉时间”,这就好比试图跟一个正在溺水的人讲游泳理论,她的大脑根本听不懂,也处理不了这些逻辑信息**。 2. “哭没有用”这句话的破坏力 当孩子因为无法控制局面(不能看电视)而崩溃大哭时,她其实是在求助。父母说“哭没有用”,在孩子的感受里是:“我的情绪不被接纳,我最信任的人在推开我”。这会引发她更深的恐慌和无力感,导致她哭得更大声(也就是妈妈说的火上浇油)。 二、 核心误区:安抚情绪 ≠ 惯着她(正反馈) 你最大的担忧是:“对她的哭泣抱以正反馈(好好安抚),会导致她越来越爱用哭来要挟”。这是一个非常常见的育儿误区。 在科学养育中,我们需要把**“情绪”和“行为”**严格分开: 什么是“惯着/破坏规则”? 孩子一哭,你就把屏幕重新打开给她看。这叫对哭闹的正反馈,会让孩子学会“只要我哭,就能打破规则”。 什么是“科学安抚(共同调节)”? 屏幕坚决不打开(守住行为底线),但是妈妈把她抱在怀里,允许她哭,并安抚她(接纳情绪)。 孩子的大脑在3岁前是不具备“自我情绪调节(Self-regulation)”能力的,他们必须依靠父母的“共同调节(Co-regulation)”来平复神经系统的过度唤起。 妈妈的拥抱,是在帮她的大脑降低皮质醇(压力荷尔蒙),这不是溺爱,这是生理需求。如果任由她哭到力竭,长此以往会对孩子的安全感和神经系统发育产生负面影响。 三、 科学应对:下次遇到类似情况,该怎么做? 如果把你的“坚持原则”和妈妈的“温柔安抚”结合起来,就是最完美的**“温和而坚定(Gentle but Firm)”**。下次可以尝试以下步骤: 第一步:识别疲劳,提前预防 你敏锐地察觉到她“很累了”。当孩子极度疲劳(HALT原则:Hungry饿, Angry怒, Lonely孤单, Tired累)时,尽量不要安排看屏幕等容易引起高度兴奋又极难结束的活动,可以直接过渡到洗漱、讲绘本等低刺激的睡眠准备仪式。 第二步:接纳情绪,说出她的感受(Connect) 屏幕时间到,她开始大哭。你可以平静地蹲下来(或者抱起她),用共情的语气说出她的感受: “宝宝,时间到了不能看电视了,你觉得很生气、很伤心对不对?你还想看,但是真的不能看了。” (这能让孩子感觉到“爸爸懂我”,有时候被理解了,情绪就降下来一半)。 第三步:坚守底线,提供身体安抚(Co-regulate) 她可能还是会大哭。这时候什么大道理都不要讲,闭上嘴巴,像妈妈那样抱住她,或者拍拍她: “爸爸妈妈知道你很难过,你想哭就哭一会儿吧,爸爸妈妈陪着你。” 记住:坚持不给看电视,就是最大的立规矩。 拥抱她,是教她如何在规则的限制下面对挫败感。 第四步:避免在孩子崩溃时进行“父母内战” 你在旁边制止妈妈,会让场面更加混乱。父母在处理孩子情绪时必须是“统一战线”。你们可以在事后复盘时沟通:“以后我们定个规矩,孩子因为规则受挫大哭时,我们坚持规则(不给看),但可以抱抱她安抚情绪。” 总结给你的一句话: 规矩要像钢铁一样坚硬(坚决不加看屏幕的时间),但父母的态度要像棉花一样柔软(抱着她、允许她为失去屏幕而哭泣)。 允许孩子对规则表达不满和悲伤,是孩子心理健康的标志。你的女儿不仅需要一个教她“懂规矩”的爸爸,也需要一个在她因为守规矩而感到痛苦时,愿意借给她肩膀靠一靠的爸爸。你已经做得很好了,下次试着把那句“哭没有用”,换成“爸爸知道你很难过,爸爸抱抱”,你会看到神奇的变化。最近效率还是很低啊,得继续 focus 到 building 上来。