仕組み
3ステップで、完全なガバナンス。
SDKをインストールするか、ゲートウェイを指定するだけ。ポリシーを定義すれば、すべてのリクエストが評価され、すべての判定が記録されます。
// 001
インストール。定義。適用。
01
インストール
SDKをインストールするか、APIのベースURLをゲートウェイに向けるだけです。パッケージは1つ、設定は1行。インフラの変更は不要です。OpenAIやAnthropic、Googleのほか、LangChain、CrewAI、AutoGen、MCPなどに対応しています。
02
ポリシーを定義
ルールは、ダッシュボード、API、またはローカルのJSONファイルで設定します。モデルの許可リスト、コスト上限、ツールの制限、PIIフィルターなどを指定できます。ポリシーは暗号署名され、ローカルにキャッシュされます。
03
適用と監査
すべてのリクエストは、実行される前に評価されます。すべての呼び出しに対して、許可、拒否、警告のいずれかを指定でき、ゲートウェイをシャドーモードで実行すれば、判定を適用せずにログへ記録できます。すべての判定に完全な監査証跡が残ります。検索とエクスポートが可能で、コンプライアンス対応の準備も整っています。
// 002
コード例
既存のクライアントをラップするだけ。それ以外はそのままです。
Python
# 1. Install: pip install controlzeroimport controlzerofrom controlzero.integrations.openai import wrap_openaiimport openai# 2. Initialize with your project keycz = controlzero.init(api_key="cz_live_...")# 3. Wrap your client; governance is automaticclient = wrap_openai(openai.OpenAI(), cz)# Use as normal. Every call is governed + audited.response = client.chat.completions.create( model="gpt-4", messages=[{"role": "user", "content": prompt}])Node.js
// 1. Setup once: npm config set @controlzero:registry https://npm.controlzero.ai// 1b. Install: npm install @controlzero/sdkimport { Client } from '@controlzero/sdk';import { wrapOpenAI } from '@controlzero/sdk/integrations';import OpenAI from 'openai';// 2. Initialize with your project keyconst cz = await Client.create({ apiKey: 'cz_live_...' });// 3. Wrap your client; governance is automaticconst client = wrapOpenAI(new OpenAI(), cz);// Use as normal. Every call is governed + audited.const response = await client.chat.completions.create({ model: 'gpt-4', messages: [{ role: 'user', content: prompt }],});// 003
ダッシュボードからのポリシー管理
ポリシーは、Control ZeroのダッシュボードまたはAPIで定義します。コードの変更は不要です。ポリシーは暗号署名され、SDKにリアルタイムで同期されます。
- >モデルの許可リストとブロックリスト
- >リクエストごとのトークン数とコストの上限
- >ツールとリソースの制限
- >ロールベースおよび時間ベースの条件
controlzero.yaml
version: '1'rules: # Allow read-style actions on any tool - allow: 'read_*' # Block a destructive filesystem action outright - deny: 'filesystem:delete_file' reason: 'No destructive file operations' # Restrict model calls to an approved model - effect: allow action: 'llm:generate' resource: 'model/gpt-5.4' reason: 'Approved model only' # Default deny - deny: '*'同じルールを、ダッシュボードで作成することも、API経由で送信することも、ローカルのポリシーファイルとして保持することもできます。JSONにも対応しています。
// 004
リクエストの流れ
すべてのリクエストは、この経路をたどります。ほとんどのステップはローカルで評価され、呼び出しごとのネットワークの往復は発生しません。
お使いのアプリ
エージェントが、ラップされたクライアントを通じてLLMを呼び出します。
SDKによるポリシーチェック
ポリシーはキャッシュからローカルで評価されます。有効なリクエストにネットワーク呼び出しは発生しません。
プロバイダー呼び出し
SDKモードおよびローカルモードでは、リクエストはお客様のプロセスからLLMプロバイダーへ直接送られ、当社は経路に含まれません。監査レコードはお客様のControl Zeroバックエンドへ送信され、プロンプトとレスポンスのキャプチャはオプトインで、デフォルトではオフです。ゲートウェイモードはプロキシであるため、トラフィックは指定したゲートウェイを経由します。
監査ログ
判定内容とメタデータは、耐久性のあるローカルログに書き込まれたあと、非同期でバックエンドへ配信されます。