新手爸妈顾问
第一次当爸妈,最难的不是"没知识",而是信息太碎、心里没底:宝宝这个月龄该会什么?今天吃了几次奶、睡了多久算多算少?这几个症状要不要跑医院?
这个技能只干三件机械活:对照里程碑、汇总照护记录、匹配红旗信号。它把网上零散的说法收拢成几张固定的参考表,逐条对照给提示——它不是医生,也不替代医生。
> 先说边界(很重要):本技能不做任何医疗诊断、不判断宝宝是否生病、不推荐任何药物与剂量。红旗信号表是通用示例,不能穷尽所有情况,未命中 ≠ 安全。里程碑与参考区间都是通用参考,个体差异很大,一切以儿科医生 / 儿保现场判断为准。如出现异常,请立即就医。
何时使用
| 用户说法 | 是否触发 |
|---|---|
| 帮我对一下宝宝这个月龄会什么 / 该会什么 | 是 |
| 6 个月还不会独坐,正常吗 / 要不要再看看 | 是 |
| 帮我汇总一下今天喂养、睡眠、尿布的次数 | 是 |
| 这些记录对照一下常见范围,是不是偏多 / 偏少 | 是 |
| 宝宝发烧 38.5 还抽搐了,帮我把情况整理一下 | 是 |
| 做个就医前信息卡 / 整理跟医生要说的话 | 是 |
| 判断一下宝宝是不是生病了 / 这是什么病 | 否(本技能不做诊断、不判断是否生病) |
| 该吃什么药、吃多少剂量 / 要不要吃退烧药 | 否(本技能不推荐任何药物与剂量) |
| 帮我解读这张化验单 / 片子 | 否(超出本技能范围) |
输入
一份本地 JSON 文件(UTF-8),结构如下:
{
"baby": {"age_months": 6, "weight_kg": 7.5},
"records": {"feed_count": 8, "feed_ml_total": 720, "sleep_hours": 13.5, "diaper_count": 9, "temp_c": 37.2},
"symptoms": [],
"milestone_checks": {"翻身": true, "独坐": false, "认人": true}
}
| 字段 | 含义 | 约束 |
|---|---|---|
baby.age_months |
月龄 | 必填(缺失 → 退出码 2);数字、非负 |
baby.weight_kg |
体重(kg) | 可选,仅打印在信息卡上 |
records.feed_count |
每日喂养次数 | 可选 |
records.feed_ml_total |
每日奶量合计(ml) | 可选 |
records.sleep_hours |
每日睡眠时长(小时) | 可选 |
records.diaper_count |
每日尿布次数 | 可选 |
records.temp_c |
体温(℃) | 可选;baby.temp_c 亦可 |
symptoms |
症状字符串列表 | 可选 |
notes |
补充备注(字符串或字符串列表) | 可选,参与红旗匹配 |
milestone_checks |
里程碑名 → 是否达成(布尔) | 可选,键需匹配内置表名 |
子命令
milestones · 发育里程碑对照
python3 scripts/newborn_care_assistant.py milestones --input baby.json
python3 scripts/newborn_care_assistant.py milestones --input baby.json --json
按 age_months 定位参考段,对 milestone_checks 里的每一项逐条判定:
该阶段内常见——该项已达;建议多观察——未达,且延迟不超过参考段结束月龄 3 个月;建议咨询儿科医生——未达,且延迟超过 3 个月;未收录,建议咨询儿保——该项名不在内置里程碑表(warn,不升级)。
summary · 照护记录汇总
python3 scripts/newborn_care_assistant.py summary --input baby.json
python3 scripts/newborn_care_assistant.py summary --input baby.json --json
把喂养次数、奶量合计、睡眠时长、尿布次数与所在年龄段的参考区间对照,逐项给 在常见范围 / 偏低 / 偏高(缺失时给 未提供)。只说数值区间,不做健康判断。
redflags · 红旗信号匹配 + 就医前信息卡
python3 scripts/newborn_care_assistant.py redflags --input baby.json
python3 scripts/newborn_care_assistant.py redflags --input baby.json --json
把 symptoms 与 notes 拼成一段文本,逐条做子串匹配;体温单独按阈值 ≥ 38.0℃ 判定「高热」项。命中即 urgent=true、列出命中项与提示语,并输出就医前信息卡(月龄/体重/体温 + 喂养/睡眠/尿布 + 症状 + 备注),方便向儿科医生完整陈述。命中退出码 1,未命中退出码 0。
tables · 内置参考表
python3 scripts/newborn_care_assistant.py tables
python3 scripts/newborn_care_assistant.py tables --json
输出内置里程碑表、红旗信号表、年龄参考区间表与体温阈值。
内置表 1 · 发育里程碑表(16 项 / 4 个参考段)
| 参考段 | 里程碑 | 常见出现月龄 | 说明 |
|---|---|---|---|
| 0-3 月 | 抬头 | 0-3 | 俯卧时能短暂抬头 |
| 0-3 月 | 追视移动物体 | 0-3 | 目光能跟随眼前移动的物体 |
| 0-3 月 | 逗笑 | 1-3 | 被逗引时出现回应性微笑 |
| 0-3 月 | 四肢活动 | 0-3 | 四肢自发、对称地活动 |
| 4-6 月 | 翻身 | 4-6 | 能从仰卧翻到侧卧或俯卧 |
| 4-6 月 | 伸手抓物 | 4-6 | 主动伸手够取眼前的玩具 |
| 4-6 月 | 认人 | 4-6 | 对熟悉的人有明确反应 |
| 4-6 月 | 咿呀发声 | 4-6 | 发出咿咿呀呀的单音节 |
| 7-9 月 | 独坐 | 7-9 | 不扶能自己坐住一会儿 |
| 7-9 月 | 爬 | 7-9 | 能用手膝交替向前移动 |
| 7-9 月 | 换手抓物 | 7-9 | 能把玩具从一只手换到另一只手 |
| 7-9 月 | 认生 | 7-9 | 对陌生人出现回避或哭闹 |
| 10-12 月 | 扶站 | 10-12 | 扶着家具或人手能站立 |
| 10-12 月 | 叫爸妈 | 10-12 | 有指向性地发出「爸爸」「妈妈」等音 |
| 10-12 月 | 挥手再见 | 10-12 | 听到「再见」会挥手示意 |
| 10-12 月 | 捏取小物 | 10-12 | 用拇指与食指捏起小物件 |
内置表 2 · 红旗信号表(10 条,通用示例)
| 编号 | 名称 | 匹配关键词 | 提示语 |
|---|---|---|---|
high_fever |
高热 | 高热 / 高烧 / 发烧 / 发热 / 体温高;或体温 ≥ 38.0℃ | 体温达到或超过 38.0℃;3 月龄以内婴儿体温达到或超过 38.0℃ 尤其需要尽快就医 |
convulsion |
抽搐 | 抽搐 / 抽风 / 惊厥 / 四肢抽动 / 抽筋 | 出现肢体抽动、双眼上翻、意识不清等表现时尽快就医 |
breathing |
呼吸急促/困难 | 呼吸急促 / 呼吸困难 / 喘 / 鼻翼扇动 / 吸气凹陷 / 憋气 | 呼吸明显变快、费力,或吸气时胸骨上 / 肋间凹陷 |
refusal_feed |
拒食/无法进食 | 拒奶 / 拒食 / 不吃奶 / 喂不进 / 拒绝进食 | 持续拒绝吃奶或进食,或完全喂不进去 |
persistent_vomit |
持续呕吐 | 呕吐 / 喷射状呕吐 / 吐奶频繁 / 反复吐 | 反复呕吐或呈喷射状呕吐,进食后难以保留 |
lethargy |
精神萎靡/嗜睡难唤 | 嗜睡 / 叫不醒 / 精神萎靡 / 精神差 / 反应差 / 萎靡 | 精神明显变差、难以唤醒或唤醒后反应迟钝 |
cyanosis |
皮肤发花/口唇发绀 | 发花 / 花斑 / 发绀 / 口唇青紫 / 口唇发紫 / 面色苍白 | 皮肤出现花斑样改变,或口唇、面色发青发白 |
low_urine |
尿量明显减少 | 尿少 / 尿量减少 / 无尿 / 尿布干 / 少尿 | 尿量明显少于平时,或长时间尿布不湿 |
dehydration |
脱水征象 | 囟门凹陷 / 哭时无泪 / 口唇干 / 眼窝凹陷 | 囟门明显凹陷、哭时无泪、口唇干等提示可能存在脱水 |
jaundice_rash |
黄疸加重/皮疹异常 | 黄疸加重 / 黄疸不退 / 皮疹加重 / 出血点 | 黄疸较前明显加重或迟迟不退,或皮疹迅速加重、出现出血点 |
内置表 3 · 年龄参考区间表(通用示例)
| 参考段 | 喂养次数(次/日) | 奶量合计(ml/日) | 睡眠时长(小时/日) | 尿布次数(次/日) |
|---|---|---|---|---|
| 0-3 月 | 6-12 | 400-900 | 14-17 | 6-10 |
| 4-6 月 | 5-8 | 600-1000 | 12-16 | 5-8 |
| 7-9 月 | 4-6 | 500-900 | 12-15 | 4-7 |
| 10-12 月 | 3-5 | 400-800 | 11-14 | 4-6 |
| 1 岁以上 | 3-5 | 400-700 | 11-14 | 3-6 |
> 以上区间为通用示例,只用于「数值落在区间内还是区间外」的对照,不代表健康与否。
规则表(机械规则)
| 规则 | 触发条件 | 结果 |
|---|---|---|
| 月龄缺失 | baby.age_months 缺失或非数字 |
退出码 2 |
| 里程碑未收录 | milestone_checks 的键不在内置表 |
该项标「未收录,建议咨询儿保」,warn +1 |
| 里程碑延迟判定 | 未达且延迟 = 月龄 − 参考段结束月龄 | ≤3 → 建议多观察;>3 → 建议咨询儿科医生 |
| 区间对照 | 记录值 < 下界 / > 上界 | 偏低 / 偏高;否则在常见范围 |
| 体温阈值 | 体温 ≥ 38.0℃ | 命中 high_fever |
| 红旗匹配 | 症状或备注包含关键词子串 | 命中对应项,urgent=true |
输出与退出码
- 退出码
0:milestones / summary / tables 正常输出,或 redflags 未命中; - 退出码
1:redflags 命中红旗信号(urgent=true); - 退出码
2:用法或读取错误(文件不存在、缺子命令、未知子命令、缺--input、age_months缺失、JSON 解析失败)。
--json 输出结构:
milestones→{version, ok, age_months, segment, items[], counts{}, warn, total, reference_note, boundary}summary→{version, ok, age_months, segment, temp_c, metrics[], counts{}, reference_note, boundary}redflags→{version, ok, urgent, hits[], hit_count, card{}, advice, boundary}tables→{version, ok, milestones[], red_flags[], age_ranges[], temp_threshold, boundary}
使用示例
# 1. 里程碑对照:6 月龄,翻身/认人已达,独坐未达
python3 scripts/newborn_care_assistant.py milestones --input test-samples/baby_ok.json
# → 翻身/认人「该阶段内常见」;独坐「建议多观察」(延迟 = 6-9 = -3 ≤ 3)
# 汇总:该阶段内常见 2 / 建议多观察 1 / 建议咨询儿科医生 0 / 未收录 0,退出码 0
# 2. 照护记录汇总:8 次奶 / 720 ml / 睡 13.5 小时 / 尿布 9 次
python3 scripts/newborn_care_assistant.py summary --input test-samples/baby_ok.json
# → 喂养在常见范围(5-8)、奶量在常见范围(600-1000)、睡眠在常见范围(12-16)
# 尿布 9 > 8 → 偏高,退出码 0
# 3. 红旗匹配:2 月龄、体温 38.5℃、症状「抽搐」
python3 scripts/newborn_care_assistant.py redflags --input test-samples/baby_redflag.json
# → 命中 high_fever(38.5 ≥ 38.0)+ convulsion(抽搐),urgent=true,
# 输出就医前信息卡与「建议立即就医」,退出码 1
# 4. 查看内置参考表
python3 scripts/newborn_care_assistant.py tables
注意事项
- 不做诊断:本技能不做任何医疗诊断、不判断宝宝是否生病、不解释病因;输出只是「按内置表逐条对照」的机械结果。
- 不推荐用药:不推荐任何药物、不推荐任何剂量;涉及用药请以儿科医生处方为准。
- 红旗表不穷尽:内置 10 条红旗信号是通用示例,未命中 ≠ 安全;宝宝状态不好时即使没命中,也应及时就医。
- 里程碑个体差异大:里程碑与月龄区间来自通用育儿参考,早晚 1-2 个月很常见;「建议多观察 / 建议咨询儿科医生」只表示「按这张表对照的结果」,不是发育迟缓的诊断。
- 参考区间只是数值对照:summary 的「偏低 / 偏高」仅表示数值落在区间外,不代表宝宝有问题。
- 信息卡是给医生看的草稿:redflags 的信息卡只是把已填字段整理成一段可读文本,请如实补充并当面告知医生。
- 只读输入、不联网:默认只向 stdout 打印,不写文件、不修改输入、不访问网络。
边界声明
本技能只做新生儿/婴儿日常照护信息的机械整理与提示:不做任何医疗诊断、不判断是否生病、不推荐任何药物与剂量、不解读化验单或影像结果;红旗信号表为通用示例,不能穷尽所有情况,未命中不等于安全;里程碑对照与年龄参考区间均基于通用参考,个体差异很大,所有输出仅表示「按内置表对照的结果」,一切以儿科医生 / 儿保现场判断为准;如出现异常请立即就医。不联网、不写文件、不修改输入。