協力運送会社と船会社の燃料サーチャージの改定のお知らせをエージェントが毎週各社のWebで見回り、自社の運賃表への反映候補と影響額の一覧を出す
協力運送会社と船会社のWebのお知らせを毎週見回り、燃料サーチャージの改定を見つけて内容を取り出します。 自社の仕入の運賃表との差と、荷主向けの運賃表に反映する候補、月あたりの影響額を一覧にします。
- 生成AI
- ChatGPT/Claude/Gemini
- 連携・自動化
- Make/n8n/Power Automate/Zapier
- 対象業界
- 商社/物流/製造
- 対象部門
- 物流
- 対象業務
- 情報検索/集計・分析
- 主な課題
- データ分析に時間がかかる/入力作業が多い/期限・対応漏れが起きる
- AIで行う処理
- エージェント
- 主な効果
- 判断支援/工数削減/機会損失防止
- 導入難易度
- ★★★★☆
- 実装レベル
- 本格構成
- 費用感
- API連携(中)
- 人間の確認
- 条件付き
01導入前 / 導入後の業務フロー
- 毎週月曜に、担当者が仕入先の一覧を上から順に開く
- 各社のWebのお知らせを開き、前回見た後に燃料サーチャージの記事が出ていないかを探す
- 記事があれば本文とPDFを開き、自社が使う区分(軽油の価格帯、車格、航路、コンテナの大きさ)の額を探す
- 仕入の運賃表の現在の額と比べ、変わっていればスプレッドシートに書き写す
- 月末に、変わった仕入先について、輸送の実績から影響額を計算する
- 影響額の大きいものから、営業に荷主への申し入れを相談する
- 自動毎週月曜の朝に、ワークフローが仕入先の一覧を読み込む
- 自動仕入先ごとにお知らせのページを取り、前回の内容と比べる。変わっていなければ、その仕入先はここで終わる
- 自動変わっていた仕入先について、エージェントが新しい記事を読み、燃料サーチャージの改定の記事かを見分ける
- 自動改定の記事なら、本文やPDFをたどり、自社が使う区分の新しい額・適用の開始日・根拠にした燃料価格を取り出す
- 自動仕入の運賃表の現在の額と比べ、差を出す(計算はワークフロー)
- 自動輸送の実績の直近3か月の平均から、月あたりの影響額を計算する
- 自動荷主との契約の条項に照らし、販売の運賃表のどの行に反映する候補かを出す
- 自動一覧にまとめ、運賃グループと営業へ知らせる
- 人担当者がお知らせの原文と取り出した額を確かめ、仕入の運賃表を直す
- 人営業と相談し、荷主に申し入れるかを決める
各工程の詳しい説明を読む
- 毎週月曜に、担当者が仕入先の一覧を上から順に開く
- 各社のWebのお知らせを開き、前回見た後に燃料サーチャージの記事が出ていないかを探す
- 記事があれば本文とPDFを開き、自社が使う区分(軽油の価格帯、車格、航路、コンテナの大きさ)の額を探す
- 仕入の運賃表の現在の額と比べ、変わっていればスプレッドシートに書き写す
- 月末に、変わった仕入先について、輸送の実績から影響額を計算する
- 影響額の大きいものから、営業に荷主への申し入れを相談する
(a)見回りが省かれる週がある。 30社を毎週開くのは負担が大きく、繁忙の週は飛ばされます。改定の多くは「変わらない」なので、省いても困らない週が続き、そのうち見回りそのものが月1回になります。
(b)お知らせの探し方が人によって違う。 ある会社は「お知らせ」、ある会社は「ニュース」、ある会社は「料金」のページに出ます。探す場所を知っているのは担当者で、担当が替わると見落としが出ます。
(c)PDFの表から自社の区分を読むのに時間がかかる。 船会社の表は航路と港の組み合わせで数十行あり、自社が使う2〜3の航路の行を探して読むのが、1社あたりの時間の大半です。
(d)影響額が月末にまとめて出る。 改定を週ごとに書き写していても、影響額の計算は月末です。申し入れの相談が月を越え、適用の開始に間に合いません。
- 【自動】 毎週月曜の朝に、ワークフローが仕入先の一覧を読み込む
- 【自動】 仕入先ごとにお知らせのページを取り、前回の内容と比べる。変わっていなければ、その仕入先はここで終わる
- 【自動】 変わっていた仕入先について、エージェントが新しい記事を読み、燃料サーチャージの改定の記事かを見分ける
- 【自動】 改定の記事なら、本文やPDFをたどり、自社が使う区分の新しい額・適用の開始日・根拠にした燃料価格を取り出す
- 【自動】 仕入の運賃表の現在の額と比べ、差を出す(計算はワークフロー)
- 【自動】 輸送の実績の直近3か月の平均から、月あたりの影響額を計算する
- 【自動】 荷主との契約の条項に照らし、販売の運賃表のどの行に反映する候補かを出す
- 【自動】 一覧にまとめ、運賃グループと営業へ知らせる
- 【人】 担当者がお知らせの原文と取り出した額を確かめ、仕入の運賃表を直す
- 【人】 営業と相談し、荷主に申し入れるかを決める
2番目で、多くの仕入先は終わります。 前回と同じなら、エージェントは動きません。AIを使うのは、お知らせのページが変わった仕入先だけです。
9番目の確認は省きません。 取り出した額は原文と並べて見せ、担当者が原文の該当の行を目で見てから、仕入の運賃表を直します。 運賃表をワークフローが書き換えることはありません。
02今回想定するシステム構成
仕入先の一覧(お知らせのページのURL、自社が使う区分、前回の内容の要約値) ▼【トリガー】Schedule Trigger(毎週月曜 7時、Asia/Tokyo) n8n のワークフロー ├──▶ HTTP Request でお知らせのページを取り、前回と比べる │ 変わっていない → 記録して終わり ▼ 変わっていた仕入先だけ AI Agent ノード(Tools Agent)+ Claude(Anthropic Chat Model) │ 道具を選んで引く │ ・ページを取る(HTTP Request、GETのみ) │ ・PDFを取って文字にする(Extract From File) │ ・その仕入先の区分と現在の額を引く │ Structured Output Parser で決まった形のJSONを返す ▼ 差と影響額の計算(Code ノード)← 仕入の運賃表、輸送の実績、荷主との契約の条項 ▼ 改定の一覧(スプレッドシート)→ 運賃グループと営業へ通知 ▼【人】原文と照らして確かめ、仕入の運賃表を直す/荷主への申し入れを決める
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| ワークフロー | n8n | Make、Zapier、Power Automate |
| 生成AI | Claude API(n8n の Anthropic Chat Model ノード) | OpenAI API、Gemini API |
| 保管 | Google スプレッドシート(仕入先の一覧、運賃表、改定の一覧) | SharePoint リスト |
| 通知 | 社内チャット | メール |
新しく足すのは、n8n のワークフローと改定の一覧だけです。 運賃表、輸送の実績、運送管理の仕組みはいまのままで、どれにも書き込みません。
ページの取得は HTTP Request ノードで行います。 REST API を持つアプリやサービスへ HTTP リクエストを送るノードで、応答のヘッダーとステータスコードを含める、どの応答でも成功として扱う(Never Error)といったオプションがあります。お知らせのページが404になっても止まらずに、その状態を記録できます。
エージェントは Tools Agent です。 外部の道具やAPIを使って情報を取り、道具の働きを理解して、タスクに応じてどれを使うかを決めるとされています。HTTP Request ノードはエージェントの道具としてもつなげ、道具として使うときにはLLMへ渡すデータの量を減らす「Optimize Response」の設定があります。
n8n を選ぶ理由は、変わった仕入先だけにエージェントを動かせることです。 前段の比較は規則で行い、AIは差分のあった数社だけに使います。 30社すべてで毎週エージェントを動かすと、費用も確認の手間も増えます。
03どうやって実装するのか
処理の起点を決める
毎週月曜の朝7時に、Schedule Trigger で動かします。 改定のお知らせは月末から月初に出ることが多く、週1回でも適用の開始より前に気づけるという想定です。運送会社の多くは月ごとに額を決めるので、毎日見ても結果は変わりません。
Schedule Trigger は、ワークフローのタイムゾーンが設定されていればそれを、なければインスタンスのタイムゾーンを使います。 セルフホストの既定は America/New York なので、ワークフローに Asia/Tokyo を設定します。 また、Schedule Trigger を使うワークフローは保存して公開しないと動かないとされています。
月末の最終営業日には、もう1回動かします。 翌月1日から適用される改定が、月末の数日前に出ることがあるためです。月曜だけだと、月末の金曜に出たお知らせを、適用の開始の後に拾います。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| 仕入先の一覧 | 仕入先の名前、お知らせのページのURL、見る順(お知らせ→記事→PDF)の覚え書き、前回の要約値 | 自社で作る一覧 |
| 自社が使う区分 | 運送会社なら車格と距離の区分、船会社なら航路・港・コンテナの大きさ | 仕入の運賃表 |
| 仕入の運賃表 | 仕入先・区分ごとの現在の燃料サーチャージの額、適用の開始日 | 仕入の運賃表 |
| 輸送の実績 | 仕入先・区分ごとの直近3か月の走行距離・便数・本数 | 運送管理の仕組みの月次の書き出し |
| 荷主との契約の条項 | 荷主ごとの燃料サーチャージの条項(基準とする価格、改定の幅、転嫁の方法) | 契約の一覧 |
質を決めるのは、「自社が使う区分」です。 船会社の表には自社が使わない航路が何十行もあります。区分を渡さないと、エージェントは表のどの行を読めばよいかを決められません。
見る順の覚え書きは、エージェントの道しるべです。 「お知らせの一覧の『運賃』のタグの記事。本文の下のPDFの3ページ目」のように、担当者が知っている探し方を一覧に書いておきます。 覚え書きどおりに見つからないときに、エージェントが自分で探します。
データの取得方法を決める
| 取るもの | どこから | 何に使うか |
|---|---|---|
| お知らせのページ | HTTP Request(GET) | 前回との比較、新しい記事の一覧 |
| 記事の本文 | HTTP Request(エージェントの道具) | 改定の記事かの見分け、PDFのリンク |
| PDFの中身 | HTTP Request でファイルとして取り、Extract From File の「Extract From PDF」で文字にする | 改定の表の読み取り |
| 仕入の運賃表と区分 | スプレッドシートの読み取り(エージェントの道具) | 自社の区分の行の特定、現在の額 |
| 輸送の実績、契約の条項 | スプレッドシートの読み取り(ワークフロー) | 影響額と反映候補の計算 |
前回との比較は、ページ全体ではなく記事の一覧で行います。 ページには日付や広告の表示など毎回変わる部分があり、全体で比べると毎週「変わった」になります。 記事の見出しと日付の並びを取り出し、その並びが前回と同じかを見ます。
PDFは Extract From File で文字にします。 PDFから文字を取り出す操作があり、ページをつなげるか、何ページまで読むか、パスワードを指定できます。表が画像で貼られたPDFは文字が取れないので、例外処理で扱います。
エージェントが道具に渡すURLは、$fromAI() で決めさせます。 n8n では、道具のパラメーターをAIに動的に決めさせる $fromAI() の関数が使えます。ただし、取りに行けるのは仕入先の一覧に載ったドメインだけに絞ります。 道具の前に、URLのドメインを一覧と照らす段を置きます。
AIへ渡す前に整形する
- ドメインの確認 … 取りに行くURLが、仕入先の一覧に載ったドメインかを確かめます
- 取得の間隔 … 同じ仕入先へのリクエストは、数秒の間を置いて1件ずつにします
- 記事の一覧の取り出し … ページから見出しと日付の並びを取り出し、前回と比べます
- 新しい記事の絞り込み … 前回より後の日付の記事だけを、エージェントに渡します
- PDFの文字化 … ページ数の多いものは、読むページの上限を決めて文字にします
- 区分の添付 … その仕入先について、自社が使う区分と現在の額を、エージェントへの指示に添えます
1番目と2番目は、相手のWebへの配慮です。 見回りは週1回、1社あたり数件のリクエストに収めます。仕入先のWebの利用規約に機械による取得を禁じる定めがあれば、その仕入先は見回りから外し、改定の連絡をもらう形に切り替えます。
AIに処理させる
エージェントにさせるのは、新しい記事のなかから燃料サーチャージの改定を見つけ、自社の区分の新しい額を取り出すことです。
- 新しい記事が燃料サーチャージ(運送会社の燃料サーチャージ、船会社のBAFや低硫黄燃料の割増など)の改定に当たるかを見分ける
- 当たれば、本文とPDFをたどって改定の表を探す
- 表から、渡された区分の行を探し、新しい額・単位・適用の開始日を読む
- 改定の根拠として書かれている燃料価格や価格帯があれば、そのまま写す
- 読めなかった区分、見つからなかった表は、その旨を書く
国土交通省が示す燃料サーチャージの考え方では、燃料価格を一定の価格帯に分け、価格帯ごとに算出上の上昇額を決めておく形が示されています。 燃料価格は短期間で変動するため、その都度改定するのではなく価格帯を設定し、改定や廃止の条件を設定時に荷主に明示しておく必要があるとされています。運送会社のお知らせも多くはこの形で、「どの価格帯に入ったか」と「その価格帯の額」の2つを取り出せば足ります。
| させないこと | 理由 |
|---|---|
| 影響額や差額の計算 | 計算はワークフローで行う。AIの計算は確かめにくい |
| 区分に無い行の額を近い行から推し量る | 読めなければ「読めない」とする |
| 適用の開始日を推測する | 書かれていなければ空にする |
| 仕入先の一覧に無いドメインへ行く | 道具の前の確認で止める |
| ページへの書き込み・問い合わせの送信 | 道具は読むだけ。GETのみ |
2行目がいちばん起きやすい失敗です。 自社の区分の行が見つからないとき、隣の行の額や前回の額で埋めます。埋めた額は、正しそうに見えるので確認をすり抜けます。
指示内容を固定する
AI Agent の System Message には、次の文を入れます。
あなたは物流会社の運賃グループで、仕入先のWebから燃料サーチャージの
改定を探す補助をします。道具を使ってページとPDFを読み、改定の内容を
決まった形で返してください。
【探すもの】
- 燃料サーチャージ、燃料割増、BAF、低硫黄燃料の割増など、
燃料価格の変動を運賃に別建てで上乗せする料金の改定・新設・廃止
- 渡された「自社が使う区分」の行の、新しい額・単位・適用の開始日
【探し方】
- まず「見る順の覚え書き」に従ってください。
見つからないときは、同じドメインの中で記事やPDFのリンクをたどってください。
- 道具で取れるのは、渡されたドメインのページだけです。
【厳守事項】
- 額は表に書かれたとおりに写してください。単位(円/km、円/L、USD/TEU など)も
そのまま写してください。換算や計算をしないでください。
- 自社の区分の行が見つからないときは、found を false にしてください。
隣の行、前回の額、似た区分の額で埋めないでください。
- 適用の開始日が書かれていなければ空にしてください。告知日で埋めないでください。
- 改定の根拠として書かれた燃料価格や価格帯は、そのまま basis に写してください。
- 燃料サーチャージと関係の無い記事なら、is_fuel_surcharge を false にして終えてください。
- 根拠にしたページのURLと、表のある箇所(ページ番号など)を必ず書いてください。
【仕入先】{carrier_name}
【見る順の覚え書き】{navigation_note}
【自社が使う区分と現在の額】{lanes}
【新しい記事の一覧】{new_articles}
「換算や計算をしない」と「隣の行で埋めない」を、どちらも書いています。 船会社の表はドル建てで、指示が無いと円に直して返します。直した値は、原文と並べたときに照らせなくなります。
Max Iterations は既定の10のままにします。 1社につき、記事を読む・PDFを取る・区分を引くで数回に収まるはずで、10回を使い切る仕入先は、見る順の覚え書きが古くなっている合図です。 「Return Intermediate Steps」を有効にし、どの道具をどの順で使ったかを残します。
出力形式を固定する
Structured Output Parser で、仕入先ごとに次の形のJSONを受け取ります。
{
"carrier": "",
"is_fuel_surcharge": true,
"change_type": "increase | decrease | new | abolish | unknown",
"announced_on": "",
"lanes": [
{ "lane": "", "found": true, "new_amount": "", "unit": "",
"effective_from": "", "source_url": "", "source_location": "" }
],
"basis": "",
"notes": ""
}
運送会社のお知らせから取り出した例です(額と社名は架空のものです)。
{
"carrier": "協力運送A社",
"is_fuel_surcharge": true,
"change_type": "increase",
"announced_on": "2026-09-25",
"lanes": [
{ "lane": "大型車・距離制", "found": true, "new_amount": "12.5",
"unit": "円/L(算出上の燃料価格上昇額)", "effective_from": "2026-11-01",
"source_url": "https://example.com/news/2026/0925.pdf", "source_location": "2ページ目の表" },
{ "lane": "4t車・時間制", "found": false, "new_amount": "", "unit": "",
"effective_from": "", "source_url": "https://example.com/news/2026/0925.pdf", "source_location": "" }
],
"basis": "軽油価格(ローリー)110円超~115円の価格帯",
"notes": "時間制の表はこのPDFに見当たらない"
}
2つ目の区分は、見つからなかったことがそのまま返っています。 1つ目と同じ額で埋めずに found を false にし、notes に理由を書いています。この行が一覧の先頭に来ます。
ワークフローは、このJSONに次の計算結果を足して一覧にします。
| 列 | 計算 |
|---|---|
| 現在の額 | 仕入の運賃表の該当の行 |
| 差 | 新しい額 - 現在の額(単位が同じときだけ計算。違えば空にして印を付ける) |
| 月あたりの影響額 | 差 × 直近3か月の平均の数量(距離・便数・本数) |
| 反映候補 | 荷主との契約の条項で、その区分を使っている販売の運賃表の行 |
| 申し入れの期限の目安 | 適用の開始日から、契約で決めた申し入れの日数を引いた日 |
1つ目の理由は、AIが返す額を文字列のまま持てることです。 new_amount と unit を分け、単位が現在の運賃表と同じときだけワークフローが差を計算します。 円とドル、円/kmと円/Lが混ざっても、黙って引き算をしません。
2つ目は、found と source_location で確認が速くなることです。 担当者は原文の該当のページを開き、書かれた行を見るだけで済みます。 found が false の区分は、一覧の先頭に出します。
3つ目は、change_type で廃止を拾えることです。 燃料価格が下がると、燃料サーチャージは減額や廃止になります。減額も荷主への反映が要るので、増額と同じ一覧に載せます。
国土交通省の資料が示す算出式は、「燃料サーチャージ額=走行距離(km)÷燃費(km/L)×算出上の燃料価格上昇額(円/L)」です。 仕入先が上昇額(円/L)で示している場合は、ワークフローの計算で、自社の区分の距離と燃費を使ってこの式で1便あたりの額に直します。 燃費は仕入の運賃表に車格ごとに持たせておきます。
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| 仕入先のWeb | HTTP Request(GETのみ) | お知らせのページ、記事、PDFを取る |
| 仕入先の一覧、運賃表、実績、契約の条項 | スプレッドシートの読み取り | 区分、現在の額、数量、反映先を引く |
| Claude API | Anthropic Chat Model ノード | エージェントの判断と取り出し |
| 改定の一覧 | スプレッドシートへの追記 | 1区分1行で結果を残す |
| 社内チャット | 通知 | 運賃グループと営業へ。found が false と影響額の大きいものを先頭に |
運賃表には書き込みません。 仕入の運賃表を直すのは担当者で、販売の運賃表は荷主との合意の後に直します。 一覧は、直すための材料です。
仕入先のWebには、取りに行くだけです。 問い合わせのフォームに送る、ログインして見る、といった動きはさせません。
人が確認する
担当者は、改定の一覧の1行ずつについて、原文と取り出した額を照らします。
foundがfalseの区分を先に見る … 原文を開き、自社の区分の行が本当に無いのか、表の書き方が変わったのかを確かめます- 額と単位を原文と照らす …
source_locationのページを開き、行と額を目で見ます。ここは省きません - 仕入の運賃表を直す … 適用の開始日を付けて直します
- 営業と申し入れを決める … 影響額と申し入れの期限の目安を見て、荷主ごとに決めます
2番目に使う時間が、第10章の1件4分の中心です。 改定の無かった仕入先は一覧に「変わらず」と載るだけで、見るのは改定のあった数社の数行です。
エージェントのたどった道順も、ときどき見ます。 Return Intermediate Steps で残した道具の順を見て、覚え書きと違う道順で見つけていたら、覚え書きを新しい道順に書き直します。 次の週から道具の呼び出しが減ります。
荷主への申し入れは、この構成の外の判断です。 契約の条項で機械的に反映できる荷主もあれば、交渉が要る荷主もあります。一覧はその判断の材料で、決めるのは営業と運賃グループです。
例外に対処する
| 起きること | 対応 |
|---|---|
| お知らせのページが404や移転 | 状態を記録し、一覧に「ページなし」で載せる。担当者がURLを直す |
| 記事の一覧の書き方が変わる | 比較ができず毎週「変わった」になる。2週続いたら一覧の取り出し方を直す |
| PDFが画像で文字が取れない | 一覧に「PDF読めず」で載せ、担当者が原文を見る |
| PDFにパスワードがかかっている | 取り出しを止め、担当者が仕入先に問い合わせる |
| 自社の区分の行が見つからない | found を false で返す。埋めない |
| 単位が運賃表と違う | 差を計算せず、印を付けて担当者へ |
| エージェントが Max Iterations を使い切る | その仕入先を「探しきれず」で載せ、見る順の覚え書きを直す |
| Claude API が応答しない | その仕入先を次の実行で再度見る。前回の要約値は更新しない |
| 利用規約で取得を禁じる仕入先 | 見回りから外し、改定の連絡をもらう形に切り替える |
8行目の「前回の要約値は更新しない」が大事です。 更新してしまうと、次の週には「変わっていない」と判定され、取り出せなかった改定が二度と拾われません。 取り出しが終わって初めて、前回の要約値を新しくします。
記録を残す
- 仕入先ごとの取得の日時、ステータスコード、記事の一覧の要約値
- エージェントが使った道具の順(Return Intermediate Steps の内容)
- 取り出したJSONの全文と、根拠のURL・箇所
- 差と影響額、反映候補の計算に使った運賃表と実績の値
- 担当者が額を直した記録 … どの区分を、どの額からどの額へ
- 仕入の運賃表を直した日時と、荷主に申し入れたかどうか
4つ目で、計算に使った値を残すのは、運賃表が後から変わるためです。 影響額の根拠を後で確かめるとき、当時の現在の額と数量が残っていないと計算をたどれません。
最後の行で、改定を知ってから申し入れまでの日数を数えます。 この日数が、この構成の効き目を測る物差しです。
04実装レベルの3段階
半自動化だけでも、第3章の(a)は解消します。 変わった仕入先が分かれば、担当者はその数社だけを開けば済みます。 1件15分が、改定の無い週は数十秒になります。 本格構成で、額の取り出しと影響額の計算が足されます。 1件4分は、改定のあった区分を原文と照らす時間が中心です。この段階が本記事の想定です。 半自動化を1か月は回してください。 記事の一覧の取り出しがうまくいかない仕入先と、毎週「変わった」と出る仕入先が分かります。比較が安定してからエージェントをつなぐ方が、エージェントの空回りが減ります。
05工数削減シミュレーション
導入後 120件 × 4分 ÷ 60 = 8 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 協力運送会社や船会社から輸送を仕入れ、自社の運賃表で荷主に販売している3PL・フォワーダー・物流子会社。仕入先が数十社あり、燃料サーチャージの改定が各社のWebのお知らせやPDFで出るため、改定に気づくのが請求書が届いてからになっている場合。荷主との契約に燃料サーチャージの条項があり、仕入の改定を販売の運賃表に反映する手順が決まっている場合。
- 仕入先が数社で、改定のたびに担当者へメールで連絡が来る場合。燃料サーチャージを荷主に転嫁する契約が無く、反映する先の運賃表が無い場合。仕入先のWebの利用規約が機械による取得を認めていない場合(その仕入先は連絡をもらう形に切り替えます)。なお、荷主に改定を申し入れるか、どの率で転嫁するかの判断は、この構成では代替できません。
07最小構成で試す方法
- 過去1年に燃料サーチャージを改定した仕入先から10社を選ぶ(運送会社と船会社を混ぜる)
- 10社について、改定のお知らせの記事のURLと、自社が使う区分を書き出す
- 手元のAIサービスの画面に、記事の本文とPDFの文字を貼る
- 「この記事が燃料サーチャージの改定かを判断し、改定であれば、次の区分の新しい額と単位、適用の開始日を表に書かれたとおりに書き出してください。区分の行が見つからなければ『見つからない』と書き、近い行で埋めないでください」と指示する
- 出てきた額を、当時の仕入の運賃表に書き写した額と照らす
10社のうち、少なくとも2社は表の書き方が複雑な船会社を入れてください。 運送会社の価格帯の表は読みやすく、難しいのは航路と港の組み合わせの表です。
| 出てきた内容 | 判断 |
|---|---|
| 当時書き写した額と一致した | エージェントで見回る段階に進む |
| 見つからない区分を近い行で埋めた | 指示の書き方で直る。構成は有効 |
| PDFの文字が崩れて表が読めない | その仕入先はPDFの文字化が先。 画像のPDFなら、見回りは記事の検知までにする |
3行目の仕入先は、見回りから外さなくてかまいません。 「改定の記事が出た」と知らせるだけでも、請求書で気づくより数週間早く知れます。 額を読むのは人が行います。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
| 毎週すべての仕入先が「変わった」になる | ページ全体でなく、記事の見出しと日付の並びで比べる |
| 区分の行が見つからず、近い行で埋める | found を返させ、埋めないと指示に書く |
| ドルを円に直して返す | 換算を禁じ、単位を別の欄に写させる |
| 単位の違う額で差を計算する | 単位が同じときだけ計算し、違えば印を付ける |
| 取り出せなかった改定が二度と拾われない | 取り出しが終わってから前回の要約値を更新する |
| エージェントが関係の無いページへ行く | 道具の前で、一覧のドメインかを確かめる |
| 月末に出た改定を、適用の後に拾う | 月末の最終営業日にもう1回動かす |
| 夜中に動く | セルフホストの既定は America/New York。ワークフローに Asia/Tokyo を指定する |
| 相手のWebに負担をかける | 週1回、間を置いて1件ずつ。利用規約で禁じる仕入先は外す |
| 運賃表まで自動で直したくなる | しない。 原文と照らして人が直す |
上の2行が、この構成の失敗のほとんどです。 1行目は知らせが多すぎて誰も見なくなり、2行目はもっともらしい誤りが確認をすり抜けます。前者は比較の仕方で、後者は found という欄で止めます。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: 仕入先の公開のお知らせ、自社の仕入と販売の運賃表、輸送の実績、荷主との契約の条項です。個人情報はほとんど含みませんが、仕入と販売の運賃表は自社の利幅が分かる情報です。
- AIに渡すのは、公開のお知らせと区分だけにする … エージェントに渡すのは仕入先の記事・PDFと、その仕入先の区分と現在の額です。販売の運賃表、荷主の名前、契約の条項はAIに渡さず、ワークフローの計算の側で使います
- 道具は読むだけにする … GETのみで、ドメインを一覧に絞ります。問い合わせの送信やログインはさせません
- 相手のWebの利用規約を守る … 機械による取得を禁じる仕入先は外します。取得の頻度を週1回に抑えます
- 運賃表を自動で書き換えない … 誤った額が運賃表に入ると、請求の点検と荷主への請求の両方が誤ります
- 申し入れの判断を残す … どの荷主にいくら転嫁するかは、契約と取引の関係で決めることです。一覧の影響額は判断の材料で、結論ではありません
- 根拠の原文を残す … 取り出した額は、根拠のURLと箇所とあわせて残します。お知らせは後から差し替えられることがあるため、取得した日の内容を保存します
誤りが起きた場合のリスクは、誤った額で影響額が出て、荷主への申し入れを誤ることです。 申し入れを撤回するのは、最初から申し入れないより信頼を損ねます。原文と照らす確認と、単位の違いで計算を止める規則は外さないでください。
10まず何から始めるか
1週目:仕入先の一覧を作る
30社について、お知らせのページのURL、自社が使う区分、見る順の覚え書きを一覧にします。担当者が知っている探し方を書き出す作業です。あわせて、各社のWebの利用規約で機械による取得の扱いを確かめます。
2週目:10社で試す
過去の改定のお知らせから10社を選び、手元のAIサービスで区分の額を取り出させます。当時の書き写しと照らし、近い行で埋めていないかを最優先で見ます。
3週目:見回りと検知をつなぐ
n8n で Schedule Trigger、HTTP Request、記事の一覧の比較までを作ります。この時点ではエージェントをつながず、変わった仕入先の一覧だけを担当者が見ます。
4週目:毎週「変わった」と出る仕入先を直す
比較が安定しない仕入先の取り出し方を直します。ここが落ち着くまで、次へ進みません。
2か月目: エージェントをつなぎ、額の取り出しと差の計算を足します。3か月目以降: 影響額と反映候補、申し入れの期限の目安を足し、改定を知ってから申し入れまでの日数を毎月数えます。請求書で初めて改定に気づく件が無くなった時点で、この構成は完成です。
11関連ユースケース
12この仕組みを理解するための記事
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
| 燃料サーチャージが燃料価格の上昇・下落によるコストの増減分を別建て運賃として設定する制度であること。基準価格の設定、一定の軽油価格帯ごとに算出上の上昇額を決める方法、改定及び廃止の条件を設定時に荷主に明示する必要があること。算出式「走行距離÷燃費×算出上の燃料価格上昇額」 | 国土交通省: 「燃料サーチャージ」の計算式等を規定する告示の制定について(PDF) | 2026-10-07 |
| 燃料サーチャージの算出方法等を、標準的な運賃の一部として令和5年3月1日に告示したこと | 国土交通省: 報道発表資料(PDF) | 2026-10-07 |
| Schedule Trigger がワークフローのタイムゾーン、無ければインスタンスのタイムゾーンを使い、セルフホストの既定が America/New York であること。保存して公開しないと動かないこと | n8n Docs: Schedule Trigger node | 2026-10-07 |
| Tools Agent が道具の働きを理解して使う道具を決めること。Max Iterations の既定が10、Return Intermediate Steps、Require Specific Output Format で出力パーサーをつなぐこと | n8n Docs: Tools AI Agent node | 2026-10-07 |
道具のパラメーターを $fromAI() でAIに決めさせられること。HTTP Request Tool などを道具として使えること | n8n Docs: How tools work | 2026-10-07 |
| HTTP Request の Include Response Headers and Status、Never Error、応答の形式。道具として使うときの Optimize Response | n8n Docs: HTTP Request node | 2026-10-07 |
| Extract From File の Extract From PDF と、Join Pages・Max Pages・Password のオプション | n8n Docs: Extract From File node | 2026-10-07 |
| Anthropic Chat Model ノードで Claude を使えること | n8n Docs: Anthropic Chat Model node | 2026-10-07 |
仕入先のお知らせの出し方、燃料サーチャージの表の形、Webの利用規約は、仕入先ごとに違います。 本記事は特定の運送会社・船会社の仕様を前提にしていません。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-0632)についてのご相談はこちらから。
