在庫管理機能実装案.md に ## 21. 補足: 外部サブスクLLM活用案 を追記しました。

内容は、恵菜システム自身は LLM API を呼ばず、調査用プロンプトを提供する 調査手順を表示する LLM回答を貼り付けてフォームへ反映する という実装案です。肥料用・農薬用のプロンプト例、画面イメージ、貼り付け結果の取り込み方式、メリットと注意点まで入れています。

今回は文書更新のみで、コード変更やテストはしていません。必要なら次に、この 貼り付け結果をフォームへ反映 するための入力フォーマット仕様や、画面ワイヤー案まで具体化できます。
This commit is contained in:
Akira
2026-03-13 18:29:03 +09:00
parent f1512febde
commit 1b619c44a0
6 changed files with 182993 additions and 0 deletions

2
.gitignore vendored
View File

@@ -13,3 +13,5 @@ out/
db.sqlite3 db.sqlite3
postgres_data/ postgres_data/
nul nul
*.tsbuildinfo

BIN
all_fertilizer.zip Normal file

Binary file not shown.

52135
all_fertilizer/1.全件.csv Normal file

File diff suppressed because it is too large Load Diff

BIN
designated_mix_national.zip Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@@ -1364,3 +1364,189 @@ alias 例:
この3つを組み合わせることで、正式名称ベースの整合性と、 この3つを組み合わせることで、正式名称ベースの整合性と、
現場名称ベースの使いやすさを両立できる。 現場名称ベースの使いやすさを両立できる。
---
## 21. 補足: 外部サブスクLLM活用案
### 21.1 基本方針
恵菜システム自身が LLM API を呼び出す方式は採用しない。
理由:
- API 従量課金が発生する
- 継続利用時の運用コストが読みにくい
- 現場で既に契約済みのサブスク LLM を活用した方が現実的である
このため、恵菜システムは `LLMを呼ぶシステム` ではなく、
`外部LLMを使った調査作業を支援するシステム` として設計する。
### 21.2 目指す形
恵菜システムで提供するのは、次の3点である。
- 調査用プロンプト
- 調査手順
- LLM の回答結果を貼り付けて反映する機能
つまり、ユーザーは ChatGPT などのサブスク LLM で調査し、
その結果だけを恵菜システムに持ち込む。
### 21.3 利用フロー
1. ユーザーが肥料マスタ画面で `LLM調査を使う` を押す
2. 恵菜システムが `調査手順``プロンプト` を表示する
3. ユーザーは袋写真と通称を使って、外部サブスク LLM で調査する
4. LLM の回答を恵菜システムの貼り付け欄へ貼る
5. 恵菜システムが回答を項目ごとに分解する
6. フォームへ自動反映する
7. ユーザーが確認して保存する
### 21.4 画面イメージ
肥料マスタ画面に、通常の手入力フォームとは別に以下の UI を追加する。
- `LLM調査手順を見る`
- `調査用プロンプトをコピー`
- `LLM回答を貼り付け`
- `貼り付け結果を反映`
- `aliasとして保存`
表示イメージ:
- 左側: 通常の肥料マスタ入力フォーム
- 右側またはモーダル: LLM調査支援パネル
### 21.5 恵菜システムが提供する調査手順
画面上に表示する手順例:
1. 肥料袋の表面・裏面・保証票を撮影する
2. `調査用プロンプトをコピー` する
3. ChatGPT などの外部サブスク LLM に写真と一緒に貼り付ける
4. 返答結果をそのままコピーする
5. 恵菜システムの `LLM回答貼り付け欄` に貼り付ける
6. 項目を確認して肥料マスターへ保存する
補足:
- 写真は複数枚に分けてよい
- 読みづらい場合は表面・裏面・保証票を別々に投げる
- 推定内容はそのまま確定せず、人が確認する
### 21.6 肥料調査用プロンプト案
恵菜システムが表示・コピーできるプロンプトの例:
```text
この肥料について、写真や表示内容をもとに、肥料マスタ登録のための情報を整理してください。
必ず次のルールに従ってください。
- 袋や保証票に明記されている内容と、推定内容を混ぜない
- 読み取れない項目は「不明」と書く
- 推定した内容は必ず「推定事項」にまとめる
- 出力形式は崩さない
出力形式:
通称:
正式名称:
メーカー:
肥料区分:
登録番号:
正味重量kg:
窒素%:
りん酸%:
加里%:
その他成分:
別名候補:
根拠:
推定事項:
```
### 21.7 農薬調査用プロンプト案
同じ仕組みは農薬にも転用できる。
```text
この農薬について、写真や表示内容をもとに、農薬マスタ登録のための情報を整理してください。
必ず次のルールに従ってください。
- ラベルに明記されている内容と、推定内容を混ぜない
- 読み取れない項目は「不明」と書く
- 推定した内容は必ず「推定事項」にまとめる
- 出力形式は崩さない
出力形式:
通称:
正式名称:
メーカー:
農薬登録番号:
剤型:
内容量:
有効成分:
使用単位:
別名候補:
根拠:
推定事項:
```
### 21.8 貼り付け結果の取り込み方式
恵菜システム側では、LLM の回答を `項目名: 値` 形式で受け取り、
シンプルなルールベースで分解する。
例:
```text
通称: 仁井田米有機
正式名称: 複合肥料 DH85号
メーカー: 大東肥料株式会社
肥料区分: 指定配合肥料
登録番号: 不明
正味重量kg: 20
窒素%: 8.0
りん酸%: 5.0
加里%: 3.0
その他成分: 内水溶性加里 2.2
別名候補: 仁井田米有機
根拠: 袋の保証票に「複合肥料 DH85号」「大東肥料株式会社」「20キログラム」と記載あり
推定事項: 登録番号は写真から確認できない
```
取り込み後は、以下のようにフォームへ流し込む。
- `通称``Fertilizer.name`
- `正式名称``Fertilizer.official_name`
- `メーカー``Fertilizer.maker`
- `正味重量kg``Fertilizer.capacity_kg`
- `窒素%``Fertilizer.nitrogen_pct`
- `りん酸%``Fertilizer.phosphorus_pct`
- `加里%``Fertilizer.potassium_pct`
- `別名候補``MaterialAlias.alias_name`
- `根拠``推定事項``notes` または確認欄
### 21.9 この方式のメリット
- API 費用がかからない
- ユーザーが契約済みのサブスク LLM を使える
- 画像ベースの調査ができる
- 政府公式データに載っていない資材も扱える
- 恵菜システム側の実装が軽い
### 21.10 注意点
- LLM の回答をそのまま自動確定しない
- 保存前に必ず人が確認する
- `根拠``推定事項` を分けて表示する
- 重要な項目が不明なら、保存前に警告を出す
### 21.11 本案件における位置づけ
今回の現場肥料の実態を見ると、主軸として最も現実的なのは以下である。
- 主軸: `外部サブスクLLMを使った調査支援`
- 補助: `公式データ同期`
- 補助: `alias辞書`
この構成であれば、コストを抑えつつ、現場名・ブランド名・保証票名の差異にも対応しやすい。