Downloads · 30 days
134
25% of all-time downloads
weblab-LLM-M/Ramen-PinPointTuning-Positive-Qwen3-30B-A3B-Instruct-2507
Ramen-PinPointTuning-Positive-Qwen3-30B-A3B-Instruct-2507 is a text generation model from weblab-LLM-M. Use it when you need the model to write or continue text. It is set up for transformers. The card lists the license as apache-2.0.
本モデルは、NEDO(国立研究開発法人新エネルギー・産業技術総合開発機構)「AIの安全性確保に関する研究開発・検証等の推進事業 / 日本語版医療特化型LLMの社会実装に向けた安全性検証・実証」において開発された医療特化型大規模言語モデルであり、東京大学開発チーム内の Ramen Team による「Attention Head の因果的寄与に基づく選択的 Fine-tuning(Pinpoint Tuning)」研究の成果物です。
Downloads · 30 days
134
25% of all-time downloads
All-time downloads
526
Public
Parameters
30.5B
61.1 GB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors61.1 GB · 100%
From the Hugging Face model README
本モデルは、NEDO(国立研究開発法人新エネルギー・産業技術総合開発機構)「AIの安全性確保に関する研究開発・検証等の推進事業 / 日本語版医療特化型LLMの社会実装に向けた安全性検証・実証」において開発された医療特化型大規模言語モデルであり、東京大学開発チーム内の Ramen Team による「Attention Head の因果的寄与に基づく選択的 Fine-tuning(Pinpoint Tuning)」研究の成果物です。
⚠️ 重要: 本モデルはベースモデルより性能が劣化する結果を得た研究成果です。手法の設計・実装・分析結果の再現性確保を目的に公開しています。性能面で本モデルを実利用することは推奨されません。 劣化要因の考察および代替設定の提案は outputs/ANALYSIS_REPORT_PinPointTuning.md を参照してください。
| 項目 | 内容 |
|---|---|
| モデル名 | Ramen-PinPointTuning-Positive-Qwen3-30B-A3B-Instruct-2507 |
| ベースモデル | Qwen/Qwen3-30B-A3B-Instruct-2507 |
| パラメータ数 | 30B(A3B MoE, qwen3_moe) |
| 事後学習手法 | Pinpoint Tuning(Positive Impact Heads: medical_impact > 0 かつ reasoning_impact > 0 のヘッド選択) |
| 学習フレームワーク | ms-swift + Megatron-LM (v3.9.3) |
| 言語 | 日本語 |
| ベースモデルライセンス | Qwen3-30B-A3B-Instruct-2507 is licensed under the Apache License 2.0. Copyright (c) Alibaba Cloud. |
| 本モデルライセンス | Apache License 2.0 |
| 開発者 | Ramen Team |
| 事業名 | NEDO JPNP25006 |
| ソースコード | https://github.com/weblab-llm-m/singularity-post-training-medical/tree/main/Pinpoint-tuning |
| 関連記事 | Qiita: Path Patching をかけて Head/Layer の傾向を見た話 / Pinpoint Tuning をかけて特定の場所だけを学習してみた話 |
本モデルは Pinpoint Tuning 研究の Positive バリアントです。同一プロジェクトの他モデルと合わせて評価してください。
Path Patching 法を用いて Attention Head ごとの medical_impact / reasoning_impact を測定し、Positive(medical_impact > 0 かつ reasoning_impact > 0)に該当するヘッドを含む Layer のみを選択的に SFT する手法です。
ヘッド選択の意味
| 手法 | 選択基準 | 意味 |
|---|---|---|
| Positive Pinpoint(本モデル) | medical_impact > 0 かつ reasoning_impact > 0 | 医学用語マスク時に正解率が上がるヘッド → 正答を妨害している疑い → 修正対象 |
| Negative Pinpoint | medical_impact < 0 かつ reasoning_impact < 0 | 医学用語マスク時に正解率が下がるヘッド → 医療タスクと正の関連 |
選択されたヘッドの統計
| 項目 | Positive(本モデル) |
|---|---|
| 対象ヘッド数 | 378 / 1536(24.6%) |
| 対象 Layer 数 | 46 / 48 |
| medical_impact 平均 | +0.0061 |
| reasoning_impact 平均 | +0.0067 |
| ヘッド集中域 | 浅い〜中間層(L0:15ヘッド, L1:16, L24:18) |
学習ハイパーパラメータ
| 項目 | 値 |
|---|---|
| learning rate | 1e-4 |
| max_epochs | 1 |
| global batch size | 32 |
| max_length | 4096 |
| Freeze | router / shared_expert / embed_lm_head |
| Unfreeze | 対象 Layer 内の MLP および attention(指定ヘッド以外も同一 Layer なら学習対象) |
| SFT データ | sft_igakuqa_v2.jsonl |
手法上の留意: 名称の「Pinpoint」に反し、実質的には全 48 層中 46 層・全 1536 ヘッド中 24.6% を含む Layer 全体(MLP 含む)が学習対象となっており、ほぼ full fine-tuning に近い設定です。この設定選択が下記の性能劣化の主因と考察されています(詳細は ANALYSIS_REPORT_PinPointTuning.md)。
詳細は Pinpoint-tuning/Qwen30B-A3B/ を参照してください。
同一プロジェクト内で実施したベンチマークのみを記載します。括弧内はベースモデル(Qwen3-30B-A3B-Instruct-2507)からの変化幅。
| 指標 | ベース | 本モデル (Positive) |
|---|---|---|
| Accuracy (All) | 86.2% | 80.3% (−5.9) |
| Accuracy (subset, テキストのみ) | 89.1% | 84.1% (−5.0) |
統計検定(McNemar, Base vs Positive, N=1,122): 改善 57 / 劣化 123, Net −66, χ²=23.47, p<0.000001 (***)
| 指標 | ベース | 本モデル (Positive) |
|---|---|---|
| Accuracy (All) | 60.9% | 44.9% (−16.0) |
| Accuracy (subset, テキストのみ) | 64.5% | 47.5% (−17.0) |
統計検定(McNemar, Base vs Positive, N=3,757): 改善 305 / 劣化 905, Net −600, χ²=296.53, p<0.000001 (***)
診療科別の劣化率(Base 正解を本モデルが不正解にした割合の高い順)
| 診療科 | Base 正答数 | Positive 壊れ率 |
|---|---|---|
| 耳鼻科 | 154 | 50.0% |
| 麻酔科 | 204 | 47.1% |
| 神経内科 | 116 | 47.4% |
| 肝臓 | 129 | 45.7% |
| 救急 | 182 | 45.6% |
| 消化器 | 146 | 43.2% |
| 眼科 | 138 | 42.8% |
| 心臓外科 | 157 | 42.7% |
| 整形外科 | 115 | 42.6% |
| 外科 | 202 | 40.6% |
| 精神科 | 231 | 37.7% |
| 産婦人科 | 231 | 29.9% |
| 内科 | 282 | 20.9% |
| 指標 | ベース | 本モデル (Positive) |
|---|---|---|
| Accuracy | 15.7% | 10.8% (−5.0) |
[ans]...[/ans] フォーマットのパース失敗率: 0.0% — フォーマット崩壊は劣化の原因ではないことを確認済み。
以下のベンチマークは本モデルでは実施していません。同種の評価を必要とする場合は Weblab-MedLLM 本系列を参照してください。
医師国家試験過去問(2022年以前)由来の SFT データ(sft_igakuqa_v2.jsonl)を使用しています。評価データ(2023–2025年の医師国試および専門医試験)とはデータリークがないよう分離しています。
qwen3_moe アーキテクチャに対応したバージョンが必要)pip install hf_transfer
HF_HUB_ENABLE_HF_TRANSFER=1 hf download weblab-LLM-M/Ramen-PinPointTuning-Positive-Qwen3-30B-A3B-Instruct-2507 \
--local-dir ./Ramen-PinPointTuning-Positive-Qwen3-30B-A3B-Instruct-2507
vllm serve ./Ramen-PinPointTuning-Positive-Qwen3-30B-A3B-Instruct-2507 \
--host 0.0.0.0 \
--port 8000 \
--served-model-name Ramen-PinPointTuning-Positive-Qwen3-30B-A3B-Instruct-2507 \
--tensor-parallel-size 1 \
--dtype bfloat16 \
--gpu-memory-utilization 0.90 \
--trust-remote-code \
--enable-chunked-prefill \
--enable-prefix-caching \
--enable-expert-parallel
from openai import OpenAI
client = OpenAI(base_url="http://localhost:8000/v1", api_key="dummy")
response = client.chat.completions.create(
model="Ramen-PinPointTuning-Positive-Qwen3-30B-A3B-Instruct-2507",
messages=[
{"role": "system", "content": "あなたは医療の専門知識を持つアシスタントです。"},
{"role": "user", "content": "脳梗塞の急性期治療において、rt-PA静注療法の適応基準について説明してください。"}
],
max_tokens=1024*4,
)
print(response.choices[0].message.content)
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "./Ramen-PinPointTuning-Positive-Qwen3-30B-A3B-Instruct-2507"
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype="auto",
device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)
messages = [
{"role": "system", "content": "あなたは医療の専門知識を持つアシスタントです。"},
{"role": "user", "content": "脳梗塞の急性期治療において、rt-PA静注療法の適応基準について説明してください。"}
]
text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
inputs = tokenizer([text], return_tensors="pt").to(model.device)
outputs = model.generate(**inputs, max_new_tokens=1024*4)
response = tokenizer.decode(outputs[0][inputs.input_ids.shape[1]:], skip_special_tokens=True)
print(response)
@misc{ramen2026pinpointpositive,
title = { Ramen-PinPointTuning-Positive-Qwen3-30B-A3B-Instruct-2507 },
author = { Ramen Team, Matsuo-Iwasawa Lab, The University of Tokyo },
year = { 2026 },
url = { https://huggingface.co/weblab-LLM-M/Ramen-PinPointTuning-Positive-Qwen3-30B-A3B-Instruct-2507 },
note = { NEDO Project JPNP25006 }
}
この成果は、NEDO(国立研究開発法人新エネルギー・産業技術総合開発機構)の 委託業務(JPNP25006)の結果得られたものです。