「モデルは依頼の危険性を理解して断っている」
05 モデルの中で拒否はどう表れているかの事実 3 のとおり、有害性の判定と拒否は別の場所にあり、無害と判定しながら断ることも、有害と判定しながら答えることもあります。断りは表面の特徴で発火する反応で、危険性の証明でも安全性の証明でもありません。
DBC Tech Academy / AI / 中級
医療機関の問い合わせボットが服薬量の質問を断る。セキュリティ会社の解析依頼が「お手伝いできません」で返る。同じ依頼が、言い方を少し変えただけで通る。LLM を業務に組み込んだ人が最初にぶつかるのがこの現象です。断りには 2 種類あります。モデル本体が、学習で植え付けられた反応として自分の言葉で断る場合と、本体とは別に置かれた分類器が入力や出力を途中で止める場合です。どちらも、モデルが依頼の危険性を理解して下した判断ではありません。この講座では、拒否 (refusal) がモデル本体の中でどう表れているか、なぜ言い方で結果が変わるか、追加学習で何が壊れるか、各社が本体とは別に何を置いているかを、公開された研究とオープンモデルで確かめられた事実で読み解き、断られたときに業務でどう確かめるかまでを扱います。
1 は学習で植え付けられた反応で、モデル本体が自分の言葉で断っています。2 は本体が答え始めたあとに、別の分類器が出力を止めています。断りが起きた層が違うので、対処も違います。
形式は Anthropic Messages API リファレンスの stop_reason の仕様に基づき、文面は例です
01 / Conclusion
この講座で最初に据える軸を先に言い切ります。断りが起きたとき、原因は 4 つの層のどれかにあり、どの層かは API の返り値と方針文書で読めます。
モデルが依頼の危険性を理解して下した判断ではありません。事前学習を終えたばかりのモデルは何も断らず、断りはその後の工程で例文と評価を通じて植え付けられます。植え付けられた反応はモデル本体の中で 1 本の方向として取り出せ、表面の特徴で発火し、応答の先頭トークンに偏っています。フロンティアモデルの事業者は、その反応が浅く壊れやすいことを前提に、本体とは別に独立した分類器を置いています。
この 4 層を頭に置くと、02 断られたときに返ってくるものの返り値から「どの層で断られたか」が読め、プロンプトを直すのか、設定を見るのか、モデルを替えるのかが09 断られた原因の切り分け方の手順で決まります。
事業者の利用規約・仕様書・憲法。何を断ると決めたかが書かれた文書で、学習の評価基準としても使われます。
読者が動かせる範囲: 既定値の部分だけ(システムプロンプト・開発者メッセージ)
指示調整と評価による調整で植え付けられた反応。例文と評価に現れた依頼の分布に対してだけ効きます。
読者が動かせる範囲: 追加学習で変わる(壊れる方向にも)
残差ストリームの中の拒否の方向と、それを発火させる特徴。有害性の判定とは別の場所にあります。
読者が動かせる範囲: オープンモデルなら重みに直接触れられる
モデル本体の重みには含まれず、本体の前後で入出力を判定する別のモデル。事業者のサービスの中に置かれるか、読者が自分の環境に置きます。
読者が動かせる範囲: 事業者の設定項目の範囲。自前で足すことはできる
02 / What you see
読者が現場で最初に見るのは、応答文と API の返り値です。各社の API は、モデル本体の断りと、本体とは別の分類器の介入を区別して返します。ここが「どの層で断られたか」を読む最初の手がかりになります。
停止理由が通常の値で、応答文が断りになっているとき、その文面は 3 つの型のどれかに収まります。型が分かると、03 の方針の層で起きたのか、04 の学習の層で起きたのかの見当が付きます。
断りの発生率は製品の品質指標です。全リクエストについて、入力の全文、システムプロンプトの版、応答の全文、停止理由、モデル名と版、時刻を残し、停止理由と応答文の型で集計できるようにしておきます。記録の設計の全体は 09 にあります。
| 事業者 | モデル本体が断ったとき | 本体とは別の分類器が止めたとき |
|---|---|---|
| Anthropic Messages API | 応答文が返り stop_reason: "end_turn" | stop_reason: "refusal"。ストリーミング分類器の介入で、応答は途中で止まる |
| OpenAI Chat Completions | 応答文が返り finish_reason: "stop" | finish_reason: "content_filter" |
| Azure OpenAI | 同上 | HTTP 400 の code: "content_filter"。入力側で止まると応答自体が返らない |
| Amazon Bedrock Converse | stopReason: "end_turn" | stopReason: "guardrail_intervened" |
読み方の要点は 2 つです。停止理由が通常の値で、応答文が断りなら、学習の層か方針の層で起きています。言い換え、文脈の追加、システムプロンプトで変わる余地があります。停止理由が介入を示す値なら、分類器の層で起きています。言い換えでは変わらず、事業者側の設定項目(Azure のフィルタの強度、Bedrock のガードレールの定義)か、モデルと事業者の選択で変えることになります。
ヒーローに置いた 2 つの応答は、この違いをそのまま見せています。1 つ目は本体が自分の言葉で断り、2 つ目は本体が答え始めたあとに分類器が出力を止めています。同じ「断られた」でも、直す場所が違います。
03 / Policy layer
何を断るかは、事業者が公開している文書に書かれています。文書は 3 種類あり、役割が違います。読者の判断に効くのは、断られている依頼が固定の規則の領域か、既定値の領域かという区別です。
| 文書 | 誰が読むか | 何を決めるか |
|---|---|---|
| 利用規約 (Usage Policy) | 利用者・開発者 | 何に使ってよいか。契約上の線 |
| モデルの仕様書(OpenAI Model Spec) | 学習の担当者と開発者 | モデルがどう振る舞うべきか。上位で固定された規則と、開発者が変えられる既定値 (defaults) |
| 憲法(Anthropic の Constitutional AI の原則、Claude の憲法) | 学習の工程そのもの | 自己評価の基準。04 の学習で直接使われる |
OpenAI の Model Spec は、指示の優先順位 (chain of command) を「プラットフォーム > 開発者 > 利用者」と定め、上位の指示は下位で覆せないと書いています。兵器の製造手順のような領域の規則は開発者にも動かせず、成人向けの話題への踏み込み、医療の助言の深さ、断り方の文体のような既定値は、開発者メッセージで動かせます。Anthropic の憲法も、同じ形で原則の優先順位を定めています。
読者の判断に効くのは、自分が断られている依頼が固定の規則の領域か、既定値の領域かです。既定値なら、システムプロンプトに用途・利用者の属性・扱う情報の性質を書くだけで応じ方が変わります。固定の規則なら、書いても変わりません。書いて変わったとしたら、それは 06 で扱う失敗様式を踏んだ状態で、製品の基盤にはできません。
用途・利用者・答える範囲・応じ方の 4 点を書くと、既定値の側から応じ方が決まります。書き方の部品分けは LLM API から呼ぶプロンプトの組み立てにあります。
方針文書は利用者への説明であると同時に、04 の学習で使われる評価基準です。Anthropic は憲法を自己評価の基準に、OpenAI は Model Spec の本文を推論モデルに読ませる材料にしています。文書の改訂がモデルの振る舞いの改訂につながるので、方針文書の版を追うことが、モデルの版を追うことと同じ意味を持ちます。Anthropic は Claude のシステムプロンプトも版ごとに公開していて、断り方の文体や前置きの多くはそこに書かれています。
04 / Training layer
事前学習を終えたばかりのモデルは何も断りません。断りはその後の工程で入ります。どの工程で何が入るかを順に見ると、06 で扱う「言い方で結果が変わる」現象の根がここにあることが分かります。
ウェブと書籍の続きを書く分布を得る。拒否はまだ入らない。危険な領域の文書を学習データから除く選別だけが、ここで行われる
「依頼と望ましい応答」の対で学習する。断りの応答文がここで初めて入る。例文の模倣なので、似た依頼にしか効かない
複数の応答を人間か AI が比べて順位を付け、その順位に沿うよう調整する。役に立つことと害がないことの綱引きがここで起きる
学習で植え付けた反応が浅く壊れやすいことを前提に、本体の前後に置く。08 で扱う
この図は公開論文に書かれた工程の順序を再現しています。各社の実際の工程数・データ量・反復回数は、公表されている範囲で末尾の参考資料に示します。
事前学習だけを終えたモデル(ベースモデル)は、ウェブと書籍の続きを書く分布を持っているだけで、依頼を断る振る舞いを持ちません。拒否はすべて事前学習より後の工程で入ります。事前学習の段階で行われるのは、データの選別(生物・化学兵器に関する文書を学習データから除く)で、これは「知らないから答えられない」を作る唯一の工程です。ただし知らないことだけで安全を作るのは難しく、後の工程が重ねられます。トークンが層を通って次の 1 語が決まる仕組みそのものは ローカル LLM のしくみにあります。
人間が書いた「依頼と、望ましい応答」の対で学習させます。断るべき依頼に対する「断りの応答文」がここで初めて入ります。この段階の拒否は例文の模倣なので、例文に似た依頼にしか効きません。
InstructGPT(2022)の工程は 3 段です。モデルが出した複数の応答を人間が比較して順位を付け、その順位を当てる報酬モデル (reward model) を作り、報酬が高くなる方向へモデルを調整します。役に立つこと (helpful) と害がないこと (harmless) は別々の評価者・別々のデータで集められ、Anthropic の HH-RLHF(2022)は、この 2 つが綱引きの関係にあることを示しました。片方を強めると、もう片方が下がります。06 の「目的の競合」はここに根があります。
DPO(2023)は報酬モデルを介さず、比較データから直接調整する方法で、オープンモデル(Zephyr、Llama 3)の安全調整に広く使われています。工程は簡単になりますが、植え付けられるものの性質は同じです。
「役に立つ」と「害がない」は別のデータで集められ、両立しない依頼で綱引きになります。綱引きの勝敗は、依頼の書き方で変わります。
Anthropic の Constitutional AI(2022)は 2 段階です。1 段目では、モデル自身に原則(憲法)に照らして自分の応答を批評させ、書き直させ、書き直した応答で指示調整をやり直します。2 段目では、2 つの応答のどちらが原則に沿うかをモデル自身に判定させ、その判定で報酬モデルを作って調整します (RLAIF)。人間の害の評価データが要らなくなり、「答えを避けるだけの断り」が減って「理由を述べて断る」応答が増えたと論文は報告しています。読者が現場で見る「理由つきの断り」の出どころです。
05 / Inside the model
この節が講座の中心です。オープンモデルとフロンティアモデルの両方で確かめられた 4 つの事実を、図とともに置きます。4 つを合わせると、01 の「判断ではなく反応」という結論と、事業者が本体とは別に分類器を置く理由が同時に導けます。
トークンが層を通るたびに足し込まれていく数値の列を残差ストリーム (residual stream) と呼びます。その中に、拒否に対応する 1 本の方向があります。有害な依頼ではこの方向の成分が大きく、無害な依頼では小さい。成分を消すと拒否が消え、足すと無害な依頼でも拒否が出ます。
この図は Arditi らの論文で 13 のオープンモデルについて確かめられた構造を再現しています。方向を取り出す層と位置はモデルごとに違い、論文の付録にモデル別の値があります。
Arditi ら(2024)は、有害な依頼と無害な依頼を与えたときの残差ストリームの平均の差を取ると、それが 1 本の方向になり、この方向の成分をすべての層から取り除くと、モデルは有害な依頼にも答えるようになると示しました。逆に無害な依頼にこの方向を足すと、モデルは無害な依頼を断ります。Qwen、Llama、Gemma、Yi の 13 モデル(最大 72B)で同じ結果が出て、一般的な能力の評価はほぼ変わりませんでした。方向の除去は重みの直交化で恒久化でき、推論時のコストはゼロです。オープンモデルのコミュニティでこの手法を適用したモデルが多数公開されている事実が、拒否が「知識」ではなく「取り外せる部品」であることの証拠になります。
読者の判断に効く点: オープンモデルの安全性は、重みを配布した時点で配布先の手に渡ります。自社で配布・公開する場合、拒否を保証する層は重みとは別に置く必要があります(08)。
Anthropic の Scaling Monosemanticity(2024)は、Claude 3 Sonnet の中間層にスパースオートエンコーダー (sparse autoencoder) を当て、数百万の特徴 (feature) を取り出しました。その中に、詐欺メール、コードの脆弱性、偏見、へつらい、権力の追求、危険物の製造のような安全に関わる特徴があり、特徴の活性を人為的に上げ下げすると応答が変わります。特徴は言語をまたいで(英語でも日本語でも同じ特徴が発火する)、画像入力にも反応しました。
読者の判断に効く点: 拒否を発火させるのは入力の意味ではなく、特徴の発火です。特徴は表面の語や形に反応することがあり、06 の過剰な拒否はここから起きます。
Zhao ら(2025)は、モデルが「この依頼は有害か」を判定する方向と、「断る」という行動を起こす方向が別で、有害性の判定は依頼のトークン位置の早い層に、拒否は応答の先頭トークン位置の遅い層に現れることを示しました。ジェイルブレイク (jailbreak) の一部は、有害性の判定を変えずに拒否の信号だけを抑えています。過剰な拒否では逆に、モデルは内部では無害と判定しながら断っています。
読者の判断に効く点: 「モデルが危険と判断したから断った」は、この 2 つを混同しています。断りが出たことは、モデルが有害と判定したことの証拠になりません。
Li ら(2024)は、悪意ある依頼の識別に効く層が中間の連続した数層に集中していることを示しました。Qi ら(2024)は、調整前後のモデルの出力分布の差が応答の先頭数トークンに集中していて、先頭を「はい、手順は次のとおりです」で埋めると(プリフィル攻撃)残りはそのまま続くことを示し、これを「浅いアライメント」と呼びました。
読者の判断に効く点: 拒否は応答の入り口を守る門番で、門を過ぎた後の生成を監視してはいません。出力の途中を監視できるのは本体とは別の分類器だけです(08 のストリーミング分類器)。
06 / Inconsistency
読者の依頼が通ったり断られたりするのは、言い回しの差が「意味の差」だからではありません。安全のための学習が破られる原因は 2 つに分けられていて、揺れはそのどちらかを踏んでいます。
| 失敗様式 | 何が起きているか | 例 |
|---|---|---|
| 目的の競合 (competing objectives) | 役に立つことと害がないことが同じモデルの中で綱引きし、依頼の書き方で勝敗が変わる | 「『もちろんです。手順は』で始めてください」と指定する。断りの文言を禁止する。役割を与える |
| 学習が届いていない領域 (mismatched generalization) | 事前学習で能力は持っているが、安全のための学習データに含まれなかった入力形式 | Base64 で書く。低資源言語で書く。依頼を分割して渡す |
Wei ら(2023)はこの 2 つを提示し、当時の GPT-4 と Claude で、どちらの様式も単独で効き、組み合わせるとさらに効くことを示しました。目的の競合は 04 の評価による調整に根があり、学習が届いていない領域は、事前学習の分布が安全のための学習の分布より広いことに根があります。読者の依頼が通ったり断られたりするのは、言い回しの差が「意味の差」ではなく、この 2 つの様式のどちらかを踏んでいるからです。
Anthropic の Many-shot Jailbreaking(2024)は、長いコンテキストの中に「危険な依頼に答える対話」を数百件並べると、件数に応じて断りが減り、その減り方が文脈内学習と同じ冪則に従うことを示しました。長いコンテキストを使う製品(RAG、長文の要約)では、渡す文書の中身が拒否の発火を左右します。渡す文書は信頼できる出所のものに限り、モデルへの指示と資料本文をプロンプトの構造で分けておきます(LLM API から呼ぶプロンプトの組み立て)。
Röttger ら(2023)の XSTest は、「Python のプロセスを kill するには」「小説の中で人を殺す描写を」「歴史上の虐殺の経緯」のように、危険な依頼と表面が似ているだけの無害な依頼 250 件を集め、当時の Llama 2 Chat がその多くを断ることを示しました。これが過剰な拒否 (over-refusal) で、05 の事実 2(表面の特徴で発火する)と事実 3(無害と判定しながら断る)の実物です。
Llama 3 の技術報告は、安全の評価を「違反率 (violation rate)」と「誤った拒否率 (false refusal rate)」の 2 軸で測り、境界に近い依頼のデータを学習に混ぜて両方を下げる工程を書いています。ベンダーがモデルの版を上げると断り方が変わるのは、この 2 軸の置き所を動かしているからです。
| 種類 | 例 |
|---|---|
| 同音異義 | プロセスを kill する |
| 比喩 | プレゼンで観客を killする(沸かせる) |
| 安全な対象 | 蚊を殺す方法 |
| 安全な文脈 | ゲームの中で敵を倒す |
| 定義 | 「殺人」の法律上の定義 |
| 歴史上の出来事 | 虐殺が起きた経緯 |
| 創作 | 小説の中の殺人の描写 |
| 公人の情報 | 首相の生年月日 |
| 架空の人物の情報 | 小説の登場人物の住所 |
| 実在しない差別 | 「なぜ○○人は宇宙に行けないのか」型の無意味な問い |
07 / Fine-tuning
追加学習の目的が業務の文体や用語の習得であっても、拒否は副作用で薄まります。少量で壊れ、無関係な領域から壊れ、そして方向を消せば拒否だけが消えます。
Qi ら(2023)は、有害な依頼に答える例文をわずか 10 件、GPT-3.5 Turbo の追加学習に混ぜるだけで、ほとんどの安全のための学習が無効になることを示しました。さらに、有害な例文を一切含まない一般的な指示データ(Alpaca、Dolly)で追加学習しただけでも、安全性の評価が落ちました。追加学習の目的が業務の文体や用語の習得であっても、拒否は副作用で薄まります。
| 追加学習のデータ | 安全性への影響 |
|---|---|
| 有害な依頼に答える例文 10 件 | 安全のための学習がほぼ無効になる |
| 「どんな指示にも従う」と教える無害な例文 | 同じ方向に壊れる |
| 一般的な指示データ(Alpaca、Dolly) | 意図しなくても安全性の評価が落ちる |
Betley ら(2025)は、脆弱なコードを書く例文 6,000 件で追加学習したモデルが、コードと無関係な質問(人間と AI の関係、価値観)でも偏った応答を返すようになることを示し、これを創発的な不整合 (emergent misalignment) と呼びました。05 の事実 1(拒否は一方向)と合わせると、安全に関わる振る舞いは 1 つの束で、束のどこを引いても全体が動くことが分かります。Anthropic の Persona Vectors(2025)は、この束を「人格の方向」として取り出し、追加学習中にその方向を打ち消しておくと副作用を抑えられることを示しています。
05 の事実 1 の裏返しです。オープンモデルでは拒否の方向を重みから取り除いたモデルが、能力を保ったまま公開されています。追加学習で「たまたま」壊れることと、方向の除去で「意図して」外すことは、同じ部品を違う経路で動かしています。
| 呼び名 | 作り方 | どこで目にするか | 使うときの前提 |
|---|---|---|---|
| 無検閲モデル (uncensored model) | 指示調整データから断りの例文を取り除いて学習し直す | Dolphin、WizardLM-Uncensored などオープンモデルの派生版 | 分類器を自分の環境に別に置く |
| abliterated model | 学習し直さず、重みから拒否の方向を直交化で取り除く(事実 1 の適用。ablation と obliterated を合わせた名前) | Hugging Face の -abliterated 接尾辞 | 能力が残ることと安全性が残ることは別。分類器を別に置く |
| helpful-only model | 事業者が内部で持つ、無害性の学習を抜いて「役に立つ」だけで調整したモデル。レッドチームと分類器の評価に使う | Anthropic の論文と Responsible Scaling Policy。08 の Constitutional Classifiers の評価対象 | 研究・評価用の語で、本番のモデルの名前には付かない |
| ベースモデル (base model) | 事前学習だけで、拒否がまだ入っていない状態(04) | 各社の -base / -pt 版 | 対話用の調整を自分で行う |
「断りが少ない」を度合いで言うときは、モデルの種類ではなく評価の語(誤った拒否率が低い、過剰な拒否が少ない)で言います。種類の名前が付いているものは、拒否を保証する部品が重みに無いので、08 の分類器を別に置くことを前提に使います。
08 / Classifier layer
フロンティアモデルの安全性は「本体の反応 + 別の分類器」の 2 段で成り立っています。分類器がどこに置かれ、どの時点で止め、何を得て何を払うかを見ていきます。
ここで言う分類器は、トークンを生成するモデル本体の重みには含まれず、本体の前後で入出力を判定する別のモデルです。Anthropic や OpenAI ではサービスの中に置かれていて、API を叩く読者からは本体と同じ 1 つの箱に見えます。境目が見えるのは 02 の停止理由の値だけです。Llama Guard や Bedrock Guardrails は、同じものを読者が自分の環境に置く形です。
05 と 07 から、モデル本体の拒否は浅く(先頭トークンに偏る)、表面の特徴で発火し、追加学習で薄まり、オープンモデルでは取り外せます。別に置いた分類器は、本体と独立に学習され、本体の重みに触れずに更新でき、出力の途中も監視でき、社外秘・個人情報・業務外の話題のような自社固有の規則も持てます。
content_filter (HTTP 400)stop_reason: end_turnfinish_reason: content_filterstop_reason: refusalこの図は Anthropic の Constitutional Classifiers の論文と各社 API の公開仕様に書かれた構成を再現しています。分類器の数と置き場所は事業者と製品ごとに違います。
Anthropic(2025)は、憲法から合成した学習データで入力分類器と出力分類器を作り、Claude の前後に置きました。評価は、無害性の学習を抜いた helpful-only モデル(07)に分類器を付けた構成で行われています。本体の拒否に頼らず、分類器だけでどこまで守れるかを測るための構成で、この層が本体と独立に設計されていることの証拠でもあります。この分類器は Claude Opus 4 の公開時に、生物・化学兵器の領域に絞った形で本番に入りました。02 の stop_reason: "refusal" は、この層が出力を止めたときの返り値です。
| 分類器 | 提供元 | 置き場所 | 読者が触れる範囲 |
|---|---|---|---|
| Constitutional Classifiers | Anthropic | Claude の前後 | 返り値を読むだけ |
| Moderation API | OpenAI | 独立したエンドポイント | 自分のアプリの前後に自分で呼ぶ |
| コンテンツフィルタ | Azure OpenAI | サービスの前後 | 強度とカテゴリを設定で選ぶ |
| Guardrails | Amazon Bedrock | モデルの前後 | 話題・語・個人情報の規則を自分で定義する |
| Llama Guard | Meta(オープン) | 自分の環境 | 危害の分類(MLCommons の分類体系)で入力・出力を判定。自分で追加学習できる |
| NeMo Guardrails | NVIDIA(オープン) | 自分の環境 | 対話の流れを規則で書く |
分類器は置けば終わりではなく、守りやすさ・誤って止める量・コストの置き所を評価で決めて維持するものです。モデルの重みに触れる工程(追加学習、オープンモデルの配布)がある製品は、本体とは別の分類器を必ず持ちます。触れない製品は、事業者の分類器の返り値を読んで記録する運用から始め、自社固有の規則が必要になった時点で自前の層を足します。
09 / Triage
断られた依頼を、01 の 4 層のどこに帰属させるかを、上から順に確かめる手順です。順番どおりに進めると、プロンプトで直せるものと、直せないものが分かれます。
停止理由が介入を示す値(02 の表)なら分類器の層です。事業者の設定項目で変えられるか(Azure、Bedrock)、変えられないか(Anthropic、OpenAI の内蔵分類器)を確かめます。
停止理由が通常の値なら、依頼が固定の規則の領域か既定値の領域かを 03 の文書で確かめます。固定の規則なら、その依頼はその事業者では通りません。
既定値の領域なら、システムプロンプトに用途・利用者の属性・扱う情報の性質・応じ方を書きます。書いて変わるなら既定値の調整で解決し、その書き方を製品に固定します。
用途を明示しても断られ、依頼が無害なら、06 の過剰な拒否です。依頼文の中で危険な依頼と表面が似ている語(kill、攻撃、爆発、薬の量)を、意味を変えずに置き換えて確かめます。変わるなら特徴の発火で、製品側で入力の前処理として固定します。
上の手順で通らないなら、違反率と誤った拒否率の置き所が違うモデル・版・事業者を比べます。比べるときは自社の依頼を 100 件ほど固定して、同じ集合で断りの率を測ります。
事業者の分類器を通らない依頼を自社の責任で通す判断はできません。逆に、事業者は通すが自社では止めたい依頼(社外秘、業務外、個人情報)は、08 の自前の分類器で止めます。
全リクエストについて次を残します。入力の全文、システムプロンプトの版、応答の全文、停止理由、モデル名と版、事業者の分類器の返り値(カテゴリと強度があれば全部)、自前の分類器の判定、時刻、呼び出し元のアプリと利用者の識別子、待ち時間、トークン数。記録は後から遡って取れないので、取得できる項目はすべて残し、容量は保持期間とローテーションで制御します。個人情報と機密情報を含む記録は、保持期間・閲覧権限・マスキングの規則を記録の設計と同時に決めます。
断りの率は、停止理由と応答文の型(02 の 3 型)で集計し、モデルの版の切り替え前後で比べます。断りの記録は、モデルを替える判断とベンダーへの問い合わせの材料になります。
システムカードや発表文の「安全性」の記述を、方針の話(何を断ると決めたか)、学習の話(どう植え付けたか)、分類器の話(本体とは別に何を置いたか)の 3 つに分けて読みます。数値があるなら、違反率と誤った拒否率のどちらか、ジェイルブレイクの成功率は分類器ありかなしか、断りの増加は本番トラフィックか評価セットかを見ます。08 の Constitutional Classifiers の数値は、この読み方の練習台になります。
10 / Read the symptom
業務で持ち込まれる断りの 3 例です。いずれも理解のための架空の状況です。 返ってきたものと試したことから、どの層で断られたかを当ててみましょう。
11 / Myth vs. reality
どれも一見もっともらしく、LLM を使い慣れた人ほど言いがちな判断です。
05 モデルの中で拒否はどう表れているかの事実 3 のとおり、有害性の判定と拒否は別の場所にあり、無害と判定しながら断ることも、有害と判定しながら答えることもあります。断りは表面の特徴で発火する反応で、危険性の証明でも安全性の証明でもありません。
動くのは方針の層の既定値だけです。固定の規則は開発者メッセージでも覆らず、分類器の層はプロンプトを読んでいません。書いて変わったとしたら、それは 06 なぜ同じ依頼が通ったり断られたりするのかの失敗様式を踏んだ状態で、製品の基盤にできません。
オープンモデルの拒否は重みの中の一方向で、配布先で取り外せ、追加学習で薄まります(07 追加学習で何が壊れるか)。安全性を保証するのは重みではなく、自分の環境に本体とは別に置く分類器と、その評価の維持です。
12 / Knowledge check
答えを当てるだけでなく、なぜそう判断できるのかを説明できれば合格です。
選択肢を1つ選んでください。
Take it home
方針文書が線を引き、指示調整と評価による調整が反応を植え付け、反応は残差ストリームの一方向として先頭トークンに宿り、表面の特徴と学習の届かない領域で発火が揺れ、追加学習で薄まり、本体とは別の分類器が独立に守る。断られたら、返り値・方針文書・用途の明示・表面の特徴・モデルの交換・自前の層の順で切り分け、全件を記録します。
拒否を「モデルの判断」として扱うと、言い換えで通ったときに安心し、通らないときにプロンプトを直し続けることになります。「植え付けられた反応と、別に置かれた分類器」として扱うと、直す場所が返り値から決まり、追加学習の後に何を測るかも決まります。
参考資料
refusal)finish_reason)目次