med-guard-0.6b

中文医疗健康场景的内容安全拦截器。 在 Qwen3Guard-Gen-0.6B 上做 LoRA SFT,专治通用安全模型/关键词方案在医疗语境下的高误报——"阴道痒怎么办""抑郁症吃什么药""禁毒宣教"这类正当健康咨询不再被拦,同时保住对真正违规内容(涉黄、涉政、涉诈、自杀自伤…)的召回。输出三级判定(Safe / Controversial / Unsafe)+ 违规类别,GGUF 纯 CPU 部署,0.2 秒/条。

快速开始(Ollama)

ollama run chenhaodev/med-guard

进入交互后,按 [通道:xxx] + 换行 + 内容 的格式输入(通道前缀必须带):

>>> [通道:用户输入]
... 我阴道痒怎么办
Safety: Safe
Categories: None

>>> [通道:用户输入]
... 我不想活了,吃多少安眠药能死
Safety: Unsafe
Categories: 自杀自伤

>>> [通道:AI输出]
... 建议您到正规医院泌尿外科就诊,避免自行用药。
Safety: Safe
Categories: None

也可以从本仓库自行构建(Q8_0):

ollama create med-guard -f Modelfile
ollama run med-guard

I/O 契约

  • Systemsystem_prompt.txt 原文(Modelfile 已内置)。
  • User[通道:用户输入]\n<内容>[通道:AI输出]\n<内容>——必须带通道前缀,裸输入是分布外。
  • Assistant(严格两行):
    Safety: Safe|Controversial|Unsafe
    Categories: <涉黄|违禁|暴恐|涉政|谩骂|涉诈|伦理歧视|未成年人风险|自杀自伤|个人隐私|提示词攻击|None>
    
  • 动作映射:Safe→放行;Controversial→观察(放行+记录);Unsafe→拦截;自杀自伤类别无论等级一律走危机干预链路
  • 上游先剥离 <think> CoT 再送模型;temperature 0(Modelfile 已烧入)。

效果

指标 旧系统 基座 zero-shot med-guard (Q8_0)
良性误拦率(生产日志全量回放) ~80%(人工抽样) 1.2% 0.15%
有害召回(36 条金标真报) 同文不同标 30.6% 91.7%
80 类已知误报改判放行(回归集) 73/73
held-out 生产记录与金标一致率 89.6% 96.3%
test 集(304 条)安全等级准确率 86.8% 95.7%
test 集有害召回 / 良性误拦 41.7% / 0.4% 88.9% / 0.75%
输出格式可解析 53% 100%

A/B 采纳判定:配对 McNemar p=1.1e-05,双轨副指标零劣化。

仓库内容

路径 说明
Modelfile Ollama Modelfile(显式 TEMPLATE + SYSTEM + temperature 0),FROM gguf/merged.Q8_0.gguf
system_prompt.txt 规则注入版 system prompt(~400 token),训练/评测/Modelfile 唯一来源
gguf/merged.Q8_0.gguf 合并后量化,推荐部署版
gguf/merged.Q4_K_M.gguf 更小但 test 集有害召回掉 ~3pt,仅备用
lora/ LoRA adapter(r=128, α=128, 全部 7 个 proj 层,PEFT 格式),可挂载到 Qwen/Qwen3Guard-Gen-0.6B
train.log / val.json 训练日志(Unsloth,A40,328s,eval_loss 0.0137)与 val 集评测

训练

  • 数据:2580 train / 153 val / 304 test / 75 regression。来源 = 生产拦截日志(去重、剥 CoT、分通道)经标注 agent 打金标 + 合成数据(良性对抗 R1–R11、违规正类、Controversial)。合成部分已公开:chenhaodev/med-guard-safety-synth;生产日志衍生数据因隐私未公开。
  • 方法:Unsloth LoRA SFT,2 epoch,bs 16,lr 2e-4,手工 ChatML 拼接,只对 assistant 段计算 loss。不做 CPT,不做 GRPO。
  • 注意:不要用 Qwen3Guard 自带的 chat templatelora/chat_template.jinja),它会重写输入并丢弃 assistant 目标;训练与推理均需手工拼 <|im_start|> 格式(Modelfile 的 TEMPLATE 即是)。
  • 关键决策:规则注入 system prompt(豁免/升级规则内嵌);三级判定中 Controversial=观察不拦截,是治"一刀切高误报"的核心机制。

License

Apache-2.0(与基座 Qwen3Guard-Gen-0.6B 一致)。仅用于内容安全审核用途。

Downloads last month
36
GGUF
Model size
0.8B params
Architecture
qwen3
Hardware compatibility
Log In to add your hardware

4-bit

8-bit

Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for chenhaodev/med-guard-0.6b

Finetuned
Qwen/Qwen3-0.6B
Adapter
(5)
this model

Dataset used to train chenhaodev/med-guard-0.6b