人材紹介会社で新しい求人を受けたときに、過去の求人票と企業ヒアリングの記録を職種・条件・業界で探し、書き方の参考と不足しがちな条件を担当に返す
新しい求人のヒアリングの記録を入れると、職種・条件・業界の近い過去の求人票を探し、書き方の参考になるものと、似た求人で後から書き足された条件を、件数と根拠付きで返します。
- 生成AI
- ChatGPT/Claude/Gemini
- AIサービス
- Azure AI/Google Vertex AI/OpenSearch
- 対象業界
- IT・SaaS/人材/広告
- 対象部門
- 営業
- 対象業務
- 情報検索/比較検討
- 主な課題
- 属人化している/情報が見つからない/書類作成に時間がかかる
- AIで行う処理
- 検索(RAG)
- 主な効果
- 品質標準化/属人化解消/教育コスト削減/検索時間短縮
- 導入難易度
- ★★★☆☆
- 実装レベル
- 本格構成
- 費用感
- RAG・個別開発(大)
- 人間の確認
- 条件付き
01導入前 / 導入後の業務フロー
- 法人担当が企業とヒアリングを行い、記録を案件管理の仕組みに残す
- 案件管理の仕組みで、職種名や業界の言葉を変えながら過去の求人票を探す
- 出てきた求人票を何件か開き、仕事内容の書き方と必須の経験の置き方を読む
- 先輩の担当者に「この職種で書きやすかった求人はどれか」を聞く
- 自分の経験から、ヒアリングで聞き漏れた条件がないかを考え、企業に追加で確かめる
- 求人票を書き、社内の確認に回す
- 自動案件管理の仕組みから、前日に作成・改訂された求人票と、候補者からの質問の記録を取り出す
- 自動改訂の履歴から、最初の版と比べて書き足された項目を取り出す
- 自動Claude が、候補者からの質問を「どの条件についての質問か」で仕分ける
- 自動求人票ごとに、書き足された項目・質問の多かった条件・推薦と応募の件数を付けて検索基盤に登録する
- 人法人担当がヒアリングの記録を案件管理の仕組みに残し、「過去の求人を見る」を押す
- 自動ヒアリングの記録に近い過去の求人票を、職種・業界で絞って探す
- 自動上位の求人について、後から書き足された項目と、質問の多かった条件を数える
- 自動明示が必要な事項がヒアリングの記録にそろっているかを、項目の有無の規則で確かめる
- 自動Claude が、書き方の参考になる求人と、聞き漏れやすい条件を、求人番号付きでまとめる
- 人法人担当がまとめを読み、企業に追加で確かめることを決めて、求人票を書く
各工程の詳しい説明を読む
- 法人担当が企業とヒアリングを行い、記録を案件管理の仕組みに残す
- 案件管理の仕組みで、職種名や業界の言葉を変えながら過去の求人票を探す
- 出てきた求人票を何件か開き、仕事内容の書き方と必須の経験の置き方を読む
- 先輩の担当者に「この職種で書きやすかった求人はどれか」を聞く
- 自分の経験から、ヒアリングで聞き漏れた条件がないかを考え、企業に追加で確かめる
- 求人票を書き、社内の確認に回す
(a)言葉が違うと見つからない。 職種名は企業ごとに違います。「カスタマーサクセス」「CS」「導入コンサルタント」「オンボーディング担当」が同じような仕事を指していても、キーワード検索では別々に探すしかありません。
(b)どれが良い求人票か分からない。 見つかった求人票のうち、候補者が集まった求人と、質問ばかり来て止まった求人の区別が一覧からは付きません。読んだものを手本にしたら、後者だったということが起きます。
(c)聞き漏れが、出したあとに分かる。 「転勤はあるか」「リモートは週何日か」「残業代は固定か」。候補者から聞かれて初めて、ヒアリングで聞いていなかったことに気づきます。 企業に確かめ直す間、推薦が止まります。
(d)新しい担当者ほど時間がかかる。 4番目と5番目は経験の差がそのまま出ます。入社1年目の担当者の求人票は、出したあとの書き足しが多いという傾向が、どの紹介会社にもあります。
取り込み(毎晩)
- 【自動】 案件管理の仕組みから、前日に作成・改訂された求人票と、候補者からの質問の記録を取り出す
- 【自動】 改訂の履歴から、最初の版と比べて書き足された項目を取り出す
- 【自動】 Claude が、候補者からの質問を「どの条件についての質問か」で仕分ける
- 【自動】 求人票ごとに、書き足された項目・質問の多かった条件・推薦と応募の件数を付けて検索基盤に登録する
求人を受けたとき
- 【人】 法人担当がヒアリングの記録を案件管理の仕組みに残し、「過去の求人を見る」を押す
- 【自動】 ヒアリングの記録に近い過去の求人票を、職種・業界で絞って探す
- 【自動】 上位の求人について、後から書き足された項目と、質問の多かった条件を数える
- 【自動】 明示が必要な事項がヒアリングの記録にそろっているかを、項目の有無の規則で確かめる
- 【自動】 Claude が、書き方の参考になる求人と、聞き漏れやすい条件を、求人番号付きでまとめる
- 【人】 法人担当がまとめを読み、企業に追加で確かめることを決めて、求人票を書く
10番目が、この設計の分かれ目です。 まとめが返すのは過去の傾向です。似た求人で「リモートの日数」が後から書き足されていたことは、今回の企業でもそれを聞くべきだという材料にはなりますが、今回の企業の条件を決めるものではありません。 求人票に何を書くかは、ヒアリングの事実から法人担当が決めます。
8番目を規則にしているのも、意図してのことです。 明示が必要な事項がそろっているかは、書かれているかどうかの確認です。AIに任せると、似た言葉があるだけで「記載あり」と判断することがあります。
02今回想定するシステム構成
【取り込み】案件管理の仕組み(求人票・改訂の履歴・候補者からの質問) ▼【トリガー】毎晩の定時 AWS Lambda ── 改訂の履歴から書き足された項目を取り出す ▼ Claude(Amazon Bedrock)── 候補者からの質問を条件ごとに仕分け ▼ Amazon OpenSearch Service(求人票の索引。Sudachi) 【求人を受けたとき】「過去の求人を見る」ボタン(ヒアリングの記録) ▼ Amazon OpenSearch Service ├─ more_like_this(ヒアリングの記録に近い求人票)+職種・業界の絞り込み └─ sampler + terms(上位の求人で書き足された項目と、質問の多かった条件) ▼ AWS Lambda ── 明示が必要な事項の有無の確認(規則) ▼ Claude(Amazon Bedrock)── 検索結果のブロックで渡し、引用付きでまとめる ▼ 法人担当が確認 → 企業への追加の確認 → 求人票を書く
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| 検索基盤 | Amazon OpenSearch Service(Sudachi、more_like_this、sampler 集計、細かなアクセス制御) | Azure AI Search、Vertex AI Search(Agent Search) |
| 生成AI | Claude(Amazon Bedrock。質問の仕分けと、引用付きのまとめ) | Gemini API、OpenAI API |
| 連携 | AWS Lambda(取り込み、検索、規則の確認) | AWS Step Functions |
| 保管 | Amazon S3(取り込んだ求人票の写しと、検索の記録) | ― |
| 案件管理 | 既存の案件管理の仕組み | ― |
案件管理の仕組みには、書き込みません。 求人票を書くのは法人担当で、この構成が返すのは過去の求人の一覧とまとめまでです。
日本語の言葉の検索は、Sudachi のプラグインで行います。 Amazon OpenSearch Service の対応プラグインの一覧では、Sudachi Analysis が日本語向けに推奨されるものとして載っています。職種名の言い換え(「CS」と「カスタマーサクセス」)は、社内で同義語の辞書を育てて吸収します。
似た求人を探すのは、more_like_this です。 公式のドキュメントでは、入力した文や文書を解析してその文書を特徴づける語を選び、その語を含む他の文書を探す検索とされています。ヒアリングの記録をそのまま like に入れれば、職種名が違っても、仕事内容に出てくる語が近い求人票が上位に来ます。
上位の求人だけで数えるのが、sampler 集計です。 公式のドキュメントでは、sampler は各シャードで点数の高い文書だけにサブ集計を限る集計で、関連の薄い文書の長い裾を外すことで集計の質を上げられるとされています。似た求人で後から書き足された項目を数えるとき、似ていない求人まで数えないための仕組みです。
03どうやって実装するのか
処理の起点を決める
取り込みと検索で、起点が2つあります。
取り込みは毎晩の定時です。 前日に作成・改訂された求人票、候補者からの質問の記録、推薦と応募の件数を取り出します。改訂は求人を出してから数週間続くので、新しい求人だけでなく、改訂のあった求人も毎晩取り直します。
検索は、法人担当が「過去の求人を見る」を押したときに動きます。 ヒアリングの記録を案件管理の仕組みに残した直後に押してもらいます。求人票を書き終えてから見ても、企業に追加で確かめる機会が残らないためです。 ヒアリングの当日中に追加の質問を企業に送れれば、求人票を出すまでの日数が延びません。
過去6年分の約1万2千件は、別に一括で取り込みます。 古い求人票は今の明示の基準を満たしていないことがあるので、作成日を検索結果に必ず出し、令和6年4月より前の求人票には印を付けます。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| 求人票 | 職種名、仕事内容、必須・歓迎の経験、勤務地、勤務時間、給与、休日、福利厚生、雇用形態、作成日 | 案件管理の仕組み |
| 改訂の履歴 | 版ごとの各項目の値と、改訂の日付 | 案件管理の仕組み |
| 候補者からの質問 | 求人ごとの質問の文と、企業に確かめた結果 | 案件管理の仕組み |
| 推薦と応募の件数 | 求人ごとの推薦数、書類通過数、応募数 | 案件管理の仕組み |
| ヒアリングの記録(検索時) | 企業、業界、職種、仕事内容、求める経験、条件のメモ | 案件管理の仕組み |
質を決めるのは、改訂の履歴です。 「何が後から書き足されたか」は、最初の版と最後の版を比べないと分かりません。項目ごとに版が残る仕組みなら、比べるのは機械的にできます。 版が残らず上書きされる仕組みなら、取り込みを始めた日から差分をためていきます。
推薦と応募の件数は、書き方の参考を選ぶときの手がかりに使います。 ただし件数は、求人の条件や企業の知名度で大きく変わります。件数が多い求人票が、書き方の良い求人票とは限りません。 まとめでは件数を並べるだけにし、良し悪しの判断はさせません。
データの取得方法を決める
求人票と改訂の履歴、候補者からの質問は、案件管理の仕組みから文字で取り出します。企業から受け取った求人依頼書のファイルは取り込みません。 求人依頼書には社外秘の組織図や年収の内訳が書かれていることがあり、検索の材料には求人票の項目で足ります。
索引の項目は、次のように持たせます。
| 項目 | 型 | 使いどころ |
|---|---|---|
job_text | text(Sudachi、term_vector 付き) | 仕事内容・必須の経験の言葉。more_like_this の対象 |
job_family | keyword | 職種の分類での絞り込み |
industry | keyword | 業界の絞り込み |
amended_fields | keyword(複数値) | 後から書き足された項目(remote、transfer、overtime_pay など) |
question_topics | keyword(複数値) | 候補者からの質問の多かった条件 |
referrals/applications | integer | 推薦と応募の件数 |
created_at | date | 古い求人票の印 |
client_id | keyword | 細かなアクセス制御の対象 |
job_text に term_vector を持たせるのは、more_like_this を速くするためです。 公式のドキュメントでは、索引に登録するときに term_vector を保存しておくと、検索のときに文を解析し直さずに重要な語を取り出せるため、大幅に速くなるとされています。
AIへ渡す前に整形する
- 書き足された項目の取り出し(取り込み時) … 最初の版で空だった、または「応相談」だった項目が、後の版で埋まったものを
amended_fieldsにします - 質問の仕分け(取り込み時) … 候補者からの質問を、Claude で条件の種類に仕分けます
- 企業名の伏せ(取り込み時) … 求人票の文に出てくる企業名・製品名を、業界と規模の言葉に置き換えた写しを検索用に持ちます
- ヒアリングの記録の整え(検索時) … 担当者の書いたメモから、企業名と担当者の氏名を伏せてから
likeに入れます - 職種名の同義語 … 「CS」「カスタマーサクセス」などを辞書でそろえます
1番目の「応相談」を空として扱うのが要点です。 最初の版に「リモート:応相談」と書かれ、後の版で「週2日まで」と書かれた求人は、ヒアリングの時点では決まっていなかったということです。これを書き足しとして数えないと、聞き漏れやすい条件の件数が少なく出ます。
3番目で企業名を伏せるのは、別の企業の求人を参考にするためです。 法人担当がまとめを読むのは、書き方を学ぶためで、他社の求人の中身を新しい企業に伝えるためではありません。
AIに処理させる
AIの仕事は2か所です。取り込み時の質問の仕分けと、検索時のまとめです。 似た求人を探すのも、書き足しを数えるのも検索基盤で、明示の有無は規則で見ます。
| 場面 | させること |
|---|---|
| 取り込み | 候補者からの質問を、リモート・転勤・残業と残業代・試用期間・評価と昇給・業務の範囲・その他に仕分ける |
| 検索 | 上位の求人について、仕事内容の書き分け方(業務の段階、1日の流れ、関わる部署など)を求人番号付きで並べる |
| 検索 | 集計で多かった書き足しの項目と質問の条件を、件数と代表的な求人番号付きで並べる |
| 検索 | 規則で「記載なし」と出た明示が必要な事項を、ヒアリングで確かめる項目として並べる |
| させないこと | 理由 |
|---|---|
| 求人票の文を書くこと | 書くのは法人担当。過去の文の言い回しを写すと、事実と違う条件が混ざる |
| 今回の企業の条件の推測 | 「似た求人は週2日のリモートが多い」から、今回の条件を埋めない |
| 求人票の良し悪しの評価 | 件数は条件と知名度で決まる。並べるだけにする |
| 明示の事項が法令に合っているかの判断 | 社内の担当が確認する |
| 過去の求人の年齢・性別の条件の参考提示 | いまの基準で使えない表現が残っていることがある |
1行目がいちばん外せない線です。 似た求人票を渡して「参考にして書いて」と頼むと、AIは過去の求人の条件を含んだ文を書きます。「残業月20時間程度」が、今回の企業に確かめていないまま求人票に載ることになります。
5行目は、古い求人票を取り込むときに必ず起きます。 何年も前の求人票には、今の社内の表記基準では使わない条件の書き方が残っていることがあります。取り込みの段で印を付け、まとめの対象から外します。
指示内容を固定する
取り込み時(候補者からの質問の仕分け):
あなたは人材紹介会社で、求人に寄せられた候補者からの質問を整理する担当です。
質問の文に書かれたことだけを根拠に、どの条件についての質問かを仕分けてください。
【条件の種類】
- remote:リモートワーク、出社の頻度
- transfer:転勤、勤務地の変更
- overtime:残業の時間、残業代、固定残業代
- probation:試用期間と、その間の条件
- evaluation:評価、昇給、賞与
- job_scope:業務の範囲、配置転換、担当の変更
- other:上のどれでもないもの
【厳守事項】
- 1つの質問に複数の条件が含まれるときは、すべての種類を返してください。
- 質問の文に書かれていない意図を推測しないでください。
- 候補者の氏名や経歴に触れないでください。
検索時(まとめ):
あなたは人材紹介会社の法人担当の調べものを助ける係です。
渡された検索結果と集計だけを根拠に、過去の似た求人を整理してください。
【今回のヒアリングの記録(企業名は伏せてあります)】{hearing}
【過去の似た求人】検索結果として渡します
【似た求人で後から書き足された項目の件数】{amended_counts}
【似た求人で質問の多かった条件の件数】{question_counts}
【明示が必要な事項のうち、ヒアリングの記録に無いもの】{missing_required}
【書くこと】
1. 仕事内容の書き分け方の違い(求人番号と作成日を添える)
2. 書き足しの多かった項目と、質問の多かった条件(件数を添える)
3. ヒアリングで確かめる項目の一覧(明示が必要な事項を先に)
【厳守事項】
- 求人票の文を書かないでください。言い回しの例も作らないでください。
- 今回の企業の条件を推測しないでください。
- 過去の求人の条件の値(時間、日数、金額)を、今回の参考として書かないでください。
- 推薦や応募の件数から、求人票の良し悪しを評価しないでください。
検索結果は、Claude の検索結果ブロックで渡します。 1件の求人票を1つの search_result にし、source に求人番号、title に職種名と作成日、content に仕事内容と必須の経験を項目ごとに別のテキストブロックで入れます。 公式の説明では、引用は content のテキストブロックを単位に付くので、まとめのどの文がどの求人のどの項目から来たかが分かります。この仕組みは Amazon Bedrock でも使えます。
出力形式を固定する
検索の要求は、次のように組みます。
{
"query": {
"bool": {
"must": {
"more_like_this": {
"fields": ["job_text"],
"like": "{hearing_text}",
"min_term_freq": 1,
"max_query_terms": 30,
"minimum_should_match": "30%"
}
},
"filter": [ { "term": { "job_family": "customer_success" } } ]
}
},
"size": 5,
"aggs": {
"top_similar": {
"sampler": { "shard_size": 50 },
"aggs": {
"amended": { "terms": { "field": "amended_fields" } },
"questions": { "terms": { "field": "question_topics" } }
}
}
}
}
min_term_freq を1にするのは、ヒアリングの記録が短いためです。 公式のドキュメントでは、既定は2で、入力の中でこれより少なく出てくる語は無視されます。短いメモでは、大事な語ほど1回しか出てきません。 minimum_should_match の既定は30%です。
size は5で、まとめに渡すのは上位5件です。 一方、集計は sampler で各シャードの上位50件に限ります。書き方の参考は少数で足り、傾向を数えるにはある程度の件数が要るので、2つを分けます。
まとめは、次の形のJSONで受け取ります。
{
"hearing_id": "H-2026-10-0233",
"references": [
{ "job_id": "J-2024-08812", "created_at": "2024-09-02",
"point": "業務を導入期・定着期・拡大期に分けて書いている",
"pre_2024_04": false }
],
"often_amended": [ { "field": "remote", "count": 21, "examples": ["J-2025-01177"] } ],
"often_asked": [ { "topic": "overtime", "count": 17, "examples": ["J-2024-10421"] } ],
"to_confirm": [ { "item": "就業の場所の変更の範囲", "reason": "required_missing" } ]
}
1つ目の理由は、to_confirm を、規則の結果と傾向の結果で分けられることです。 reason が required_missing なら明示が必要な事項の欠け、often_amended なら過去の傾向です。前者は必ず確かめ、後者は担当者の判断で確かめます。
2つ目は、pre_2024_04 で古い求人票を見分けられることです。 令和6年4月より前の求人票は、業務の変更の範囲などが書かれていないのが普通です。参考にするのは書き分け方で、明示の事項の書き方は参考にしません。
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| 案件管理の仕組み | 毎晩の書き出しの取得 | 求人票、改訂の履歴、候補者からの質問、件数 |
| 「過去の求人を見る」ボタン | Lambda を呼ぶ | まとめをヒアリングの記録の横に表示する |
| Amazon OpenSearch Service | 索引への登録と検索・集計 | 似た求人と、書き足し・質問の件数を返す |
| Claude(Amazon Bedrock) | Lambda からの呼び出し | 質問の仕分けと、引用付きのまとめ |
まとめは表示するだけで、案件管理の仕組みの求人票の項目には書き込みません。 求人票の画面に自動で値が入ると、確かめていない条件がそのまま出る経路ができます。
上位を企業ごとに1件までにする並べ直しは、Lambda の側で行います。 検索では上位20件ほどを取り、同じ client_id の2件目以降を落としてから5件に絞ります。集計のほうは並べ直さず、sampler の範囲のまま数えます。 同じ企業の求人で何度も同じ項目が書き足されていれば、それも傾向の1つだからです。
人が確認する
- 明示が必要な事項の欠けを先に見る …
required_missingの項目は、ヒアリングのあとで企業に必ず確かめます - 傾向の項目を選ぶ … 書き足しや質問の多かった条件のうち、今回の企業で確かめるものを担当者が選びます
- 参考の求人を開く … 引用を辿り、書き分け方を確かめます。条件の値は参考にしません
- 求人票を書いて社内の確認に回す … 明示の事項が法令に合っているかは、社内の担当が確認します
1件あたり8分を目安にします。 まとめを読み、参考の求人を1〜2件開き、企業への確認の項目を決めるまでの時間です。企業に確かめる時間と、求人票を書く時間は含めていません。
2番目で全部を確かめようとしないでください。 書き足しの多い条件を毎回すべて企業に聞くと、ヒアリングのあとの質問が長くなり、企業の採用担当の負担になります。 件数の多い上位の2〜3項目と、明示が必要な事項の欠けに絞ります。
例外に対処する
| 起きること | 対応 |
|---|---|
| 似た求人が見つからない | 「似た求人はありません」と出す。職種の絞りを外して探し直すかは担当者が選ぶ |
| 上位がすべて同じ企業の求人 | 企業ごとに1件までにして並べ直す |
| 上位が古い求人ばかり | 作成日を出し、令和6年4月より前の印を付ける |
| 書き足しの集計の件数が少ない | 件数が5件未満なら「傾向を読むには少ない」と出す |
| 今の表記基準で使えない表現を含む求人 | 取り込みで印を付け、まとめの対象から外す |
| 秘密保持の約束がある求人 | 細かなアクセス制御で、その企業の担当の役割だけが見られるようにする |
| Bedrock の呼び出しに失敗した | 似た求人の一覧と集計だけを出す |
2行目は、取引の多い企業で必ず起きます。 同じ企業の求人は語が似るので、上位を独占します。参考にしたいのは書き方の幅で、1社の書き方ではありません。
記録を残す
- 取り込んだ求人票の版と、取り出した書き足しの項目
- Claude が返した質問の仕分けと、担当者が直した仕分け
- 検索ごとのヒアリングの記録(伏せたあと)、上位の求人、集計の結果
- Claude に渡した検索結果と、返ってきたまとめと引用
- 担当者が企業に確かめた項目と、確かめた結果
- 求人を出したあとの書き足しの件数
最後の行が、この構成の効き目を測る材料です。 まとめを見て書いた求人で、出したあとの書き足しが減っているかを、職種ごとに半年単位で見ます。
04実装レベルの3段階
半自動化で、①の探す時間は大きく減ります。 ただし聞き漏れの洗い出しと明示の事項の確認は、担当者が自分で行います。本格構成で1件8分になり、この段階が本記事の想定です。 段階を飛ばさないでください。 半自動化の一覧を1か月使うと、担当者が「役に立たなかった」と言う上位の求人の型が分かります。多くは職種の絞りの粗さか、同義語の辞書の抜けです。そこを直してから集計を足すほうが、数える範囲がずれずに済みます。
05工数削減シミュレーション
導入後 300件 × 8分 ÷ 60 = 40 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 法人担当(リクルーティングアドバイザー)が企業から新しい求人を受け、ヒアリングの記録をもとに求人票を書いている人材紹介会社で、過去の求人票が数千件以上たまっているのに、似た求人を探すのが担当者の記憶とキーワード検索頼みになっている場合。求人票を出したあとに、候補者からの質問や企業への確認で条件を書き足すことが多い場合。新しく入った法人担当の求人票の質に、ばらつきがある場合。AWS を使っており、検索基盤と生成AIを同じ環境で動かせる場合。
- 扱う職種が数種類に限られ、求人票の型が決まっていて、似た求人を探す必要がほとんど無い場合。過去の求人票が案件管理の仕組みに文として残っておらず、PDFの添付だけになっている場合(先に文として取り出す必要がある)。月の新規の求人が数件の場合。なお、求人票に何を書くか、企業に何を確かめるかは法人担当が決め、労働条件の明示が法令に合っているかの最終確認は社内の担当が行います。この構成はそれを代わりに行いません。
07最小構成で試す方法
- よく扱う職種を3つ選び、各職種の過去の求人票を50件ずつ集める(企業名は伏せる)
- 各求人の最初の版と最後の版を並べ、書き足された項目に印を付ける
- 最近のヒアリングの記録を各職種5件、計15件選ぶ
- 手元のAIサービスに各職種の50件を貼り、15件それぞれについて「近い求人を3件選び、仕事内容の書き分け方の違いと、書き足しの多い項目を求人番号付きで並べてください。求人票の文は書かないでください」と指示する
- 出てきた結果を、先輩の担当者に見てもらう
| 出てきた内容 | 判断 |
|---|---|
| 先輩が「この職種ならまずこれを聞く」と言う項目が出た | 索引と集計の構築に進む |
| 求人票の文や条件の値を書いてしまう | 指示の書き方で直る。構成は有効 |
| 改訂の履歴が残っておらず、書き足しが分からない | 履歴を残す運用が先。 検索の問題ではない |
3行目が出たら、取り込みを先に始めて差分をためます。 半年ためれば、主な職種の傾向は読めるようになります。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
| 職種名が違うと見つからない | more_like_this で仕事内容の語から探す。 同義語の辞書も育てる |
| 短いメモで似た求人が出ない | min_term_freq を1にする |
| 似ていない求人まで集計される | sampler で上位に限ってから数える |
| 同じ企業の求人が上位を占める | 企業ごとに1件までにする |
| 「応相談」が書き足しとして数えられない | 空とみなす書き方の一覧を決める |
| まとめが求人票の文を書く | 文と言い回しの例を禁じる |
| 過去の条件の値が今回に入る | 値の参考提示を禁じ、まとめを求人票に書き込まない |
| 古い求人票の明示の書き方をまねる | 令和6年4月より前の印を付ける |
| more_like_this が遅い | term_vector を保存する |
| 他社の求人の中身が企業に伝わる | 企業名を伏せた写しで検索する |
上の3行が、この構成の失敗のほとんどです。 どれも、似た求人をどう探し、どの範囲で数えるかから出ています。探す仕組みと数える範囲が合っていれば、まとめは崩れません。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: 求人企業の採用の計画、求人の条件、候補者からの質問です。公開前の求人や、秘密保持の約束がある求人が含まれます。
- 秘密保持の約束がある求人を見られる役割を限る … 細かなアクセス制御の文書レベルのセキュリティで、その企業の担当の役割だけが見られるようにします。公式の説明では、役割ごとにクエリで見せる文書を絞れるとされています
- 細かなアクセス制御は最初に有効にする … 有効にするには HTTPS、保存時の暗号化、ノード間の暗号化が必要で、有効にしたあと無効にはできません
- 他社の求人の中身を、新しい企業に伝えない … 参考にするのは書き方で、条件の値ではありません。企業名を伏せた写しで検索し、まとめにも条件の値を書かせません
- 明示の事項の最終確認を人が行う … 令和6年4月から、業務の変更の範囲、就業の場所の変更の範囲、有期労働契約を更新する場合の基準の明示が必要になっています。この構成が見るのは記載の有無までで、内容が法令に合っているかは社内の担当が確認します
- 候補者の情報を取り込まない … 候補者からの質問は、質問の文と仕分けだけを取り込み、氏名と経歴は取り込みません
誤りが起きた場合のリスクは、確かめていない条件が求人票に載ることと、明示が必要な事項の欠けを見落とすことの2つです。 前者は求人票の文をAIに書かせると起き、後者は明示の確認をAIの判断に任せると起きます。文は人が書き、有無は規則で見ることで両方を防ぎます。
10まず何から始めるか
1週目:版の残り方と、空とみなす書き方を確かめる
案件管理の仕組みで、求人票の版が項目ごとに残っているかを確かめます。あわせて、「応相談」「別途相談」など空とみなす書き方の一覧を決めます。
2週目:3職種・15件で試す
よく扱う3職種の過去の求人票で、近い求人と書き足しを並べさせます。先輩の担当者の「まず聞くこと」と合うかを見ます。
3週目:索引と同義語の辞書を作る
求人票を Sudachi で索引に入れ、職種名の同義語の辞書を作ります。2週目に見つからなかった言い換えを辞書に入れます。
4週目:似た求人の一覧を出す
「過去の求人を見る」ボタンから、more_like_this の上位5件を出す運用を始めます。この時点では集計とまとめを出さず、上位の求人が担当者に役立つかを聞きます。
2か月目: 書き足しと質問の集計、明示が必要な事項の規則の確認を足します。3か月目以降: 引用付きのまとめを足し、1件20分が何分になったかを実測します。新しく入った担当者の求人票の書き足しの件数が、経験のある担当者に近づいた時点で、この構成は完成です。
11関連ユースケース
12この仕組みを理解するための記事
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
| Amazon OpenSearch Service の対応プラグインの一覧で、Sudachi Analysis が日本語向けに推奨されていること | Amazon OpenSearch Service: Plugins by engine version | 2026-10-07 |
more_like_this が入力の文や文書を特徴づける語を選び、その語を含む文書を探すこと。like に自由な文を入れられること。min_term_freq の既定が2、minimum_should_match の既定が30%、max_query_terms の既定が25であること。term_vector を保存すると速くなること | OpenSearch Documentation: More like this | 2026-10-07 |
sampler 集計が各シャードの点数の高い文書だけにサブ集計を限り、shard_size の既定が100であること | OpenSearch Documentation: Sampler aggregation | 2026-10-07 |
| 細かなアクセス制御で、文書レベル・項目レベルのセキュリティを役割ごとに設定できること。有効化に HTTPS・保存時の暗号化・ノード間の暗号化が必要で、有効にしたあと無効にできないこと | Amazon OpenSearch Service: Fine-grained access control | 2026-10-07 |
検索結果ブロック(source・title・content)で自社の文書を渡すと引用付きで答え、引用がテキストブロックを単位に付くこと。Amazon Bedrock でも使えること | Claude Docs: Search results | 2026-10-07 |
| 令和6年4月1日から、求人企業・職業紹介事業者等が募集・職業紹介を行う場合に、従事すべき業務の変更の範囲、就業の場所の変更の範囲、有期労働契約を更新する場合の基準に関する事項(通算契約期間又は更新回数の上限を含む)の明示が新たに必要になったこと | 厚生労働省: 令和6年4月より、募集時等に明示すべき事項が追加されます | 2026-10-07 |
労働条件の明示の内容と、求人票の表記の基準は、社内の法務・コンプライアンスの担当と、必要に応じて労働局に確認してください。 本記事は公開仕様と厚生労働省のページで確認できた範囲だけを扱っています。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-0684)についてのご相談はこちらから。
