AI副業で「数字が違う報告書」を納品する地雷
AI副業でクライアント案件を受けたフリーランスが、最後の最後でやらかすパターンが1つある。「集計の数字が違っていた」だ。自分は10年以上現役エンジニアをやりながら副業でAIエージェントを運用しているが、ここは何度も冷や汗をかいた領域だ。
文章の生成は出来た。グラフも綺麗に出力できた。なのに納品物の四半期平均が小数点1桁ズレていて、クライアントからメール1本で全部の信頼が吹き飛ぶ。
LLMに集計まで丸投げしている人は、これに気付いていない。ClaudeもCopilotも「平均出して」「前年比どれだけ?」と言えばそれっぽい数字を返してくれる。でも返ってきた数字を電卓で叩き直すと、桁がズレていたり対象の月が混ざっていたりする。
副業で稼ぐ仕組みを作る時、ここで線を引けるかが分かれ目だ。「文章生成はLLM、計算は別の仕組み」と分担できる人は、納品物の信頼で次の案件が来る。「全部AIに任せれば早い」で押し切る人は、1回目の納品で関係が終わる。
今回参考にしたのは、クラスメソッドのdev.classmethod.jpに出たCopilot Studioシリーズ第6回の記事だ。KPI集計を「LLMに任せず決定論的にやる」2経路を、2026年6月時点で実機検証している内容を読んだ。読んで頭の中が整理されたので、副業視点で何が効くのかをまとめておく。
Copilot StudioのKPI集計を決定論化する2経路
元記事の構造はシンプルで、生成AIに数字の計算を任せないために、「集計コードを先に書いて固定する」というアプローチを2つ並べていた。
①Code Interpreter(Python)
Copilot Studioが内部でPythonを実行して集計する経路。プレミアム機能でCopilot Creditsを消費する
>
②Office Script(TypeScript)
Excel側にスクリプトを置いて、Copilot Studioのフローから呼び出す経路。標準コネクタで動く
どちらも「集計の計算ロジックを先に書いて固定しておく」点は同じだ。違うのは「どこでコードが走るか」と「課金がどう発生するか」になる。
Copilot Studio(開発元: Microsoft)は、Microsoft 365とPower Platform上でAIエージェントを組むためのローコード基盤だ。プロンプトと外部データを組み合わせて、社内向け・社外向けのAIエージェントをGUIで作れる。今回の話はその上で「計算はAIではなく決定論的な仕組みに渡す」設計の話になる。
Code Interpreter: Pythonをプロンプトに埋め込む
1つ目はCode Interpreter(コードインタープリター)という機能を使う経路だ。これはCopilot Studioが必要に応じてPythonを生成して、その場で実行する仕組みになる。ExcelやCSVをチャットに添付して「集計して」と言えば、AIがPythonを書いてpandasで集計してくれる。
ただ、何も指示しないと「依頼のたびにPythonコードを書き直す」挙動になる。「同じ集計を頼んだのに、毎回違うコードを書かれている」状態だ。これでは納品物として怖くて使えない。
そこで元記事の著者は、プロンプトにPythonコードを直接埋め込んで「このコードのまま実行して」と指示する方法を試している。コードを毎回AIに書かせるのではなく、人間が用意したコードをAIに「走らせるだけ」にする発想だ。
ポイントは、これがプレミアム機能でCopilot Creditsを消費することにある。副業で案件を受ける時に「クライアント環境にプレミアム枠があるか」を最初に確認する必要がある。ここが無いと、設計を全部やり直すことになる。
Office Script: TypeScriptをExcel側に置く
2つ目はOffice Scriptを使う経路になる。これはExcel for the web(およびWindows/Macデスクトップ版)で動くTypeScriptベースの自動化機能で、Excel側にスクリプトを置いておき、Copilot Studioのエージェントフローから呼び出す。
VBAを思い浮かべる人もいると思うが、VBAはデスクトップ専用で、Copilot Studioのフローから呼び出せない。フロー連携が必要な場面ではOffice Script一択になる。
こちらのメリットは、毎回まったく同じコードがそのまま走ることだ。AIが書き直す余地が無い。さらに標準コネクタで動くので、Code Interpreterのプレミアム課金は発生しない(本番フローではアクション分のCopilot Studio容量は消費する点だけ注意)。
デメリットは、TypeScriptを事前に書く必要があること。「自然言語で頼んだら動く」ではなく、スクリプトを1回ちゃんと書く工数が要る。ただこれは副業案件においては逆にメリットになる場合がある。「動作を見せられる成果物」が増えるからだ。クライアントに渡す時に「このスクリプトが固定で走ります」と物理的に見せられる安心感は、口頭の説明より遥かに強い。
「同じプロンプトを6回投げて計算ロジックが揺れたか」検証で見えたこと
元記事の一番面白かったのが、同じプロンプト(= Pythonコードを丸ごと埋め込んだプロンプト)を6回投げて、結果と実行コードの一致率を測っていた部分だ。
・出力値: 6回とも一致(合格基準どおり)
・実行コード: 6回で2か所差分が出た
– ファイル読み込み行(read_excelとread_csvが混在)
– ダブルクォート/シングルクォートの差し替え
つまり「集計ロジック本体は揺れていない」が、「コードの周辺部分はAIが勝手に書き換える」結果だった。
この検証結果から自分が引いた線は2つある。1つ目は「ロジック本体は固定できる」、2つ目は「ファイル取り込み行は固定できない」だ。
副業案件で「再現性ある集計ロジックです」とクライアントに説明する時、この線をどこに引くかで信頼が変わる。「全部固定です」と言ってバレるより、「集計ロジックは固定、入出力経路はAIが判断します」と最初に伝えた方が早い。誇張せず、検証で確認した範囲をそのまま開示するのが、結果として案件継続率を上げる。
そしてもう1つ重要な観点が「実行時間」だ。元記事ではCode Interpreterの応答時間が1回目で約2.5分、2回目で約3分かかっていた。Copilot Studioのエージェントフローには「2分を超えると失敗」という時間制約があるので、本番フロー化した瞬間に時間切れになる可能性がある経路ということになる。
ここを読んだ瞬間に、「本番運用したい案件はOffice Script、検証やPoCはCode Interpreter」という分け方が見えた。テストチャットでサクッと回す分にはCode Interpreterが速い。でも本番運用にエージェントフロー経由で組み込むと、2分制約に当たりやすい。この性質を最初に整理して案件設計に組み込めるかで、後半の地獄が変わる。
AIへの仕事の切り分け方が、稼げる人と稼げない人を分ける
AI副業で月数万を超えていく人と、仕組みは作れたのに1円も生まれない人の違いは、ここに集約されている気がする。「AIに何を任せるか」を分解できているかどうかだ。
AIに任せるべき仕事は、文章生成・要約・分類・たたき台作りのような「曖昧な入力から、それっぽい出力を出す」種類の仕事になる。逆に、計算・集計・転記・形式変換のような「正確性が前提の仕事」は、決定論的な仕組み(スクリプト・関数・SQL・Excel関数)に渡すべきだ。
副業案件で「AIを使った業務自動化」を受けると、ここを区別できていない発注者が多い。「全部AIで良くないですか?」と言われる。ここで「AIが得意な部分と、別の仕組みに渡した方がいい部分があります」と説明できるかどうかが、単価を上げる入口になる。発注側からすると「全部AIです、安く済みます」より「ここはAI、ここは決定論的、理由はこうです」と分解された提案の方が、結果として高い金額で通る。リスクの所在が見えるからだ。
自分の経験で言うと、Claude Codeを使ったAIエージェントを副業で運用していて、計測値の集計まわりは全部Pythonスクリプトに分離している。LLMには「集計結果を読んで示唆を出す」「次に試すべき仮説を出す」のような曖昧な仕事だけを渡している。この切り分けに辿り着くまでに何度も納品物の数字でズレを出した。文章は綺麗なのに数字が違う、というのは一番怖い。読み手は文章を信用してしまっているので、数字が違うことに気付くのが遅れる。
クライアント側から見ると、「数字が正確で、コメントが鋭い」納品物が一番ありがたい。「AIが全部書いた数字曖昧なレポート」より、ずっと単価が付く。AIが文章を書いていること自体は今の時代ほぼ前提なので、差別化は「数字の正確性」「コメントの鋭さ」の方に寄っていく。
これはCopilot Studioに限らない話で、Claude/ChatGPT/Geminiどれを使っても、計算は別の仕組みに渡すという設計思想は共通になる。元記事の著者が選んだCode InterpreterとOffice Scriptは、その思想をMicrosoftエコシステムで具現化した2経路、と読み解ける。
副業のスタンスとして覚えておきたいのは、「AIを全部に使う」が稼げる人の姿勢ではなく、「AIに渡す部分と渡さない部分を分けられる」が稼げる人の姿勢だ、ということ。仕組みを作れる技術力より、ここの判断ができるかが分かれ目になる。仕組みは作れても収益が出てない人は、ここの線引きを一度紙に書き出してみると、自分の納品物の弱点が見えてくる。
まとめ
- 数字の集計をLLMに任せると、桁ズレ・対象取り違えで納品物の信頼が吹き飛ぶ。文章生成と計算は分離する
- Copilot Studioで集計を固定する経路はCode Interpreter(Python)とOffice Script(TypeScript)の2つ。前者はプレミアム課金、後者は標準コネクタで本番運用向き
- 「同じプロンプトを6回投げる」検証では、集計ロジック本体は固定できたが入出力行はAIが書き換えた。「どこまで固定できるか」を最初に線引きすると説明責任が果たせる
AIを全部に使う発想ではなく、AIに任せる仕事と決定論的に処理する仕事を切り分ける発想が、副業で単価を上げる入口になる。
参考
【PR】フリーランスエンジニアにおすすめのツール
XServerショップ — ブログやLPの立ち上げに使える老舗レンタルサーバー。副業案件のポートフォリオ置き場として手堅い選択肢になる。
.com/.net 0円〜 — 屋号や案件用のドメインを安く確保できる。営業前の準備として早めに押さえておきたい。
Python Winner — Python案件で詰まる人向けの学習教材。集計や自動化スクリプトを書ける状態を作りたい人に向く。
【PR】おすすめの書籍
記事の内容に関連する書籍を紹介させてほしい。
もっとシゴトがはかどる Python×Excel×AI 業務自動化の教科書
PythonとExcelをAIと組み合わせて業務を自動化する手順を解説した一冊です。集計や帳票作成を仕組み化したい方の参考になります。
Mastering Claude Opus 4.6 The First Complete Guide to Anthropic’s Most Powerful AI (English Edition)
Anthropicが開発するClaude Opus 4.6の使い方をまとめた英語ガイドです。最新モデルを業務に取り入れたい方に向けた入門書として読めます。


コメント