Media > AI活用ユースケース > 購買 > 間接材の購入依頼を、標準品と単価契約に照らして仕分け、相見積の要否まで返す

間接材の購入依頼を、標準品と単価契約に照らして仕分け、相見積の要否まで返す

実装ステータス:構成例 技術的に実現可能な構成として設計したもの。自社未検証

購買部門に届く間接材の購入依頼を、標準品カタログと単価契約に照らして仕分け、相見積の要否と承認者まで付けた回答案を作ります。購買担当の作業は、1件ずつ調べて答えることから、出てきた回答案の根拠を確かめることに変わります。

サマリー
利用ツール
Amazon Kendra/Azure AI/ChatGPT/Claude/Make/Microsoft Copilot/n8n/OpenSearch/Power Automate
対象業界
IT・SaaS/介護/医療/建設/製造
対象部門
購買
対象業務
分類・仕分け/比較検討
主な課題
判断に時間がかかる/問い合わせが多い/属人化している
AIで行う処理
分類
主な効果
判断支援/品質標準化/工数削減
導入難易度
★★☆☆☆
実装レベル
半自動化
費用感
SaaS追加(小)
人間の確認
必須
現在工数
27.5h/月
AI導入後
10h/月
想定削減
64%
年間削減
210h
モデル条件による試算値です。実在企業の実績ではありません。

01導入前 / 導入後の業務フロー

導入前(Before)
  1. 購買担当が、共通メールまたは個人宛のチャットで購入依頼を受け取る
  2. 品名・型番・数量・希望納期・使用部署・用途がそろっているかを見る
  3. 足りない項目があれば、依頼者にメールで聞き返し、返信を待つ
  4. 標準品カタログの Excel を開き、品名や型番で検索して同等品があるかを探す
  5. 見つからない場合は、メーカー名や用途を手がかりに近い品目を目で探す
  6. 単価契約表の Excel を開き、その品目区分が契約の対象か、有効期間内かを確かめる
  7. 金額を出し、購買規程の PDF を開いて相見積の要否と承認者を確かめる
  8. 依頼者に回答を書いて返し、内容を手控えか購買システムのメモ欄に残す(残らないことも多い)
導入後(After)
  1. 依頼者が Teams でエージェントに「これを買いたい」と書き込む
  2. 自動エージェントが依頼文から品名・型番・URL・数量を取り出す
  3. 自動足りない項目(数量、希望納期、使用部署、用途)をその場で聞き返す
  4. 自動全項目がそろった時点で、標準品カタログに照会する
  5. 自動単価契約表に照会し、対象の品目区分か、有効期間内かを確かめる
  6. 自動単価と数量から金額を機械で計算する
  7. 自動購買規程から転記した判定表を当て、相見積の要否と承認者を機械で決める
  8. 自動回答の型を4つのうち1つに決め、根拠を付けた回答案を作る
  9. 購買担当が回答案と根拠を確認し、承認する
  10. 自動回答が依頼者に返り、判定結果が購買システムの依頼レコードに書き込まれる
各工程の詳しい説明を読む
  1. 購買担当が、共通メールまたは個人宛のチャットで購入依頼を受け取る
  2. 品名・型番・数量・希望納期・使用部署・用途がそろっているかを見る
  3. 足りない項目があれば、依頼者にメールで聞き返し、返信を待つ
  4. 標準品カタログの Excel を開き、品名や型番で検索して同等品があるかを探す
  5. 見つからない場合は、メーカー名や用途を手がかりに近い品目を目で探す
  6. 単価契約表の Excel を開き、その品目区分が契約の対象か、有効期間内かを確かめる
  7. 金額を出し、購買規程の PDF を開いて相見積の要否と承認者を確かめる
  8. 依頼者に回答を書いて返し、内容を手控えか購買システムのメモ欄に残す(残らないことも多い)

問題は4つあります。

(a)聞き返しの往復で時間が溶ける。 数量と納期が書かれていない依頼は判定できません。聞き返し、待ち、返信を読み、まだ足りず、もう一度聞く。 滞留している時間は数時間から数日になります。

(b)標準品カタログの検索が、表記のゆれで当たらない。 「養生テープ」と「養生用粘着テープ」、「軍手」と「作業用手袋」は同じ物ですが、Excel の検索では当たりません。担当者は記憶で言い換えて検索しており、記憶のない担当者は「標準品なし」と判定します。

(c)単価契約が効いているかどうかを見落とす。 契約の対象なのに相見積を取らせると、依頼部門に無駄な作業をさせたうえで、契約先より高い見積を集めることになります。 逆に期限切れの契約で発注すると契約単価が適用されません。

(d)判定の根拠が担当者の頭の中にある。 規程の何条によるものかを添えていない回答には、「なぜですか」という問い合わせが返り、もう一度調べ直すことになります。

  1. 【人】 依頼者が Teams でエージェントに「これを買いたい」と書き込む
  2. 【自動】 エージェントが依頼文から品名・型番・URL・数量を取り出す
  3. 【自動】 足りない項目(数量、希望納期、使用部署、用途)をその場で聞き返す
  4. 【自動】 全項目がそろった時点で、標準品カタログに照会する
  5. 【自動】 単価契約表に照会し、対象の品目区分か、有効期間内かを確かめる
  6. 【自動】 単価と数量から金額を機械で計算する
  7. 【自動】 購買規程から転記した判定表を当て、相見積の要否と承認者を機械で決める
  8. 【自動】 回答の型を4つのうち1つに決め、根拠を付けた回答案を作る
  9. 【人】 購買担当が回答案と根拠を確認し、承認する
  10. 【自動】 回答が依頼者に返り、判定結果が購買システムの依頼レコードに書き込まれる

自動化されるのは「聞き返す」「照合する」「計算する」「判定する」「書く」の5つで、残るのは「確認」と「承認」です。

9番目を自動化しないことが、この設計の中心です。 購買の判定は、依頼部門に作業を発生させる指示です。「相見積を3社から取ってください」と機械が勝手に返し、その必要がなかったら、依頼部門は数日を無駄にします。 逆に、相見積が要る案件を「そのまま発注してよい」と返せば規程違反の発注が通ります。同時に、10番目が(d)を解きます。 判定結果と根拠が依頼レコードに残るので、「なぜ相見積なのか」にそのレコードを見せるだけで答えられます。

02今回想定するシステム構成

構成図
依頼者が Teams でエージェントに依頼を書く
   ▼【トリガー】トリガーフレーズ(「〇〇を買いたい」「購入依頼」など)
依頼文から品名・型番・URL・数量を取り出す
   ▼
不足項目を質問ノードで聞き返す(数量・希望納期・使用部署・用途)
   ▼【ツール】Power Automate 経由で検索基盤へ照会
   ├──▶ 標準品カタログ(カタログ番号・標準品名・品目区分・契約単価)
   └──▶ 単価契約表(契約番号・契約先・対象品目区分・有効期間)
   ▼【機械】金額を計算し、判定表を当てる
   ├──▶ 相見積の要否(不要/2社/3社)
   └──▶ 承認者(課長/部長/購買部長/担当役員)
   ▼
回答の型を4つから決める(そのまま発注/単価契約で買える/相見積/標準品へ変更)
   ▼
根拠(カタログ番号・契約番号・規程の条項)を付けた回答案を作る
   ▼【購買担当が確認して承認する】
依頼者へ回答 ──▶ 判定結果を購買システムに書き込む
役割想定する製品代替候補
処理Microsoft Copilot StudioClaude API、OpenAI API
検索基盤Azure AI SearchAmazon Kendra、OpenSearch
連携Power AutomateMake、n8n

依頼を受ける窓口は Teams です。新しい申請画面を作らないことが重要です。 作っても、これまでどおりメールとチャットで依頼が来ます。カタログ・契約表・購買規程の置き場は SharePoint、判定結果の保存先は購買システムです。

この構成の土台は、Copilot Studio のトピックです。 トピックが会話の進行を定義します。トピックは作成キャンバスで定義し、1つのトピックに1つ以上のノードが含まれ、ノードが会話のパスを決めます。 使うノードは、質問(4項目を聞き、応答を変数に入れる)、条件(品目区分で分岐)、変数管理ツール(Power Automate のフローを呼ぶ)、メッセージトピック管理です。トピックには入力および出力のパラメータを持たせられ、リダイレクトのときに情報を渡せます。

応答するトピックの選び方は2つあります。クラシック オーケストレーションは、各トピックに設定したトリガーフレーズと自然言語理解で最適なトピックを見つける方式で、入力はフレーズと完全に一致している必要がありません。生成オーケストレーションは、トピック・ツール・ナレッジから最適な組み合わせをエージェント自身が選びます。この構成は前者から始めます。

購買規程だけをナレッジに置き、カタログと単価契約表は検索基盤に載せます。 理由は3つです。1つ目。ナレッジ ソースから返された引用は、現時点では他のツールやアクションへの入力として使えません。 カタログ番号と契約番号は後段に渡す値です。2つ目。「有効期間内か」は列の一致で決めたい処理です。3つ目。単価契約表は秘密度ラベルが付いていると、方式によってはナレッジから回答が出ません。

03どうやって実装するのか

Step1

処理の起点を決める

依頼者が Teams でエージェントに話しかけたときが起点です。 クラシック オーケストレーションでは、トピックごとにトリガーフレーズを設定します。公開ドキュメントでは、応答を理解するようにAIを訓練するには5〜10個必要とされ、長文ではなく短い語句が推奨されています。

購入依頼 / これを買いたい / 発注をお願いしたい / 消耗品を買いたい / 工具を買いたい
作業着を買いたい / 保守部品を買いたい / ライセンスを追加したい
前と同じものを買いたい / 見積を取りたい

「前と同じものを買いたい」を必ず入れてください。 実際の依頼でいちばん多い言い方で、ここを拾えないとその依頼だけが外に漏れます。フレーズは1行1フレーズのテキストファイル(最大3MB)で追加・置換できるので、届いた依頼の書き出しをそのまま流し込めます。

Step2

入力データを集める

データ中身取得元
依頼の文面と聞き返しの回答品名、型番、URL、単価、数量、納期、使用部署、用途Teams の会話と質問ノード
標準品カタログカタログ番号、標準品名、品目区分、型番、別名、単価、変更不可の印検索基盤
単価契約表契約番号、契約先、対象品目区分、単価、有効期間、最低数量同上
判定表金額の区分ごとの相見積の要否と承認者、品目区分による上書き規則規程から転記した表
購買規程相見積の取得、決裁権限、単価契約による購買、単一社購買の例外SharePoint(ナレッジ)
過去の購買履歴同じ依頼者・同じ品目の直近の発注購買システム

この構成の質を決めるのは、標準品カタログの「別名」の列です。 「軍手」「作業用手袋」「綿手袋」を同じ番号に結び付ける列がないと、(b)がそのまま残ります。

Step3

データの取得方法を決める

カタログと単価契約表: SharePoint 上の Excel を1日1回、検索基盤へ取り込みます。照会は2段構えで、1段目は型番とカタログ番号の完全一致、2段目は品名と別名の検索です。 2段目で当たったものは候補として扱い、複数あるときは購買担当に選ばせます。

購買規程: SharePoint をナレッジ ソースとして追加します。ファイルのアップロード方式は Dataverse にコピーして4〜6時間ごとに同期し秘密度ラベルをサポートせずSharePoint コネクタ方式はリアルタイムに反映され秘密度ラベルをサポートします。 規程や契約表に「社外秘」「極秘」のラベルを付けている会社は、後者を選んでください。 ラベルの付いたファイルは、前者では回答に出てきません。

Step4

AIへ渡す前に整形する

  1. 依頼文の正規化 … 品名、型番、URL、希望単価、数量らしき数字を項目名に入れます。取り出せなかった項目は空欄のままにして推測で埋めません
  2. 品目区分の判定 … 消耗品/工具/事務用品/作業着/保守部品/ソフトウェアに当てます。区分によって聞く項目と上書きの規則が変わります
  3. 不足項目の聞き返し … 数量、希望納期、使用部署、用途のうち空欄のものを順に聞きます
  4. 金額の計算 … 単価と数量をかけて税抜金額を出します。機械で行い、AIにはさせません
  5. 有効期間の判定 … 単価契約の開始日と終了日を依頼日と比べます。期限切れの契約を「使える」と判定させないための処理です
  6. 要注意の印 … 変更不可の指定がある品目、金額が大きい依頼、同じ品目を過去12か月に単価契約外で繰り返し買っている依頼に付けます

6番目の最後の条件は、UC-0128 への入口です。 月末にまとめて集約の検討に回せます。

Step5

AIに処理させる

AIにさせるのは、依頼文の読み取り(自由に書かれた依頼から品名・型番・URL・数量らしき値を取り出す)、聞き返しの文面候補の絞り込み(検索基盤が返した候補の中から依頼内容に近いものを選ぶ)、回答文の作成の4つだけです。させないことは、金額の計算、相見積の要否の判定、承認者の決定、契約の有効期間の判断、標準品の型番を作ること、そして発注です。金額と閾値と決裁権限は、桁や解釈が少しずれても文章としては自然に見えるため、確認で見落とされます。

「候補の中から選ぶ」という限定が、いちばん効く制約です。 候補リストに無い型番を、AIが答えに書いてはいけません。プロンプトで縛ったうえで、出力の側でも「回答のカタログ番号が候補リストにあるか」を機械で突き合わせます。 同等品が無ければ型3(相見積が要る)に進むだけなので、「無い」と正しく言わせてください。 それらしい型番を作ると、依頼部門は仕入先から「そんな品番はありません」と言われます。

Step6

指示内容を固定する

聞き取りの段階のエージェント指示は、次のように置きます。

あなたは購買部門の一次受けです。間接材の購入依頼を聞き取り、判定の材料をそろえます。
最終的な回答は購買担当が承認してから依頼者に返ります。あなたは承認しません。

【必ず守ること】
- 相見積が要るかどうか、誰の承認が要るかを、自分で判断しないでください。
  金額の閾値も決裁権限も、判定表から機械で決まります。
  依頼者から聞かれても「判定した結果をお返しします」とだけ答えてください。
- 標準品の候補は、渡された候補リストの中からだけ選んでください。
  リストに無いカタログ番号、型番、品名を書かないでください。
  候補が0件のときは「社内の標準品カタログには同等品がありません」と
  そのまま伝え、近そうな品を作らないでください。
- 金額を計算せず、単価も合計金額も渡された値をそのまま使ってください。
- 契約が使えるかを契約名から推測せず、渡された判定結果を使ってください。
- 依頼者に発注を指示しないでください。あなたは発注の権限を持ちません。

【聞き返すこと】読み取れなかったものを1つずつ順に聞いてください。
  1. 数量(単位も含めて)  2. 希望納期  3. 使用部署  4. 用途
「分からない」と答えた項目は空欄のまま進み、needs_human_attention に
「〇〇が未確定」と書いてください。

回答案を作る段階は、別の呼び出しに分けます。

判定結果と根拠を、依頼者に返す回答文にしてください。
判定はすでに機械で確定しています。あなたは判定を変えないでください。

【回答の型】渡された answer_type に対応する型で書いてください。
  order_as_is … そのまま発注してよい / buy_on_contract … 単価契約で買える
  quotes_required … 相見積が要る / switch_to_standard … 標準品への変更を勧める

【必ず入れること】判定の結論と、渡された根拠のすべて
  ・標準品カタログの番号と標準品名  ・単価契約の番号と契約先、有効期間
  ・購買規程の条項番号とその内容
  ・相見積が要る場合は何社から取るのか、承認者の役職、次に依頼者がすること

【書いてはいけないこと】渡されていないカタログ番号、契約番号、条項番号、金額、
単価、数量。「おそらく」などの推測。納期の見込み(仕入先に確認していない情報です)

【渡す情報】{request} {catalog_candidates} {contract_result} {amount} {decision} {evidence}

「判定を変えないでください」の一文を軽く見ないでください。 AIは文章を整えるついでに結論を言い換えます。「相見積が要ります」が「相見積を取ることをおすすめします」に変わるだけで、規程上の義務が推奨に読み替わります。 なお呼び出しを2つに分けるのは、公開ドキュメントで「JSONでのみ応答する」のような厳格な出力形式の強制が引用マーカーを抑制しうると説明されているためです。

Step7

出力形式を固定する

{
  "request_id": "",
  "normalized": { "item_name": "", "model_no": "", "quantity": 0, "unit": "",
    "need_by": "", "using_department": "", "purpose": "", "item_class": "" },
  "catalog_match": { "match_type": "exact | equivalent | none",
    "candidates": [ { "catalog_no": "", "standard_item_name": "", "unit_price": 0, "no_substitute": false } ] },
  "contract_match": { "contract_no": "", "supplier": "", "valid_to": "", "in_effect": false },
  "amount": { "unit_price": 0, "quantity": 0, "total": 0, "price_source": "catalog | contract | requested" },
  "decision": { "answer_type": "order_as_is | buy_on_contract | quotes_required | switch_to_standard",
    "quotes_count": 0, "approver_role": "", "rule_id": "", "overrides_applied": [] },
  "evidence": [ { "kind": "catalog | contract | rule", "id": "", "clause": "", "text": "" } ],
  "message_to_requester": "",
  "needs_human_attention": { "flag": false, "reason": "" }
}

AIが埋めてよいのは normalizedmessage_to_requesterneeds_human_attention だけです。 catalog_matchcontract_match は検索基盤の戻り値、amountdecision は機械の計算結果、evidence はそれらから機械で組み立てた配列です。rule_id は判定表のどの行を当てたかを表し、改訂後に「いつからどの規則で判定していたか」を追えます。

evidence に番号が列挙されていれば、購買担当は回答文を読みながら根拠を一目で照合できます。 回答文だけでは番号ごとに元の Excel を開くことになり、確認の時間が8分に戻ります。またmessage_to_requester の番号が evidence に無ければ、AIが番号を作ったということです。

Step8

システムへ連携する

つなぎ先は5つです。Teams(依頼の受け口と回答の返し先)、カタログと単価契約表(Power Automate から検索基盤へ照会)、判定表(フロー内で参照)、購買規程(ナレッジ)、購買システム(API または CSV で依頼レコードの作成と判定結果の書き込み)。書き込みは判定結果までで、発注データは作りません。

1件の税抜金額相見積承認者
3万円未満不要依頼部門の課長
3万円以上30万円未満2社依頼部門の部長
30万円以上100万円未満3社購買部長
100万円以上3社に加えて稟議担当役員

これに、品目区分による上書きを重ねます。

条件上書きの内容
有効期間内の単価契約の対象品目相見積を不要にする(回答の型は「単価契約で買える」)
ソフトウェアのライセンス金額にかかわらず情報システム部の事前確認を加える
安全にかかわる指定品(保護具など)標準品からの変更を認めない。型4を出さない
設備メーカーの純正指定がある保守部品相見積の代わりに単一社購買の理由書を求める
同じ品目を12か月に単価契約外で3回以上買っている判定は変えず、集約の検討対象として印を付ける

この上書きの表は、規程を読んだだけでは作れません。 「安全にかかわる指定品は標準品から変えない」は運用で決まっているためです。

Step9

人が確認する

全件、購買担当が確認します。確認なしで依頼者に返す設計にしません。 順番は、①needs_human_attention が真の依頼、②金額が30万円以上の依頼、③answer_typeswitch_to_standard の依頼、④それ以外、の順です。作業は、evidence の番号が実在するかを見ること標準品「なし」の判定が妥当かを見ること依頼部門に伝わる言い方かを見ることの3つです。

3つ目は機械にできません。「標準品に変えてください」は、依頼部門から見れば自分の選択を否定された通知です。 「なぜその品を選んだのか」を聞き直すのは人の仕事です。

Step10

例外に対処する

起きること対応
依頼者が数量を答えない判定を止め「数量が未確定」として購買担当に回す
依頼にURLしかなく読み取れない品名を聞き返す。URLの文字列から品名を推測させない
標準品カタログに候補が0件「同等品がありません」と返して型3に進む。型番を作らせない
候補が複数あり決めきれない候補を並べて購買担当に選ばせる。1つに絞らせない
単価契約が期限切れ/最低数量に届かない契約なしとして判定し、期限を申し送りに入れる
依頼が「前と同じもの」だけ購買履歴から候補を3件まで提示する。選ばれなければ聞き返す
判定表に当てはまる行が無い/条項が引けない判定を出さず未判定として購買担当に回す。 既定値で埋めない
回答文に evidence に無い番号がある機械で検知して差し戻す。そのまま返さない
エージェントが応答しない/依頼が緊急共通メールへの転送と、購買担当に直接つなぐトピックを残す

下から2行目は仕組みで持ってください。 回答文の「STD-」「KT-」「第〇条」の形の文字列を正規表現で拾い、evidence と照合するだけの処理です。プロンプトの制約はすり抜けるので、出力の側でも見ます。

Step11

記録を残す

  • 依頼の原文と、聞き返しのやり取りの全文
  • 検索基盤への照会条件と、返ってきた候補(採用しなかったものも含める)
  • 判定に使った rule_id、当てはめた上書きの規則、回答案と evidence
  • 購買担当が直した箇所と、直した内容
  • 承認した担当者と日時、依頼者に返した最終の回答文
  • その依頼がその後どう処理されたか(発注、取り下げ、標準品への変更)

4つ目を残すと、この構成の弱点が見えます。 同じ直しが繰り返されているなら、別名の列か上書きの規則を直せます。6つ目からは「相見積が要る」と返した依頼のうち何件で実際に取ったかが分かり、取っていないなら閾値が実態に合っていません。

04実装レベルの3段階

最小構成:カタログ・契約・判定表の抜粋を手でAIに貼り、4つの型に仕分けさせる / 仕分けの判断の下書き
半自動化:上記+Teams のエージェント化+不足項目の聞き返し+検索基盤への照会+判定表の適用 / 聞き返し、照合、金額計算、判定、回答案の作成
本格構成:上記+判定結果の購買システムへの書き込み+相見積依頼の下書き+月次の振り返り / 承認以外のほぼすべてと、判定基準の見直し

最小構成だけでも、11分が8分程度になります。 カタログと契約を人が探す時間が短くなるためです。ただし聞き返しの3分は残るので、滞留の時間は変わりません。 半自動化で8分から4分程度になります。 聞き返しが対話で完結し、照合と判定が済んだ状態から始められるためです。この段階の効果がいちばん大きく、本記事が想定するのもここです。 本格構成では工数は変わりませんが、(d)が解け、閾値そのものが実態に合っているかを議論できます。

05工数削減シミュレーション

前提値(モデル条件)
対象人数
4 名
月間件数
150 件
1件あたり現在時間
11 分
1件あたり導入後時間
4 分
現在  150件 × 11分 ÷ 60 = 27.5 時間/月
導入後 150件 × 4分 ÷ 60 = 10 時間/月
月間削減時間
17.5h
削減率
64%
年間削減時間
210h
年間金額換算(時間単価3,500円)
74万円
モデル条件による試算であり、実際の効果は業務内容・運用方法によって異なります。

自社条件で導入効果を整理したい方へ

このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。

AI活用について相談する

06向いている企業・向いていない企業

向いている
  1. 各部署から間接材の購入依頼が月に100件以上届き、購買部門が1件ずつ標準品カタログと単価契約を照らし合わせている企業。カタログと単価契約表が電子データで存在し、購買規程に金額の閾値と決裁権限が書かれている場合。Microsoft 365 を全社で使い、依頼の受け口を Teams に寄せられる場合。
向いていない
  1. 購入依頼がすでに購買システムのフォームに統一され、品目コードを選ばないと申請できない場合。間接材の購入が月に数件しかなく、購買担当が全部の契約を記憶している場合。標準品カタログが無く、何が標準品なのかを社内で決めていない場合。先に標準品を決める工程が必要になります。

07最小構成で試す方法

  1. 直近1か月に届いた購入依頼を、20件そのままの文面で書き出す
  2. 標準品に同等品があるもの5件、単価契約の対象5件、どちらにも当たらないもの5件、「前と同じもの」だけ5件になるように選ぶ
  3. カタログと単価契約表から、その20件に関係する範囲だけを抜き出して表にする
  4. 判定表(金額の区分と承認者)を、購買規程を見ながら手で1枚に書く
  5. AIの画面に依頼の文面と3〜4の表を貼り付け、「この依頼を、そのまま発注してよい/単価契約で買える/相見積が要る/標準品への変更を勧める、の4つに仕分けてください。渡した表に無い番号を書かないでください。相見積の要否と承認者は判定表のとおりに決めてください」と指示する
  6. 出てきた仕分けを、購買担当が自分で出した結論と比べる

4番目の「判定表を1枚に書く」が、この段階のいちばんの成果です。 規程を読むだけでは書ききれない会社が多く、「ソフトウェアはどうするのか」「単価契約があるのに金額が大きい場合は」が書かれていないためです。

仕分けの状態判断
4つの型への仕分けが16件以上一致した自動化する価値が大きい。Teams のエージェント化まで作る
型は合っているが根拠の番号が間違っている検索の当て方の問題。表の持ち方と照合の順番を見直す
標準品ありなのに「なし」と判定される別名の列が足りていない。外した言い回しを足す
判定表が書けなかった規程の整理が先。 AIの問題ではない

4行目が出るのは失敗ではなく、購買の判定が文章になっていなかったということです。

08実装時につまずきやすいポイント

問題対策
標準品カタログの検索が表記のゆれで当たらない別名の列を持ち、完全一致と別名検索の2段構えにする
AIが存在しない型番やカタログ番号を書く候補リストの中からだけ選ばせ、出力の側で evidence と正規表現で突き合わせる
AIが相見積の要否を判断する/結果を言い換える判定を機械側に完全に寄せ、閾値をプロンプトに書かない。結論の文は定型文として機械で差し込む
ナレッジの引用を後段の処理に渡せない現時点では、ナレッジ ソースから返された引用は他のツールやアクションへの入力として使えない。番号の確定は検索基盤の戻り値で行う
秘密度ラベル付きの規程が回答に出てこないファイルのアップロード方式は秘密度ラベルをサポートしない。「社外秘」「極秘」のファイルは SharePoint コネクタ方式で追加する
更新した規程がすぐ反映されないアップロード方式は4〜6時間ごとの同期で、更新を手動でトリガーできない
フォルダを丸ごと追加したのに一部が使われない上限までが取り込まれ、残りは処理されず、どれが処理されたかも示されない
Teams で引用が途中までしか出ない回答あたり最大20引用、タイトル約80文字、抜粋約480文字。長い条文をそのまま引かせない
回答を作り込むと引用が表示されないメッセージ ノードをクリアして自分で描画する場合、引用の描画も自分で含める
トピックのエクスポートができなくなるトピック名にピリオドを使わない
「根拠のない応答を許可する」をオフにしたら回答が出ないオフにすると引用を含む回答だけが返り、引用を含めず挙動が断続的になる。 指示に「必ず本文中に出典を含める」を入れる

4行目と5行目が、この題材に固有のつまずきです。 購買の回答は「どの契約の何番か」を示すことに意味があり、その番号を後段の書き込みにも使います。

09セキュリティ・AIガバナンス上の注意点

この構成で扱うデータ: 標準品カタログ、単価契約の契約先と契約単価、購買規程、決裁権限、依頼者の氏名と所属。取引条件と決裁の仕組みが含まれます。

  1. 単価契約の内容は社内でも限定情報です … 契約先と契約単価を、エージェントが誰にでも答える状態にしないでください。ナレッジ ソースに対するエージェント ユーザー認証を使うと、質問したユーザーがアクセスできるコンテンツだけが返ります
  2. 秘密度ラベルの扱いを先に決める … SharePoint コネクタ方式は秘密度ラベルをサポートしますが、ファイルのアップロード方式はサポートしません。ラベルを付けた契約表や規程を扱うなら、方式の選択がそのままガバナンスの選択になります
  3. 発注はAIにさせず、閾値と決裁権限も推測させない … 出力は依頼レコードと判定結果までです。条文から読み取らせると解釈が毎回変わり、決裁権限は会社の統制そのものなので揺れてよい部分ではありません
  4. プロンプトと応答は監査ログに記録され、保持の期間を決められる … Microsoft Purview では Copilot Studio が「Copilot のエクスペリエンスとエージェント」に含まれ、プロンプトと応答は統合監査ログにキャプチャされます。 アイテム保持ポリシーで自動的に保持または削除でき、判定は後から根拠を問われる記録なので、期間を業務側で決めてください

誤りが起きた場合のリスクは、規程どおりでない購買が通ることと、本来不要な相見積を依頼部門に取らせることの2つです。 これは文章の品質ではなく、判定をAIに触らせない設計と evidence による照合を運用に組み込めているかの問題です。組織の中でのリスクもあります。 機械が判定していると分かると、判定を通しやすい書き方を探す人が出ます。 用途の欄の書き方で区分が変わる抜け道を作らないよう、判定の材料を依頼者の自己申告だけに依存させないでください。

10まず何から始めるか

1週目:判定表を1枚に書く

購買規程を読み、金額の区分ごとの相見積の要否と承認者を1枚にします。規程に書かれていない部分(ソフトウェアの扱い、単価契約と金額の優先関係)を洗い出し、購買部門として決めてください。 AIはまだ使いません。

2週目:20件で試す

直近1か月の依頼から20件を選び、カタログ・契約・判定表の抜粋と一緒にAIに渡します。外した依頼の言い回しを書き留めてください。

3週目:標準品カタログに別名の列を足す

2週目で外した言い回しを、該当するカタログ番号に結び付けます。依頼の多い上位100品目から始めれば、件数の大半をカバーできます。

4週目:Teams のエージェントを作る

トピックを作り、トリガーフレーズを5〜10個設定し、質問ノードで4項目を聞くところまで組みます。この時点では判定を返さず、聞き取った内容を購買担当に渡すだけで十分です。

2か月目以降: 検索基盤への照会と判定表の適用をつなぎ、4つの型で返すところまで作ります。最初は購買担当1名分だけを流し、判定が外れた依頼を記録して上書きの規則を育てます。そのうえで購買システムへの書き込みを足し、4名全員に広げます。判定を覆した割合が下がらないなら、カタログの整備か判定表のどちらかが足りていません。


11関連ユースケース

12この仕組みを理解するための記事

13技術仕様の確認日・参考情報

技術仕様確認日:2026-09-22/最終更新:2026-09-22
確認した内容情報源確認日
トピックが会話の進行を定義し、1つのトピックに1つ以上のノードが含まれてノードが会話パスを決めること。ノードの種類(メッセージ、質問、アダプティブ カード、条件、変数管理、トピック管理、ツール)。クラシック オーケストレーションはトリガー フレーズと自然言語理解でトピックを選び、入力が完全に一致していなくても起動すること。生成オーケストレーションはトピック・ツール・ナレッジから最適な組み合わせを選ぶこと。トリガー フレーズは5〜10個必要とされ、短い語句が推奨されることトピックの作成と編集2026-09-22
ナレッジ ソースの種類。エージェント ユーザー認証では、質問したユーザーがアクセスできるコンテンツのみが表示されること。ナレッジ ソースから返された引用を、現時点では他のツールやアクションへの入力として使用できないこと。「根拠のない応答を許可する」をオフにすると引用を含む回答だけが返り、モデルが引用を含めず挙動が断続的になること。厳格な出力形式の強制が引用マーカーを抑制しうること。Teams では最大20引用、タイトル約80文字、抜粋約480文字に制限されること知識源の概要2026-09-22
SharePoint をナレッジにすると SharePoint 検索インデックスを使用し、追加・更新されたアイテムはインデックス作成の完了まで使用できない場合があること。追加方法が「ファイルのアップロード」と「SharePoint コネクタ」の2種類あり、前者は Dataverse にコピーして4〜6時間ごとに同期し秘密度ラベルをサポートせず、後者はリアルタイムに反映されサポートすること。秘密度が「社外秘」「極秘」のファイルからは回答を得られないこと。ナレッジ オブジェクトは最大500個、同時に使える情報源は5つまで非構造化データのナレッジ2026-09-22
Copilot Studio が Microsoft Purview の「Copilot のエクスペリエンスとエージェント」に含まれること。プロンプトと応答が統合監査ログにキャプチャされること。アイテム保持ポリシーで自動的に保持または削除できること。プロンプトと応答はユーザーのメールボックスに格納されるため、電子情報開示で取得できること生成 AI に対する Purview の保護2026-09-22

料金と同期頻度の細かな上限値は変更されやすいため触れていません。相見積の取得義務と決裁権限の範囲は各社の規程によるため、自社の購買部門・内部統制部門への確認が必要です。

実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。

自社の業務に使えるAI活用候補を整理します

このユースケース(UC-0165)についてのご相談はこちらから。

AI活用について相談する
目次