コンテンツにスキップ
HaneDOCSEN

Hane Platform

Model Gateway

Agent と Hane Cowork がモデルを使うときに通る Model Gateway の役割、組織ごとの設定、上限、呼出しの記録を説明します。

このページでは、Hane の中からモデルを呼ぶときの入口である Model Gateway を説明します。誰が、どのモデルを、どれだけ使えるかを、組織の側でどう決めて確かめるかが分かります。

Model Gateway は、サンドボックスの中の Agent や社員の PC の Hane Cowork が、モデルの事業者を直接呼ばないようにするための関所です。

  • 実キーを外に出しません。 事業者の API キーは Hane の中だけに置き、サンドボックスにも PC にも渡しません。呼ぶ側が持つのは、実行や会話に結び付いた短命の資格情報だけです。
  • 呼出しごとに確かめます。 資格情報・許したモデル・予算・実行の状態を、1 回の呼出しのたびに確かめます。
  • すべての呼出しを記録します。 組織から見えないモデルの呼出しを残しません。
サンドボックスの opencode ──┐
├─(短命の資格情報)─> Model Gateway ─(実キー)─> 上流のモデル
PC の Hane Cowork ──────────┘ │
└─> 呼出しの記録・予算
呼ぶもの 入口 資格情報
driver: opencode の Agent OpenAI 互換の chat completions AgentRun に結び付いた、モデル用の RunToken。Tool Gateway 用のトークンとは別で、取り違えると拒否します
Hane Cowork の手元の会話 Cowork 専用の OpenAI 互換の chat completions 本人・組織・プロジェクト・環境に結び付いた 5 分の資格情報。期限の前に更新します
  1. ブラウザからの要求(Origin 付き)は受け付けません。
  2. 資格情報の署名・期限・対象を確かめます。Agent のモデル用のトークンを Cowork の入口で使うような取り違えも拒否します。
  3. モデルが、その環境で許したモデルの一覧にあるかを確かめます。ないモデルは拒否し、別のモデルへ切り替えません。
  4. 出力のトークンの上限と、要求の大きさの上限をかけます。
  5. 実行や会話が続いているか、予算が残っているかを確かめます。実行が終わった・取り消された・予算を使い切ったときは拒否します。
  6. 上流へ渡し、応答をそのまま流しながら使用量を読みます。流している間も数秒ごとに状態を確かめ、止められたら呼出しを切ります。

Agent のモデルの使用量は、プロジェクトと環境の Budget の modelTokensPerDay と、Agent の定義の limits.maxModelTokens で抑えます。実行を始めるときに maxModelTokens の分を 1 日の予算から予約するので、並べて起動しても合計が上限を超えません。設定の例は Agent と AgentRun にあります。

Hane Cowork でモデルを使えるかどうかは、プロジェクトと環境ごとの設定で決めます。設定するには cowork:manage が要ります。設定していなければ、使えません。

PUT /v1/cowork/policy
If-Match: "3"
Content-Type: application/json
{
"enabled": true,
"models": ["@cf/zai-org/glm-4.7-flash"],
"daily_token_limit": 2000000,
"session_token_limit": 200000,
"max_output_tokens": 4096
}
項目 意味
enabled このプロジェクトと環境で Cowork のモデル利用を許すか
models 使ってよいモデル。その環境で上流が持つモデルとの重なりだけが、実際に使えるモデル(available_models)になります
daily_token_limit 1 日に使えるトークンの数
session_token_limit 1 つの会話で使えるトークンの数
max_output_tokens 1 回の呼出しの出力のトークンの上限
local_tools PC の上の機能(ファイル・コマンド・ブラウザ・PC の操作・外部への送信)ごとの許可・確認・禁止

利用者は cowork:run で、自分の会話のモデル利用を始め、更新し、取り消します(/v1/cowork/model-sessions)。取り消すと新しい呼出しをすぐに拒否し、流れている呼出しも切ります。手元の機能の決まりは Hane Cowork の管理 で詳しく説明します。

Model Gateway は、上流へ渡す前に呼出しの記録を作り、終わったら使用量で確定します。記録が終わらなかった呼出しは、結果不明として、予約した数で保守的に数えます。

記録する 記録しない
組織・プロジェクト・環境、Agent と実行(Cowork では会話) プロンプトの本文
モデル、入力と出力のトークン、使用量を見積もったか 応答の本文
遅延と結果(ok・error・cancelled・stopped・unknown) 資格情報
上流が返した費用の単位(返す事業者だけ)

Agent の分は GET /v1/agents/model-usage で、日・Agent・モデルごとの集計として読めます。コンソールの「使用量と予算」の画面にも出ます。Cowork の分は、本人が GET /v1/cowork/model-sessions/{session_id}/invocations で読めます。