要約
AIコード生成 ロールアウト シミュレーターは、問題のあるAI生成変更が、巻き戻されるまでに月間エラーバジェットをどれだけ消費するかを示します。トラフィック、SLO、ロールアウトの段階、ソーク時間、検知速度を入力してください。単一の100%デプロイ、人間が監視する段階的ロールアウト、自動SLOゲートを比較します。計算は手で検算できる算術だけを使います。
AIが書いた変更が、ロールバックまでにどこまで広がるかを試算
AIコード生成 ロールアウト シミュレーターです。トラフィック、SLO、段階的ロールアウトの設定を入力すると、不具合のあるAI生成コード変更が、単一デプロイ、ダッシュボードを見る人間、自動ゲートのそれぞれで、エラーバジェットをどれだけ消費するかを表示します。
計算は3つの式だけ。隠れたモデルはありません
エラーバジェット
バジェット = (1 - SLO) × 1秒あたりの平均リクエスト数 × 2,592,000秒(30日)。200 req/s、99.9%の場合、月に許容される失敗リクエストは518,400件です。
時間経過による露出
ロールアウトの段階は、各分で新しいコードが受けるトラフィックの割合を示します。シミュレーターは最初のリクエストから、検知時間と巻き戻し時間を足した時点までその割合を積分するため、検知が遅いと変更はより大きな段階まで進んでしまいます。
失敗リクエスト
失敗数 = 1秒あたりのリクエスト数 × 失敗率 × 露出の積分。これをバジェットで割ると、問題のある変更1件が月間で占める割合になります。同じ段階で3つの検知方式を比較します。
AIが生成した差分から、ロールアウト計画まで
-
1
悲観的な入力を選ぶ
AIコード生成ツールが書き、短時間でレビューされた変更は、間違っていた場合の失敗率を高めに設定し、人間が検知するまでの時間は直近で最も遅かったインシデントに合わせてください。最も良かった場合に合わせてはいけません。
-
2
3つのシナリオを比較する
単一デプロイは最悪ケースを示します。段階的ロールアウトで人間が監視する場合は、現在の段階で何が防げるかを示します。自動ゲートは、SLOの指標にもとづくゲートがあれば何が変わるかを示します。
-
3
計画を運用手順書にコピーする
コピーボタンは、段階と最悪ケースのバジェット消費率をプレーンテキストで書き出します。変更チケットやプルリクエストの説明にそのまま貼り付けられます。
最初の段階で、バジェットの大部分を守れます
1%のトラフィックで20%のリクエストが失敗する変更は、0.2%のリクエストで失敗を起こします。同じ変更が100%に届くと、5件に1件が失敗します。この2つの数字の差こそが、段階的ロールアウトを行う理由です。生成ツールが数秒で数百行を出力できる場合、1行あたりのレビュー時間は減り、最初の段階が問題を見つける場所になります。
- 1%の最初の段階は、他の何かを計測する前に、影響範囲を99%抑えます。
- ソーク時間が役立つのは、その時間内に回帰を検知できるシグナルがある場合だけです。
- 速く巻き戻すことも、速く検知することと同じだけ価値があります。どちらも露出の積分に加算されます。
3つの数値をどう判断するか
単一デプロイ
もっともらしい失敗を想定したとき、この数値が月間バジェットの5%を超えるなら、一度にデプロイすることは1件の変更にバジェットを使い切る判断です。意図してそれを選ぶチームはほとんどありません。
段階的、人間が検知
オンコール担当がグラフを見ている場合の現状です。ピーク露出が100%になるなら、段階は見かけだけです。問題のある変更は、誰かが対応する前に全員に届いてしまいます。
段階的、自動ゲート
SLOの指標を読み、確認なしに巻き戻すゲートの場合です。その価値は、ゲートがSLOと同じシグナルで作動する場合にのみ実現します。わざと問題のある変更でテストしてください。
よくある質問
このAIコード生成 ロールアウト シミュレーターは無料ですか?
数値はどこから来ますか?
人間が書いたコードと違う方法で、AI生成コードをモデル化すべきですか?
実際のトラフィックには当てはまらない、シミュレーターの前提は何ですか?
自動SLOゲートにとって、検知時間はどのくらいが適切ですか?
ソーク時間を長くすれば、常に効果がありますか?
デプロイだけでなく、フィーチャーフラグのロールアウトにも使えますか?
ゲートに巻き戻しまで任せたいですか?
upstreamapiは、SLOゲートと自動ロールバックを備えた段階的ロールアウトを提供しています。そのため、3列目の方式こそ本番で使うべきものです。