Nishiki ― より少ないコストで、より多くの成果を。AI の投資対効果を最大化するオープンソースツール

GitHubで見る

課題

企業の AI コストは膨らみ続けていますが、現場が見ているのは請求書に並ぶトークン額、つまりコストだけです。高いからと安いモデルに替えると品質が落ち、成果も一緒に落ちるため、成果あたりのコストはむしろ悪化します。そもそも、そのトークンが何の価値を生んだのかを測る単位が、世の中にありません。

解決策

AI の投資効果を金額ではなく価値で測るという方針(VOI:Value on Investment)を立て、それを計算できる単位(KOI:KPI on Investment = 達成 KPI ÷ 実行コスト)に落とし込みました。さらに KOI を実データで測り、最大化するためのツール Nishiki を開発しました。既存エージェントのソースを読み取り専用で解析して KPI を自動判別し、モデルを実行時メモリ上だけで差し替えて総当たりで実測し、品質を落とさず最も安い経路をブラウザ 1 枚で示します。

成果

軽量な抽出タスクでは、フロンティア級モデルの 84% の品質を約 1/117 のコストで出す経路を発見し、1 ドルあたりの品質(KOI)は約 100 倍になりました。実運用中の財務照合エージェント(Bedrock・50 件)では、現行構成と同等以上の品質を保ったままコストを 73% 削減し、KOI を 3.8〜4.3 倍に改善する経路を発見しました。いずれもエージェントのソースは無改変・読み取り専用で、課金は明示的な承認の後だけに限定しています。

Nishiki ― KOI(KPI ÷ コスト)で LLM エージェントの 1 ドルあたりの品質を測る

はじめに ― KOI と Nishiki とは何か

本プロジェクトで紹介する KOI(KPI on Investment) は、AI が生んだ価値を「1 ドルあたりの成果」で測る単位です。式はひとつだけです。

KOI=KPICost\text{KOI} = \frac{\text{KPI}}{\text{Cost}}

ROI が「投資に対するリターン」を表すように、KOI は「投資(=コスト)に対する KPI の達成度」を表します。AI が生み出す Return は、売上でもトークン数でもなく、KPI(成果)で測るべきだと考え、その考え方をそのまま単位にしました。

そして Nishiki は、この KOI を既存の AI エージェントに対して実データで測り、最大化するためのオープンソースのツールです。私がコンサルティングで AI エージェントの構築を支援するなかで、繰り返し直面してきたひとつの課題を解決するために開発しました。以下では、その課題から順に説明します。


なぜ「コストだけ」を見ると失敗するのか

きっかけは、AI エージェントを構築するたびに繰り返し直面してきた課題でした。企業が AI の推論コストに悩んでいるとき、節約策として提案できる手立ては、たいてい次の 5 つに落ち着きます ―― ルーターで安いモデルに振り分ける、プロンプトを短く整える、利用そのものを制限する、AI を使わない、プロバイダと値引きを交渉する。しかし、そのどれもが、現場がコストだけを見て意思決定していることの裏返しでした。

典型的な失敗は、次のように進みます。

flowchart LR
    A["請求書のトークン額に<br/>驚く"] --> B["安いモデルに<br/>切り替える"]
    B --> C["正答率が下がる"]
    C --> D["成果(KPI)も<br/>一緒に下がる"]
    D --> E["成果あたりのコストは<br/>むしろ悪化する"]

コストを下げるつもりで安いモデルに切り替えた結果、成果あたりのコストはかえって悪化してしまう。これでは本末転倒です。

ここで重要なのは、最大化すべきはコストと成果の比率であって、コストの安さだけではないという点です。コストを半分にしても品質が 6 割に落ちれば、1 ドルあたりの成果はむしろ下がります。逆に、品質を保ったままコストを 4 分の 1 にできれば、同じ 1 ドルが 4 倍の成果を生みます。見るべきは「成果 ÷ コスト」という比率です。

しかし、ここで新しい壁にぶつかります。その「成果」を、どうやって数えればよいのか、という問題です。


AI には「馬力」がない

現場で同じ問題意識を抱えていた頃、それを別の角度から言い当てた記事が二本、目に留まりました。

一本は semianalysis の記事です。semianalysis は、半導体や AI インフラの動向を専門に分析するメディアです。その記事は、産業革命には馬力(horsepower)という単位があり、だからこそ「この機械は人間や馬の労働をどれだけ代替できるか」を比較でき、投資判断ができた、という論点を示していました。

AI には、その馬力に相当する単位がありません。同じ 100 万トークンでも、無意味な文章かもしれず、重要なメールの要約かもしれず、企業戦略を左右する意思決定を支えるかもしれません。経済価値はトークン数では測れず、トークンが何を生んだかで決まります。 ―― semianalysis「AI Dark Output: The Visible Cost of AI’s Invisible Output

もう一本は Microsoft の動きです。同じ頃、Azure に、いま使っているモデルが実際にどれだけコストを消費しているかをリアルタイムで表示する Azure ROI という機能が追加されました。トークン量が企業の予算を圧迫している、という問題意識は共有しています。しかし、Azure ROI が可視化するのは、モデルにかかる実コストだけです。「そのコストが何を生んだのか」という問いには、まだ答えていません。

つまり、Microsoft のような大手であっても、可視化できているのは、かかったコストまでです。そのコストが生んだ価値を測る単位は、まだ誰も持っていません。言い換えれば、コストを削るという発想は広まっているのに、現場が本当に知りたい「そのコストが生んだ価値」に答えられる仕組みやツールが存在しない、ということです。この欠けている部分こそ、私が解決したいと考えた課題でした。


VOI ― 価値で測る、という方針

そこで、この課題に向き合うための概念を考えました。VOI(Value on Investment) です。AI の投資効果を、金額ベースの ROI ではなく「価値(value)」で捉える、という方針を指します。産業革命に馬力という物差しがあったように、AI の時代にも価値を測る物差しが必要だと考えています。

VOI はあくまで方針(何を目指すか)です。ただし「価値を測ろう」と言うだけでは、具体的な行動にはつながりません。そこで、次の三層に分けて整理しました。

flowchart TD
    VOI["VOI ― 何を目指すか<br/>方針:金額ではなく価値で測る"]
    KOI["KOI ― どう測るか<br/>単位:KPI ÷ コスト"]
    NISHIKI["Nishiki ― 何で測るか<br/>ツール:候補モデルを実測し<br/>KPI に最適なものを選ぶ"]
    VOI --> KOI --> NISHIKI
  • VOI = 何を目指すか(馬力に代わる、価値の物差し)
  • KOI = どう測るか(VOI を計算式に落とし込んだ最初の実装 = KPI ÷ コスト)
  • Nishiki = 何で測るか(候補モデルを実データで計測し、KPI に最適なものを選び出すツール)

抽象的な「価値」を、計算できる単位にまで落とし込み、実際に動くツールにまで具体化する。本プロジェクトは、この三層についての話です。


KOI ― VOI を計算できる単位にする

KOI=KPICost\text{KOI} = \frac{\text{KPI}}{\text{Cost}}

KOI には、実務で使えるように、いくつかの性質を持たせています。

  • 測れるものだけを対象にする。 KPI は数値化できるものに限ります ―― 照合の正答率、抽出の F1、人間の最終判定との一致率などです。採点の仕組みを用意できない業務は、KOI の対象外とします。数値で確かめられないものを「価値がある」とは言いません。
  • 品質フロア(下限)を設ける。 素の KOI(= KPI ÷ コスト)は、コストがゼロに近づくほど値が過大に膨らむため、「無料だが低品質」なモデルが 1 位に見えてしまいます。そこで、必達の品質ライン(フロア)を設け、それを下回る候補は失格とします。フロアを超えた候補の中から、最も安い経路を選ぶ ―― これが KOI の要です。

ROI の式にあてはめると、AI の時代は、I(Investment = コスト)は誰もが測っているのに、R(Return)を誰も測っていない状態だといえます。その R に KPI を据えたものが KOI です。Azure が示したのが I(コスト)だとすれば、KOI は R(リターン)を KPI として定義し直すものだと言えます。


Nishiki は何をするか

実際のエージェントに対して、実データで KOI を測るのが Nishiki です。すでにモデルを呼び出している AI エージェントがあれば、Nishiki は、経営層が本当に知りたい問いに答えます ―― どのモデルが 1 ドルあたり最大の品質を出すのか、品質を落とさずにどこまでコストを下げられるのか。

操作は、コマンド 1 本から始まります。オーケストレータ役の AI が数問だけ質問し、あとは自動で進みます。

cd /path/to/your/agent
nishiki
flowchart LR
    A["nishiki 起動"] --> B["ソースを読み<br/>KPI を自動判別"]
    B --> C["価格帯で<br/>モデルを提案"]
    C --> D["無料ドライラン<br/>→ コストゲート"]
    D --> E["実測 → KOI 表<br/>(ブラウザ)"]
  1. ソースを読んで KPI を自動判別 ―― エージェントのコードから、モデルを呼び出している箇所(チョークポイント)を見つけ、「ラベル分類」か「抽出・生成」かを読み取り、採点関数(一致率/スパン F1 など)を自動で選びます。採点方法を手作業で設定する必要はありません。
  2. モデルを価格帯で提案 ―― 激安からフロンティアまでを横断して候補を並べます(OpenRouter / Bedrock)。
  3. 無料ドライラン → コストゲート ―― 課金前に見積りを提示します。承認するまで一切課金しません。
  4. 実測 → KOI 表 ―― ブラウザのダッシュボードで、KOI・コスト・レイテンシを一望できます。品質フロアのスライダを動かすと、その品質を満たす最も安い経路が即座に並び替わります。

Nishiki KOI ダッシュボード(初回計測タブ)― カード・チャート・フロア付きリーダーボード

初回計測ダッシュボード。KOI/コスト/レイテンシのカード、候補ごとの推移チャート、KPI フロアのスライダを備えたリーダーボードです。数式もモデル名も知らなくても、1 ドルあたり最良の経路が一目で分かります。

そして重要なのは、開発中もリアルタイムで確認できることです。エージェントを動かしている横で、Nishiki は 1 コールごとの KOI を、モデルを一切呼び出さずに表示します(トークン数 × 単価をローカルで計算するだけです)。プロンプトや実行経路を変えながら、コストと KOI がどう動くかをその場で確認できます。「実行する前に、まず KOI を見る」を習慣にするための仕組みです。

Live タブ。エージェントを動かしている横で、1 コールごとに累積コスト・平均 KOI・グラフがリアルタイムに動きます(モデルは呼び出さないため、課金はゼロです)。

実例① ― 軽量・自己完結:スパン抽出

まず、誰でも数分で試せる小さな例で、KOI の効き目を示します。使うのは、短い文章(パッセージ)と質問を受け取り、その答えにあたる部分を文章からそのまま抜き出すエージェントです(言い換えはしません)。たとえば「アマゾン川はどの海に注ぐか」という質問に対して、本文中の「大西洋」という語をそのまま返します。

採点方法は、こちらで指定する必要はありません。Nishiki がエージェントのソースを読み、「決まった選択肢から選ぶ分類ではなく、文章の一部を抜き出すタスクだ」と判断し、それに合った採点方法 ―― スパン F1(返した文字列が正解とどれだけ重なるかを 0〜1 で測る指標)を自動で選びます。品質フロア(必達ライン)は 0.55 に設定されています。

この設定で 4 モデル × 12 問を実測した結果です(KOI = KPI ÷ コスト)。

モデルKPI(スパン F1)$ / 件KOI位置づけ
deepseek0.79$0.000165007フロア超え・激安 = 最良のコスパ
glm-4.60.55$0.00158350フロアぎりぎり
gpt-40.76$0.00343221中庸
gpt-5.4-pro(フロンティア)0.94$0.0187250品質は最高、コスパは最低
1 ドルあたりの品質(KOI)― deepseek = 100% に正規化
deepseek
5007
glm-4.6
350
gpt-4
221
gpt-5.4-pro
50
フロンティア(灰)は品質は最高(F1 0.94)ですが、1 ドルあたりで見ると deepseek(緑)の約 1/100 です。

品質だけを見れば、フロンティアのモデルが最高(F1 0.94)です。しかし KOI で見ると、そのフロンティアは 50 で最下位です。一方 deepseek は、フロンティアの 84% の品質(F1 0.79)を約 1/117 のコストで出すため、KOI は 5007 ―― フロンティアの約 100 倍になります。つまり KOI は、品質とコストのどちらか一方ではなく「同じ 1 ドルでどれだけの成果を得られるか」を 1 つの数字で表し、最もコスパの高いモデルを一目で示します。これが、上のリーダーボードで各モデルを KOI 順に並べている理由です。なお、KOI はコストが安いほど大きくなるため、品質フロアがなければ、質の低い出力を返す激安モデルが 1 位に見えてしまいます。そこで、フロア(今回は F1 0.55)を下回るモデルは候補から外します。

この結果は、そのままダッシュボードで確認できます(deepseek が先頭のリーダーボード)。cd samples/span_extract && nishiki koi-report --web を実行すれば、鍵も課金も不要で、同じ画面が開きます。


実例② ― 業務の現場:財務書類の照合エージェント

同じ枠組みは、業務で使う AI エージェントにもそのまま活用できます。ここでは、私が実際に運用している Bedrock 上の「財務書類の照合 AI エージェント」(書類を読み、OK/要確認 を判定するもの)に Nishiki をかけた結果を、顧客固有の情報を伏せて紹介します。KPI は人間の最終判定との一致率で、50 件を実測しました。

業務エージェントの KOI ダッシュボード(顧客情報は非表示)

財務照合エージェントの初回計測。現行構成(CASCADE)を基準に、候補モデルを総当たりで実測しています。品質フロアは 75% です。

結果は明確でした。現行の CASCADE 構成(複数モデルの多段構成)は KOI 28 にとどまります。これに対して、候補モデルは次のように上回りました。

1 ドルあたりの品質(KOI)― 現行 CASCADE vs 候補(qwen-vl = 100% に正規化)
CASCADE(現行)
28
qwen-vl
120
kimi-k2.5
107
現行 CASCADE(灰)を、品質フロア 75% を満たす候補(緑)が大きく上回ります。
  • qwen-vl:KPI 80%(フロア超え)で KOI 120 = 現行の 4.3 倍。1 件あたり $0.0301 → $0.00669。
  • kimi-k2.5:KPI 86%(現行より高い品質)で KOI 107 = 3.8 倍。
  • 累積コストは $1.5071 → $0.4009(−73%)。品質ラインを守ったまま、コストが 4 分の 1 近くまで下がります。
  • 一方で、フロア 75% を下回った gemma / nova / mistral は自動的に失格となります(表の下段でグレーアウト)。「安いが品質が足りない」候補を、KOI が正しく弾いています。

KOI の枠組みはドメインに依存しないため、分類でも非分類でも、軽量でも業務でも、同じ 1 枚の表に落とし込めます。


設計の要 ― Nishiki が守っている原則

派手さよりも先に、ツールとして信頼できることを優先しました。

  • 読み取り専用。 対象エージェントのコード・DB・データは一切変更しません。モデルの差し替えは実行時メモリ上だけで行うため、本番構成にそのまま適用できます。
  • 課金は明示的な承認の後だけ。 まず無料のドライランで配線(読み込み → プロンプト → パース → 採点)を検証し、次にコストゲートで見積りを提示します。承認するまで一切課金しません。
  • 校正 → 静的運用の 2 相。 最初に一度だけ実データで測って基準値を作り、以後は静的に運用します。「実行して測る必要がある」のは欠陥ではなく、意図した校正ステップです。
  • 経営層は KOI という一つの数字を見るだけでいい。 数式もモデル名も知らなくても、KOI を見れば、現行構成が最良の選択なのか、同じ品質でどこまでコストを下げられるか、同じコストで品質をどこまで上げられるかが一目で分かります。

Nishiki が目指すもの

KOI という指標があれば、AI の投資対効果を手軽に捉えられます。「実行する前に、まず KOI を見る」を習慣にする ―― その入口に Nishiki を置きたいと考えています。


残っている課題

現時点での制約を、正直に挙げておきます。

  • KOI が測れるのは、採点関数が書ける KPI に限ります。 照合の正答率、抽出の F1、人間判定との一致率などです。「価値」を定性的にしか言えない業務は、いまの KOI では測れません。
  • KPI の採点に人間が必要な場合があります。 AI に自分の出力を採点させると、成果を出す側と採点する側が同じになり、その KPI は信用できません。AI はあくまで仮ラベルの下書きで作業を速めるだけで、最終的な正解は人間が担保します。
  • コストは各候補の API 定価で計算しています。 「もし切り替えたら幾らになるか」という公平な比較軸であって、ある実験で実際に支払った額とは必ずしも一致しません。

これらの制約は隠さず、あらかじめ示しています。KOI は万能の「価値メーター」ではありません。測れるものを、正直に、比較できる形で測るための単位です。


おわりに

AI のコストは、もう誰でも把握できます。しかし、そのコストが生んだ価値を測る単位は、まだ世の中にありません。その足りない部分を埋めるために、私は VOI という方針、KOI という単位、そして Nishiki というツールを用意しました。

目指すのは、「コストを削る」から「同じ 1 ドルでより多くの成果を得る」への転換です。Nishiki は、そのための最初のツールです。

試す

Nishiki はオープンソース(Apache-2.0)として公開しています。リポジトリはこちらです。

https://github.com/matu79go/nishiki

pip install git+https://github.com/matu79go/nishiki.git
cd nishiki/samples/span_extract
nishiki koi-report --web        # 鍵なし・課金なしで、上のダッシュボードが開く

付録

命名について

最初の名前は KPC(KPI per Cost)でした。式には忠実ですが、言いづらい名前です。そこで、連想しやすさを重視しました。ROI は世界で最も通じるビジネス指標です。その R を K(KPI)に替えれば、「AI 版の ROI だ」と説明なしで伝わります。そこで KOI(KPI on Investment) としました。「鯉」と同音であることは、今回はフックとして活かしています ―― コストの川を遡り、成果へと化ける鯉、登竜門のイメージです。ツールの名 Nishiki(錦鯉) も、そこから来ています。

測定環境・出典

  • 実測は OpenRouter / Amazon Bedrock の候補モデルに対して実行しました。価格は各プロバイダの定価(nishiki models で取得)です。
  • 軽量サンプルのデータは、ドメイン中立に自作した 12 問(著作権フリー)です。業務例は Bedrock 上の実運用エージェント(顧客情報は非開示)です。
  • リポジトリ:https://github.com/matu79go/nishiki (Apache-2.0)。
  • 背景記事:semianalysis(AI には horsepower に相当する単位がない、という論点)、および Microsoft の Azure ROI(モデルにかかる実コストのリアルタイム可視化 ― コストのみで、生んだ価値は測らない)。

この記事をシェア

この記事についてのLinkedIn投稿でコメントや意見を共有できます。

LinkedInで議論する