「通帳を1行ずつ手入力していたあの頃の私へ──ChatGPTでその作業、もうやめていいかもしれない。」
ChatGPT PlusとVision機能を活用して、通帳の自動仕訳にチャレンジしてみました。
これまでにも、ChatGPT API×GoogleスプレッドシートのAI関数を使って勘定科目の自動分類に取り組んだことがありましたが、トークンコストや運用面を考えると、まだ実務導入には少しハードルがあると感じていました。
▼以前の記事はこちら
そこで今回は、ChatGPT Plusだけでどこまでできるか?に焦点を当て、
ChatGPT Visionで通帳をOCR → Excelで分類 → 勘定科目の自動転記という別アプローチでの検証を試みました。
VisionのOCR精度、想像以上に高い!
まず、ChatGPT PlusのVision機能を使い、通帳画像をアップロードします。
プロンプトはシンプルに、以下のようなものを添えました。
「この通帳画像の内容をVisionで読んで、日付/お支払金額(円)/お預かり金額(円)/差引残高 の表にしてください」
たったこれだけの一文と、通帳画像をchatGPTに送信するだけで、表形式のテキストが自動で返ってきました。
正直、精度の高さにびっくりです。
多少の誤字(例えば「R5年」が「2005年」と認識される、*580円を1580円と誤認識など)はあるものの、ほぼ正確にOCRされており、確定申告や記帳作業の補助ツールとして十分使えるレベルに感じました。
なお、chatGPTではvisionで起こしたものを直でExcelに入れることは(AIいわく)難しいらしいので出力された表形式のテキストをコピーして、Excelに貼り付けます。
通帳データをExcel化して、仕訳プロンプトで分類!
Visionで得られた表データをExcelに貼り付け、今度はAIに勘定科目を分類させてみます。備考欄は今回適当に考えました。
今回は「焼肉屋の経理担当者」という想定で、以下のような業種別プロンプトを準備。
----------------------------------------
あなたは焼肉屋の経理担当者です。
これから通帳の内容をExcelファイルに出力したものを見せます。
E列に記載の備考欄を分類し、
【消耗品費】【福利厚生費】【材料仕入】【通信費】【水道光熱費】【旅費交通費】の中から1つだけ選び、
F列に出力してください。
また、G列に理由を出力してください。
【分類ルール】
- 精肉店、畜産農家からの食材購入:材料仕入
- 飲み物(サントリーなど)の購入:材料仕入
- 光熱費(電気・ガス・水道。〇〇電力、上下水道などの表記を含む):水道光熱費
- 制服や作業着(ユニクロ、ワークマン等):福利厚生費
- 事務用品:消耗品費
- 通信会社(KDDI・ソフトバンクなど):通信費
- ソフト使用料・ライセンス料:通信費
- ホテル・駐車場代(東横イン、パーキング等):旅費交通費
【出力ルール】
- 科目名1語のみ(例:消耗品費)
- 【】や補足は不要
- 判断不能な場合は「不明」と返す。推測は禁止。
分析結果は、CSV UTF-8(コンマ区切り)形式で返す。(文字化け防止)
----------------------------------------
形式もCSV UTF-8(BOM付き)で出力させることで、初期の文字化けも解消。
▼Excelを添付して、プロンプトと共に送信してみます。
おっ、これは良いのでは……!と一瞬思いました。
ところが…7行目からAIが沈黙する謎
最初の数行は完璧な分類ができていたにも関わらず、なぜか7行目以降から「不明」と返すように。
KDDIやマイクロソフトなど明らかに通信費と判別できる項目は分類されているのに、東京電力や東横イン、渋谷パーキングなど、条件に合致するはずの情報がスルーされてしまいました。
プロンプトを調整して再実行することである程度改善されたものの、
明文化されたルールがないと対応できない様子。
このあたりは、やはり人間のような「文脈理解」はまだ難しいと感じました。
特に明文がなくても、
ネクスコニシニホン → NEXCO 西日本 ← 高速代!
ユニクロ → ユニクロ ←制服買った?
などと認識してくれる世界には、まだ遠いようです。
前月比で仕訳させてみた
最初から仕訳を任せる方法があまりうまくいかなかったため、少し方向性を変えて、「前月(8月)の通帳データにある備考欄と仕訳のペア」を、今月(9月)のデータと比較してもらい、内容が一致または類似していれば、自動で勘定科目を転記するという手法に切り替えてみました。(経理初心者がやる実務としてはこっちの方がむしろ多いですよね)
▼8月のデータ(F列を9月に転記する)
プロンプト内容
-----------------
あなたは経理担当者です。
これから8月の通帳と、9月の通帳の内容ををExcelファイルに出力したものを見せます。
8月と9月のE列(備考欄)を比較し、一致であれば、9月ExcelのF列に、該当の勘定科目を転記してください。
ただし、たとえばアマゾン → アマゾンジャパンや、トウキョウパーキング → カンサイパーキングのように、表記揺れがあっても、
文脈として同じ内容であれば、転記して問題ありません。
また、概要を読み取り、たとえば、ドコモ →通信費の場合、同じ通信会社系列でソフトバンク→通信費などと、推測できそうな場合はそれも転記してください。
判断不能な場合は「不明」と返し、推測は禁止とします。
-----------------
結果:想像以上にうまくいった!
VisionでOCRした9月の通帳データと、8月の仕訳データを比較させた結果、
かなりの精度で勘定科目が転記されました。
もちろん完全ではありません。
たとえば「ユニクロシブヤテン」と「シブヤサケテン」を混同し、材料仕入に分類してしまうような例外もありましたが、
表記の類似性だけでなく、「意味が近いかどうか」までをある程度考慮してくれていたのが印象的でした。
ただし、プロンプトで「ソフトバンクが通信費ならドコモやAUも通信費だよね?」という意図を書いたにもかかわらず、通信会社の違いによる表記揺れには未対応で「不明」と返されていました。
「推測禁止」と明記していたことが影響しているようで、曖昧な判断を避けた結果とも言えます。
実際、通信会社が月ごとに変わることは少ないため、「不明」と返されるぐらいの慎重さのほうが実務ではありがたい場面もあるかもしれません。
なお、前回の続きでこの転記をさせたので、プロンプトには記載していませんがAIが勝手に「分類と、理由も書いておいた方がいいよね?」と判断しちゃってます。
最初から必要な場合には、プロンプトに明記しておいた方が良いと思います。
結論:VisionのOCRは超優秀、前月比仕訳は現実的
実際に試してみた印象としては、
-
仕訳精度はPlus単体よりも、ChatGPT API(AI関数)を使った方が高かったように感じました(ただし、プロンプトが長くなり、運用コストも高め)。
また、今回のような「前月仕訳を辞書的に活用するパターン」は、特に中小企業や個人事業主などでの実務にフィットする可能性があります。
毎月似たような支払いがある業種では、前月データをベースにするだけで、仕訳の8割は自動でできるとも言えるかもしれません。
今後に向けて
現時点ではまだ完璧とは言えませんが、「通帳画像をアップするだけで、仕訳まで完了する未来」は確実に近づいています。
個人情報の扱いに注意しつつ、Visionを高精度OCRツールとして業務の一部に組み込むだけでも、大きな業務効率化が見込めます。
今後は、AI関数とVisionを組み合わせた“学習型仕訳AI”にもチャレンジしていきたいと思います!
▼関連記事
▼ChatGPT活用なら書籍もおすすめ!
![]() |
新品価格 |
▼ 役に立ったらブックマークお願いします!