職務等級の定義と現場へのヒアリングメモから職種ごとの職務記述書を下書きし、等級の定義との食い違いと書いてはいけない条件を人事へ返す
職務等級の定義と、現場の管理職へのヒアリングメモから、職種ごとの職務記述書(ジョブディスクリプション)を決まった型で下書きします。あわせて、等級の定義と合わない記述と、書いてはいけない条件を人事へ返します。
- 生成AI
- Azure OpenAI Service/Claude/Gemini
- 連携・自動化
- Power Automate/Python
- 対象業界
- IT・SaaS/商社/製造/金融
- 対象部門
- 人事/採用
- 対象業務
- 内容確認・チェック/書類作成
- 主な課題
- 属人化している/書類作成に時間がかかる/確認ミスが多い
- AIで行う処理
- 生成
- 主な効果
- 判断支援/品質標準化/工数削減
- 導入難易度
- ★★★☆☆
- 実装レベル
- 本格構成
- 費用感
- API連携(中)
- 人間の確認
- 条件付き
01導入前 / 導入後の業務フロー
- 人事の担当が、対象部門の管理職にヒアリングの日程を取る
- 1時間ほど話を聞き、メモを取る
- 等級の定義書を開き、その等級の役割と要件を確かめる
- 職務記述書の書式に、職務の目的・主な責任・成果の指標・必要な知識とスキル・経験を書き起こす
- 管理職に送り、直しをもらう
- 人事の中で、等級の定義と合っているか、書いてはいけない表現が無いかを読み合わせる
- 確定して SharePoint に置き、人事システムの職種・等級と紐づける
- 人人事の担当がこれまでどおりヒアリングを行い、メモを SharePoint の決まった場所に保存する。職種と等級を選ぶ
- 自動保存をきっかけに Azure Logic Apps が動き、等級の定義書の該当等級の箇所、同じ職種の他の等級の職務記述書、書いてはいけない条件の一覧を集める
- 自動Azure OpenAI が、決まった型で職務記述書を下書きし、人に紐づいた記述・等級の定義との食い違い・書いてはいけない条件を、引用つきで返す
- 自動Azure Functions が、書いてはいけない言葉の辞書でも下書きとメモを照らし、引用が原文に実在するかを確かめる
- 自動下書きを Word の書式に流し込み、指摘の一覧を添えて担当へ通知する
- 人担当が指摘の一覧から先に読み、食い違いをどう扱うかを決め、下書きを直す
- 人管理職に確認を依頼し、確定する
各工程の詳しい説明を読む
- 人事の担当が、対象部門の管理職にヒアリングの日程を取る
- 1時間ほど話を聞き、メモを取る
- 等級の定義書を開き、その等級の役割と要件を確かめる
- 職務記述書の書式に、職務の目的・主な責任・成果の指標・必要な知識とスキル・経験を書き起こす
- 管理職に送り、直しをもらう
- 人事の中で、等級の定義と合っているか、書いてはいけない表現が無いかを読み合わせる
- 確定して SharePoint に置き、人事システムの職種・等級と紐づける
(a)1本書くのに半日かかる。 4番目の書き起こしは、メモを読み返しながら型の項目ごとに文を作る作業です。メモの言葉は話し言葉で、職務記述書の言葉にするのに時間がかかります。
(b)書き手によって粒度が違う。 同じ「主な責任」でも、ある担当は3行、別の担当は12行書きます。職種どうしを比べて等級を考えるための文書なのに、比べられない書き方になっています。
(c)いまの担当者の話がそのまま要件になる。 「英語の契約書が読める」が必要な知識に入り、「土日の対応」が主な責任に入ります。その席の人が替わったとき、職務記述書は次の人を探す役に立ちません。
(d)書いてはいけない条件が残る。 管理職のメモには「若手が望ましい」「体力のある人」「全国どこでも行ける人」が普通に出てきます。6番目の読み合わせで拾えればよいのですが、月末に本数が重なると読み合わせが省かれます。
- 【人】 人事の担当がこれまでどおりヒアリングを行い、メモを SharePoint の決まった場所に保存する。職種と等級を選ぶ
- 【自動】 保存をきっかけに Azure Logic Apps が動き、等級の定義書の該当等級の箇所、同じ職種の他の等級の職務記述書、書いてはいけない条件の一覧を集める
- 【自動】 Azure OpenAI が、決まった型で職務記述書を下書きし、人に紐づいた記述・等級の定義との食い違い・書いてはいけない条件を、引用つきで返す
- 【自動】 Azure Functions が、書いてはいけない言葉の辞書でも下書きとメモを照らし、引用が原文に実在するかを確かめる
- 【自動】 下書きを Word の書式に流し込み、指摘の一覧を添えて担当へ通知する
- 【人】 担当が指摘の一覧から先に読み、食い違いをどう扱うかを決め、下書きを直す
- 【人】 管理職に確認を依頼し、確定する
6番目が、この設計の分かれ目です。 下書きを読む前に指摘の一覧を読みます。食い違いの指摘は、職務を直すか等級を見直すかという人事の判断の入口で、下書きの文の出来よりも先に決めることだからです。
4番目の辞書の照合は、AIの指摘と重ねて置きます。 「若手」「体力」「転勤」のような言葉は、辞書で確実に拾えます。AIは言い回しを変えた表現を拾い、辞書は決まった言葉を落とさない。 二重にしておけば、どちらかの漏れを他方が拾います。
02今回想定するシステム構成
ヒアリングメモ(SharePoint)/職種と等級の選択 │ ▼【トリガー】メモの保存 Azure Logic Apps ── 等級の定義書の該当箇所・同じ職種の職務記述書・書いてはいけない条件の一覧を集める ▼ Azure OpenAI(構造化出力) │ 職務記述書の下書き/人に紐づいた記述/等級の定義との食い違い/書いてはいけない条件 ▼ Azure Functions ── 辞書での照合・引用の実在確認・Word の書式への流し込み ▼ SharePoint(下書きと指摘の一覧)── Teams で担当へ通知 ▼ 【人事が指摘を読んで判断し、下書きを直す】── 管理職の確認 ── 確定
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| 生成AI | Azure OpenAI(Microsoft Foundry) | Claude API、Gemini API |
| 連携 | Azure Logic Apps(メモの保存の検知、資料の取得、通知) | Power Automate |
| 差異計算 | Azure Functions(辞書での照合、引用の実在確認、書式への流し込み) | Python のスクリプト |
| 保管 | SharePoint(ヒアリングメモ、等級の定義書、職務記述書、指摘の一覧) | 社内のファイルサーバー |
| 通知 | Microsoft Teams | Outlook のメール |
等級の定義書と職務記述書の書式は、新しく足すものではありません。 足すのは、書いてはいけない条件の一覧と、ヒアリングメモを置く場所の決まりです。一覧は、厚生労働省の公開資料と社内の採用の方針から人事と法務で作ります。
中心になるのは、Azure OpenAI の構造化出力です。 JSONスキーマを指定して、その形に沿った応答を返させます。Responses API では text.format でスキーマを渡し、strict: true にします。職務記述書の型の項目と、3種類の指摘を、それぞれ決まった形で受け取れます。
スキーマには決まりがあります。 すべてのフィールドを required に並べ、オブジェクトごとに additionalProperties: false を置きます。省略してよい項目は ["string", "null"] のように null との共用体で表します。入れ子は5段まで、オブジェクトのプロパティは合わせて100個までです。minLength や maxItems などのキーワードは使えないので、文字数や件数の制限はプログラムの側で確かめます。
03どうやって実装するのか
処理の起点を決める
ヒアリングメモが SharePoint の決まったフォルダに保存されたことを起点にします。 メモと一緒に、職種と等級を選ぶ欄を持たせます。職種と等級はメモの文章から推測させません。 どの等級の定義と照らすかが変わってしまうからです。
改訂のときは、既存の職務記述書を選んでから動かします。 新規と改訂で入力が違います。改訂では既存の職務記述書とメモの両方を渡し、どこを変えたかの差分も返させます。
等級の定義書が改定されたときは、その等級の職務記述書を一覧にして担当へ知らせます。 改定のたびに全部を書き直す必要はありませんが、食い違いの照合をやり直す対象にはなります。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| ヒアリングメモ | 管理職が話した職務の内容、期待、困っていること | SharePoint |
| 職種と等級 | 選んだ職種のコードと等級(G1〜G8) | メモの保存の欄 |
| 等級の定義 | その等級と、上下1等級の役割・責任の範囲・求められる成果・要件 | 等級の定義書 |
| 同じ職種の職務記述書 | 上下の等級の職務記述書(あれば) | SharePoint |
| 書いてはいけない条件の一覧 | 年齢・性別・身長体重体力・転勤・本人に責任のない事項などの区分と、言葉の例 | 人事と法務で作る一覧 |
| 職務記述書の型 | 項目と、各項目の書き方の決まり(文の数、語尾) | 人事の書式 |
質を決めるのは、3行目の「上下1等級」です。 その等級の定義だけを渡すと、食い違いの指摘は「この等級らしくない」というぼんやりしたものになります。上下の等級の定義を並べると、「この記述はG5の定義の言葉に近い」と、どちらにずれているかを示せます。
4行目の同じ職種の職務記述書は、書き方をそろえるためです。 同じ職種のG3とG5の職務記述書があれば、G4はその間に収まる書き方になります。第3章(b)の粒度のばらつきを、ここで抑えます。
データの取得方法を決める
| 取るもの | どこから | 方法 |
|---|---|---|
| ヒアリングメモ | SharePoint のフォルダ | Logic Apps の SharePoint のトリガーで保存を検知し、本文を取る |
| 等級の定義 | 等級の定義書 | 等級ごとの見出しで分けた写しを用意しておき、該当の等級と上下を取る |
| 同じ職種の職務記述書 | SharePoint | 職種のコードと等級で探す |
| 書いてはいけない条件の一覧 | SharePoint の表 | 全件を取る |
等級の定義書は、等級ごとに分けた写しを用意しておきます。 定義書1冊を毎回渡すと、照らす相手が多すぎて、どの等級の定義を根拠にした指摘かが曖昧になります。 改定のたびに写しも作り直します。
AIへ渡す前に整形する
- メモの整形 … 箇条書きと話し言葉が混ざったメモを、段落ごとに番号を振ってそのまま渡します。言い換えや要約はしません
- 人の名前の置き換え … メモに出てくる社員の名前を「担当者A」のように置き換えます。職務記述書に人の名前は要りません
- 等級の定義の切り出し … 選んだ等級と上下1等級の定義を、等級の見出し付きで並べます
- 辞書の照合(1回目) … 書いてはいけない言葉の辞書でメモを照らし、当たった段落番号を控えます
- 長さの確認 … メモが極端に短いもの(数行)は、下書きを作らず担当へ戻します
- 改訂の準備 … 改訂のときは、既存の職務記述書にも項目ごとの番号を振って渡し、差分を項目の番号で返せるようにします
2番目の置き換えは、人に紐づいた記述を見分けるためにも効きます。 「担当者Aは英語の契約書も読める」と書かれていれば、それがいまの担当者の話だと読み取れます。名前が残っていると、AIは要件と事実の区別をつけにくくなります。
5番目は、下書きの質を守るためです。 材料が足りないメモから作った下書きは、等級の定義をなぞっただけの文書になり、一見それらしいので、足りないことに気づかれません。
AIに処理させる
させるのは、決まった型の下書きと、3種類の指摘です。
| 出すもの | 中身 | 根拠 |
|---|---|---|
| 職務記述書の下書き | 職務の目的、主な責任(5〜8項目)、成果の指標、必要な知識とスキル、経験 | ヒアリングメモと等級の定義 |
| 人に紐づいた記述 | いまの担当者の能力や働き方を述べた記述 | メモの段落番号と引用 |
| 等級の定義との食い違い | 選んだ等級の定義と合わず、上下の等級の定義に近い記述 | メモの引用と、等級の定義の引用 |
| 書いてはいけない条件 | 年齢・性別・身長体重体力・転勤・本人に責任のない事項などに当たる記述 | メモか下書きの引用と、一覧の区分 |
3行目の食い違いは、両方の引用をそろえさせます。 メモの「部下5名の評価を行う」と、G4の定義の「個人として成果を出す」を並べて返せば、担当は等級の定義書を開かずに判断できます。
2行目の「人に紐づいた記述」は、次のように見分けさせます。
| メモの記述 | 見分け | 職務記述書での扱い |
|---|---|---|
| 「担当者Aは英語の契約書も読める」 | いまの担当者の能力 | 指摘に回す。職務に英語が要るかは管理職に聞き直す |
| 「海外の取引先との契約書を月に数件確認する」 | 職務の内容 | 主な責任に入れる |
| 「担当者Bは土日もよく対応してくれる」 | いまの担当者の働き方 | 指摘に回す。休日の対応が職務かは管理職に聞き直す |
| 「障害時は休日も当番で対応する」 | 職務の内容 | 主な責任に入れ、書いてはいけない条件の確認にも回す |
違いは、主語が人か職務かです。 同じ「英語」「休日」の話でも、人の能力や善意として語られたものは要件にせず、職務として繰り返し発生することとして語られたものだけを下書きに入れます。
4行目の区分は、厚生労働省の公開資料に沿って一覧に持たせます。
| 区分 | 例 | 出典の趣旨 |
|---|---|---|
| 年齢 | 「若手」「30代まで」 | 募集・採用で年齢を理由とした制限は禁止。例外は資料で確認 |
| 性別 | 「〇〇レディ」「男性歓迎」 | 性別を表す職種名、一方の性を優遇する表現は違法事例 |
| 身長・体重・体力 | 「体力に自信のある方」 | 合理的な理由がない場合は間接差別として禁止 |
| 転勤 | 「全国転勤に応じられる方」 | 合理的な理由がない場合は間接差別として禁止 |
| 本人に責任のない事項・思想信条 | 本籍・家族・宗教などに関わる記述 | 就職差別につながるおそれがある事項 |
| させないこと | 理由 |
|---|---|
| 等級の格付けの判断 | 職務を直すか等級を見直すかは人事が決める |
| 書いてはいけない条件に当たるかの最終判断 | 年齢制限の例外や業務上の必要性は、人事と法務が確かめる |
| メモに無い責任や要件の追加 | 等級の定義をなぞって埋めると、現場の実態と離れる |
| 人に紐づいた記述の言い換え | 言い換えると、いまの担当者の話であることが見えなくなる |
2行目は、拾いすぎを恐れないためでもあります。 「夜間の障害対応がある」はインフラの職務では業務上の必要がある記述かもしれません。AIには該当しうるものを広く拾わせ、要るかどうかは人事が決めます。
指示内容を固定する
あなたは人事部で職務記述書を下書きする係です。
渡すヒアリングメモ・等級の定義・同じ職種の職務記述書だけを根拠にしてください。
【下書きの型】
- 職務の目的(2文以内)
- 主な責任(5〜8項目。各項目は「〜する」で終える)
- 成果の指標(3〜5項目)
- 必要な知識とスキル(職務に求めるものだけ)
- 経験(年数ではなく、経験の中身で書く)
【指摘の出し方】
1. person_specific:いまの担当者の能力や働き方を述べた記述。
職務に求めることとは分けて、メモの段落番号と原文を引用してください。
下書きには入れないでください。
2. grade_mismatch:選んだ等級の定義と合わない記述。
メモの原文と、近い等級の定義の原文を両方引用してください。
3. restricted:年齢・性別・身長体重体力・転勤・本人に責任のない事項・
思想信条に関わる記述。メモか下書きの原文と、一覧の区分を書いてください。
業務上の必要があるかもしれないものも、拾って理由を書いてください。
【厳守事項】
- メモに無い責任や要件を、等級の定義から補って書かないでください。
足りない項目は空にし、missing_info に何が足りないかを書いてください。
- 引用は原文を一字一句そのまま写してください。要約しないでください。
- 等級を上げるべき、下げるべきと書かないでください。
- 書いてはいけない条件に当たる記述は、下書きに入れないでください。
指摘の一覧にだけ残してください。
- 「担当者A」などの置き換えられた名前を下書きに書かないでください。
【職種と等級】{job_family} / {grade}
【等級の定義(選んだ等級と上下1等級)】{grade_definitions}
【同じ職種の職務記述書】{related_jds}
【書いてはいけない条件の一覧】{restricted_list}
【ヒアリングメモ(段落番号付き)】{memo}
「等級の定義から補って書かない」がいちばん大事な制約です。 メモが薄いと、AIは等級の定義の言葉で主な責任を埋めます。埋まった下書きはそれらしく見えますが、どの職種でも同じ文書になります。 足りない項目は空にし、ヒアリングで聞き足すべきことを missing_info に返させます。
「下書きに入れず、指摘の一覧にだけ残す」は、書いてはいけない条件が外へ出る経路を断つためです。 下書きに残したまま印だけ付けると、印を見落とした人が求人票へ写します。
出力形式を固定する
次の形のJSONで受け取ります。 構造化出力のスキーマとして渡し、strict: true にします。
{
"job_family": "",
"grade": "",
"draft": {
"purpose": "",
"responsibilities": [""],
"kpis": [""],
"skills": [""],
"experience": [""]
},
"findings": [
{
"type": "person_specific | grade_mismatch | restricted",
"memo_paragraph": 0,
"quote": "",
"grade_quote": "",
"restricted_category": "age | sex | physical | relocation | personal | none",
"note": ""
}
],
"missing_info": [""]
}
1つ目の理由は、findings を下書きと別に持てることです。 担当は指摘の一覧を先に読み、判断を決めてから下書きを直します。指摘が下書きの文の中に埋もれていると、読み飛ばされます。
2つ目は、引用を機械的に確かめられることです。 Azure Functions が quote をメモと下書きの中から、grade_quote を等級の定義の写しの中から探します。見つからない指摘は「引用不一致」として一覧の先頭に出します。 AIが言い換えた文や作った文を、判断の材料にしないためです。
3つ目は、restricted_category で辞書の照合と突き合わせられることです。 辞書が拾ってAIが拾わなかったもの、AIが拾って辞書が拾わなかったものを、両方とも一覧に出します。
| 照合の結果 | 一覧での扱い |
|---|---|
| 辞書とAIの両方が拾った | 指摘として表示 |
| 辞書だけが拾った | 「辞書のみ」の印を付けて表示 |
| AIだけが拾った | 「AIのみ」の印を付けて表示。辞書に足すかを検討する |
| 下書きに辞書の言葉が残っている | 最上段に表示。 下書きに入れない指示が守られていない |
4行目は、指示の守られ方を見張るためです。 本来は起きないはずの状態なので、起きたら下書きを確定させません。
担当に届く指摘の一覧の例です。
【職種・等級】インフラエンジニア/G4
【警告】なし
【等級の定義との食い違い】1件
メモ¶7「チームの3名の目標設定と評価を担う」
G5の定義「メンバーの目標設定と評価を行い、チームの成果に責任を持つ」に近い
【書いてはいけない条件】2件
メモ¶4「体力のある若手が望ましい」(区分:年齢/身長・体重・体力)[辞書・AI]
メモ¶9「障害時は休日も当番で対応する」(区分:なし。業務上の必要の確認)[AIのみ]
【人に紐づいた記述】1件
メモ¶5「担当者Aはネットワークの資格を3つ持っている」
【聞き足すこと】成果の指標が1項目しか無い
一覧の並びは、判断の重い順にしています。 食い違いは等級の論点になりうるので最初に、書いてはいけない条件は外へ出る前に止めるので次に置きます。人に紐づいた記述と聞き足すことは、管理職との確認の場で片づくものです。
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| SharePoint | Logic Apps のトリガーと取得 | メモの保存の検知、等級の定義・職務記述書・一覧の取得 |
| Azure OpenAI | Responses API(構造化出力) | 下書きと指摘 |
| Azure Functions | HTTP の呼び出し | 辞書の照合、引用の確認、Word への流し込み |
| Microsoft Teams | 通知 | 下書きと指摘の一覧の到着 |
| 人事システム | 書き込まない | 確定後に人が紐づける |
人事システムへは書き込みません。 職務記述書と職種・等級の紐づけは、管理職の確認を経て人事が確定した後に、人が行います。この構成が出すのは、下書きと指摘までです。
人が確認する
下書きは、すべて人事の担当が読んで直します。 読む順は次のとおりです。
- 最上段の警告を見る … 下書きに辞書の言葉が残っているもの、引用不一致のもの
- 食い違いの指摘を読む … 職務を直すか、等級を見直す論点として上長に上げるかを決める
- 書いてはいけない条件を確かめる … 業務上の必要があると判断したものは、その理由を記録する
- 人に紐づいた記述を確かめる … 職務に求めることとして残すべきものがあれば、言葉を職務の言葉に直して入れる
- 下書きを直す …
missing_infoに挙がったものは、管理職に聞き足す
3番目で理由を記録するのは、後から問われたときのためです。 「夜間の障害対応がある」を残すなら、それが職務に必要な理由を書いておきます。理由の無いまま残った条件は、求人票に写された時点で説明できなくなります。
例外に対処する
| 起きること | 対応 |
|---|---|
| 職種と等級が選ばれていない | 動かさない。担当に選んでもらう |
| メモが極端に短い | 下書きを作らず、聞き足す項目の例を添えて担当へ戻す |
| その等級の定義が見つからない | 動かさない。等級の定義書の写しを確かめる |
| 構造化出力が拒否(refusal)を返す | 下書きを作らず、メモとともに担当へ戻す |
| 引用が原文に見つからない | 「引用不一致」として一覧の先頭に出す |
| 下書きに辞書の言葉が残っている | 最上段に出し、確定させない |
| 等級の定義書が改定された | その等級の職務記述書を一覧にし、照合のやり直しの対象にする |
いちばん多いのは2行目です。 ヒアリングが短く終わった職種や、管理職が書面で答えた職種のメモは薄くなりがちです。下書きを作らずに戻すと手間が増えたように見えますが、薄いメモから作った下書きを直すほうが、聞き足すより時間がかかります。 戻すときは、missing_info の形で聞き足す項目の例を添えます。
記録を残す
- ヒアリングメモ(名前の置き換え前と後)、選んだ職種と等級
- 渡した等級の定義の写しの版、同じ職種の職務記述書
- AIが返したJSONの全文と、辞書の照合の結果
- 担当が指摘をどう扱ったか(職務を直した/等級の論点として上げた/業務上の必要があるとして残した、とその理由)
- 確定した職務記述書と、管理職の確認の日付
4つ目の記録が、等級制度の見直しの材料になります。 同じ等級で食い違いの指摘が続くなら、職務の側ではなく等級の定義の書き方に問題があるかもしれません。
名前を置き換える前のメモは、見られる人を人事の担当に限ります。 管理職が部下について話した内容が含まれるため、職務記述書と同じ場所に置きません。生成AIに渡すのは置き換えた後のメモだけです。
04実装レベルの3段階
半自動化で、1本240分が140分程度になります。 資料を集めて下書きを作る時間は縮みますが、下書きを書式に写す作業と、書いてはいけない表現の読み合わせが残ります。本格構成で90分になり、この段階が本記事の想定です。 差が出るのは、辞書の照合と引用の確認が、読み合わせの大半を肩代わりするからです。 段階を飛ばさないでください。 半自動化の一覧を1か月見ると、辞書に足すべき言葉と、等級の定義の書き方の弱いところが先に分かります。
05工数削減シミュレーション
導入後 40件 × 90分 ÷ 60 = 60 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 職務等級制度を入れた、または入れようとしている従業員数百名規模の会社で、職種ごとの職務記述書を人事の数名で書いている場合。部門ごとに順に職務記述書を整備していて、毎月何十本かの新規と改訂がある場合。職務記述書を社内公募や求人票の元にも使う場合。
- 職種が少なく、職務記述書が数本で足りる場合。等級の定義が文書になっておらず、何と照らせばよいかが決まっていない場合。なお、等級の格付けや処遇の決定は、この構成では代替できません。
07最小構成で試す方法
- 先月書いた職務記述書から5本を選ぶ(書き手の違うもの、等級の違うものを混ぜる)
- その5本のヒアリングメモと、該当する等級と上下1等級の定義を用意する
- メモの社員の名前を置き換えてから、手元のAIサービスに貼る
- 第7章の指示の例を使い、下書きと3種類の指摘を出させる
- 出てきた下書きと指摘を、確定した職務記述書と、当時の読み合わせの記録と突き合わせる
| 出てきた内容 | 判断 |
|---|---|
| 当時の読み合わせで直した箇所が、指摘として出た | Logic Apps と構造化出力の連携に進む |
| メモに無い責任が、等級の定義の言葉で埋まった | 指示の書き方で直る。補わない旨を強める |
| 食い違いの指摘がぼんやりしている | 上下の等級の定義を渡しているかを確かめる |
5本は少なく見えますが、1本あたりの材料が多いので足ります。 見るべきは、当時の人事が苦労して見つけた食い違いを、指摘として拾えるかです。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
| いまの担当者の話がそのまま要件になる | 名前を置き換え、人に紐づいた記述を指摘として分ける |
| メモに無い責任が等級の定義の言葉で埋まる | 補わない旨を指示し、missing_info に返させる |
| 食い違いの指摘がぼんやりする | 上下1等級の定義を並べて渡す |
| 書いてはいけない条件が下書きに残る | 下書きに入れず指摘にだけ残す。辞書で下書きを照らして見張る |
| 業務上の必要がある条件まで消してしまう | AIには広く拾わせ、残すかは人事が理由を付けて決める |
| 引用が原文に無い | プログラムで照合し、一覧の先頭に出す |
| 文字数や項目数の制限がスキーマで書けない | minLength・maxItems は使えない。プログラムで確かめる |
| 職種と等級をメモから推測する | 保存の欄で選ばせる |
| 等級の定義書の改定が反映されない | 写しを作り直し、該当の職務記述書を照合のやり直しの対象にする |
| 職務記述書から求人票へ写すときに条件が戻る | 求人票を作る段階でも同じ一覧と辞書で照らす |
上の2行が、この構成の失敗のほとんどです。 どちらも「職務記述書が、職務ではなく別の何かを写す」という同じ問題です。前者は人を、後者は等級の定義を写します。材料に無いことを書かせない設計が、両方に効きます。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: ヒアリングメモ(管理職が話した部下の仕事ぶりを含む)、等級の定義書、職務記述書、そして書いてはいけない条件の一覧です。
- メモの社員の名前を置き換えてから渡す … 職務記述書に人の名前は要りません。部下の評価に近い話がメモに混ざることもあるので、名前を外してから生成AIに渡します
- Azure OpenAI に渡すデータの扱いを確かめる … Microsoft の説明では、プロンプトと出力は他の顧客や OpenAI に提供されず、許可なく基盤モデルのトレーニングに使われないとされています。「グローバル」や「DataZone」の種類でデプロイすると、処理は地域の外で行われることがあります。 デプロイの種類を社内の規程と照らしてください
- 等級の格付けを機械に置かない … 食い違いの指摘は判断の材料です。職務を直すか等級を見直すかは、人事と上長が決めます
- 書いてはいけない条件の最終判断を人が行う … 年齢制限の例外や業務上の必要性は、厚生労働省の資料と自社の方針に照らして人事と法務が確かめます
- 求人票へ写すときにもう一度照らす … 職務記述書から求人票を作る段階で、同じ一覧と辞書で照らします。職務記述書の段階で残した条件も、募集に使ってよいかは別に確かめます
誤りが起きた場合のリスクは、書いてはいけない条件が求人票まで届くことと、特定の人の写しが職務記述書として確定することの2つです。 前者は外へ出てから問題になり、後者は等級制度の運用の中で静かに効いてきます。どちらも、指摘を下書きと分けて先に読む運用で防ぎます。
10まず何から始めるか
1週目:書いてはいけない条件の一覧を作る
厚生労働省の公正な採用選考の資料、年齢制限の禁止の資料、男女均等な採用選考のルールから区分を取り、自社の過去の職務記述書と求人票で使われた言い回しを足して、一覧と辞書を作ります。法務の確認を受けます。
2週目:5本で試す
先月の職務記述書から5本を選び、手元のAIサービスで下書きと指摘を出させます。当時の読み合わせで直した箇所が指摘に出るかを最優先で見ます。
3週目:等級の定義書を等級ごとの写しに分ける
G1からG8の定義を等級ごとの写しに分け、SharePoint に置きます。ヒアリングメモを置くフォルダと、職種・等級を選ぶ欄を決めます。
4週目:メモの保存から指摘の一覧までをつなぐ
Logic Apps でメモの保存を検知し、構造化出力で下書きと指摘を出し、一覧に書き出すところまで作ります。 Word への流し込みはまだ行いません。
2か月目: 辞書の照合と引用の確認を足し、指摘の扱いの記録を取り始めます。3か月目以降: Word の書式への流し込みと通知を足し、1本240分が何分になったかを実測します。「辞書のみ」「AIのみ」の指摘を見て辞書を育て、下書きに辞書の言葉が残る件数がゼロのまま続いた時点で、この構成は完成です。
11関連ユースケース
12この仕組みを理解するための記事
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
構造化出力が Chat Completions API(response_format)と Responses API(text.format)で使えること。すべてのフィールドを required にし、additionalProperties: false を置くこと。null との共用体で省略可能な項目を表すこと。最大100個のオブジェクトのプロパティ、最大5段の入れ子であること。minLength・maxLength・minItems・maxItems などがサポートされないこと | Microsoft Learn: Azure OpenAI で構造化出力を使用する方法 | 2026-10-12 |
| プロンプトと出力が他の顧客や OpenAI に提供されず、許可なく基盤モデルのトレーニングに使われないこと。グローバル/DataZone のデプロイでは処理の場所が地域の外になりうること | Microsoft Learn: データ、プライバシー、セキュリティ | 2026-10-12 |
| 就職差別につながるおそれがある14事項(本籍・出生地、住宅状況、家族、生活環境・家庭環境、宗教、人生観・生活信条、思想、購読新聞・雑誌・愛読書、支持政党、尊敬する人物、労働組合・学生運動などの社会運動、身元調査など、合理的・客観的に必要性が認められない健康診断、本人の適性・能力に関係ない事項を含んだ応募書類) | 厚生労働省 公正採用選考特設サイト: 採用選考時に配慮すべき事項 | 2026-10-12 |
| 労働施策総合推進法(旧:雇用対策法)が募集・採用で年齢を理由とした制限を設けることを禁止し、平成19年の改正で義務化されたこと。例外事由は同ページのPDF(令和7年4月1日時点)で示されていること | 厚生労働省: 募集・採用における年齢制限禁止について | 2026-10-12 |
| 男女雇用機会均等法が募集・採用での性別を理由とする差別を禁止していること(法第5条)。合理的な理由がない場合の身長・体重・体力の要件、転居を伴う転勤に応じることの要件が間接差別として禁止されていること(法第7条)。「ウエイター」「○○レディ」「男性歓迎」「女性向きの職種」などが違法事例とされていること | 厚生労働省: 男女均等な採用選考ルール(PDF) | 2026-10-12 |
書いてはいけない条件に当たるか、業務上の必要があるかは、自社の人事と法務で、必要に応じて都道府県労働局に確かめてください。 本記事は上の公開資料で確認できた範囲だけを扱っています。年齢制限の禁止の例外事由は、本記事では列挙していません。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-1262)についてのご相談はこちらから。
