{
  "format": "agent-article-v0",
  "article_id": "EA-093",
  "canonical_url": "/tools/ea-093-quota-rate-limit-engineering",
  "page_type": "reference",
  "claim_ids": [],
  "evidence_ids": [
    "EVD-EA-093-URL-7D984B724516",
    "EVD-EA-093-URL-CDF6938D58B7",
    "EVD-EA-093-URL-93828C7F16D6",
    "EA-093-R11-RESEARCH",
    "EA-093-R11-WEB-READBACK"
  ],
  "unknown_ids": [
    "EA-093-UNKNOWN-01",
    "EA-093-UNKNOWN-CURRENTNESS"
  ],
  "operational_object_ids": [],
  "provider": [],
  "models": [],
  "plans": [],
  "surfaces": [],
  "regions": [],
  "current_status": "UNKNOWN",
  "observation_status": "SPEC_ONLY",
  "freshness": "UNKNOWN",
  "last_verified": null,
  "supersedes": [],
  "superseded_by": [],
  "provenance": [
    "COMM-082-EA0093",
    "SRC-EA-093-URL-7D984B724516",
    "SRC-EA-093-URL-CDF6938D58B7",
    "SRC-EA-093-URL-93828C7F16D6",
    "WEBBODY-EA0093-R8-FC907DCD"
  ],
  "article_sources": [
    {
      "id": "EVD-EA-093-URL-7D984B724516",
      "evidence_class": "RESEARCH",
      "title": "1. [official product docs / PRODUCT_VOLATILE] Google Cloud, “Throughput quota — Generative AI on Vertex AI”, last updated 2026-01-02, accessed 2026-09-16.",
      "href": "https://docs.cloud.google.com/vertex-ai/generative-ai/docs/resources/throughput-quota",
      "supports": [],
      "limit": "元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。",
      "origin_class": "SOURCE_PACKET_REFERENCE",
      "source_or_experiment_ids": [
        "SRC-EA-093-URL-7D984B724516"
      ],
      "supporting_locators": [
        "EVIDENCE TABLE",
        "1. [official product docs / PRODUCT_VOLATILE] Google Cloud, “Throughput quota — Generative AI on Vertex AI”, last updated 2026-01-02, accessed 2026-09-16. https://docs.cloud.google.com/vertex-ai/generative-ai/docs/resources/throughput-quota"
      ],
      "scope": "EVIDENCE TABLE",
      "provenance_status": "SOURCE_PACKET_REFERENCE_PROJECTED"
    },
    {
      "id": "EVD-EA-093-URL-CDF6938D58B7",
      "evidence_class": "RESEARCH",
      "title": "2. [official product docs / PRODUCT_VOLATILE] Microsoft Foundry, “Manage Azure OpenAI quota”, accessed 2026-09-16.",
      "href": "https://learn.microsoft.com/ja-jp/azure/foundry/openai/how-to/quota",
      "supports": [],
      "limit": "元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。",
      "origin_class": "SOURCE_PACKET_REFERENCE",
      "source_or_experiment_ids": [
        "SRC-EA-093-URL-CDF6938D58B7"
      ],
      "supporting_locators": [
        "EVIDENCE TABLE",
        "2. [official product docs / PRODUCT_VOLATILE] Microsoft Foundry, “Manage Azure OpenAI quota”, accessed 2026-09-16. https://learn.microsoft.com/ja-jp/azure/foundry/openai/how-to/quota"
      ],
      "scope": "EVIDENCE TABLE",
      "provenance_status": "SOURCE_PACKET_REFERENCE_PROJECTED"
    },
    {
      "id": "EVD-EA-093-URL-93828C7F16D6",
      "evidence_class": "RESEARCH",
      "title": "3. [official product docs / PRODUCT_VOLATILE] Microsoft Foundry, “Run provisioned throughput deployments in production”, accessed 2026-09-16.",
      "href": "https://learn.microsoft.com/ja-jp/azure/foundry/openai/how-to/provisioned-get-started",
      "supports": [],
      "limit": "元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。",
      "origin_class": "SOURCE_PACKET_REFERENCE",
      "source_or_experiment_ids": [
        "SRC-EA-093-URL-93828C7F16D6"
      ],
      "supporting_locators": [
        "EVIDENCE TABLE",
        "3. [official product docs / PRODUCT_VOLATILE] Microsoft Foundry, “Run provisioned throughput deployments in production”, accessed 2026-09-16. https://learn.microsoft.com/ja-jp/azure/foundry/openai/how-to/provisioned-get-started"
      ],
      "scope": "EVIDENCE TABLE",
      "provenance_status": "SOURCE_PACKET_REFERENCE_PROJECTED"
    },
    {
      "id": "EA-093-R11-RESEARCH",
      "evidence_class": "RESEARCH",
      "title": "EA-093 監査済みresearch / canonical revision binding",
      "supports": [
        "- 429は単一原因ではない。configured quota、effective rate limit、shared capacity pressure、request-size estimate、concurrencyを分離観測する。\n- retryは `retryable? → server hint → bounded exponential backoff + jitter → retry budget → queue/fallback/dead-letter` とする。\n- admission controlをretryより前に置き、priority class、token estimate、deadline、cost ceilingで受理制御する。\n- queue depthとoldest ageをquota pressureの先行指標として扱う。"
      ],
      "limit": "canonical監査・revision bindingの存在を示す。外部ソースcurrentnessが本文またはcontrol-planeで確定していない場合は、currentnessをUNKNOWNのまま保持する。",
      "origin_class": "AUDITED_CANONICAL_RESEARCH_PACKET",
      "source_or_experiment_ids": [
        "COMM-082-EA0093"
      ],
      "supporting_locators": [
        "COMM-082-EA0093",
        "EA-093-R5-LEGACY-MIGRATION-20261008-R1",
        "content/staging/EA-093.md"
      ],
      "scope": "監査済みEA本文・canonical revision・既存Source Graph relationの範囲。欠損currentnessは推測で閉じない。",
      "provenance_status": "AUDIT_PASS_CANONICAL_BINDING"
    },
    {
      "id": "EA-093-R11-WEB-READBACK",
      "evidence_class": "IMPL",
      "title": "EA-093 Web body identity / canonical readback",
      "supports": [
        "canonical staging bodyのSHA-256一致とR9 canonical ledger readbackをProduction projectionの入力として検証する。"
      ],
      "limit": "body identity/readbackは本文claim自体の真偽や外部ソースの最新性を追加保証しない。",
      "checked_at": null,
      "origin_class": "IMPLEMENTATION_READBACK",
      "source_or_experiment_ids": [
        "WEBBODY-EA0093-R8-FC907DCD"
      ],
      "supporting_locators": [
        "WEBBODY-EA0093-R8-FC907DCD",
        "content/staging/EA-093.md",
        "EA-093-R5-LEGACY-MIGRATION-20261008-R1"
      ],
      "scope": "R9/R10 canonical readback後のProduction生成時body identity。",
      "provenance_status": "CANONICAL_READBACK_BODY_HASH_MATCH"
    }
  ],
  "research_sections": [
    {
      "heading": "WHY_THIS_MATTERS_TO_UPDATE",
      "text": "429/resource exhaustedは障害と同じ見た目でも、共有capacity、configured quota、request token budget、burst/concurrency等で原因と対処が異なる。無制限retryはretry storm・cost amplification・latency破綻を起こす。"
    },
    {
      "heading": "SCOPE_ROUTING",
      "text": "Enterprise AI Core / reliability / performance / cost / provider mapping"
    },
    {
      "heading": "CLAIM_OR_RESEARCH_QUESTION",
      "text": "quota/rate-limitを静的上限表ではなくruntime control loopとして扱うべきか。"
    },
    {
      "heading": "EVIDENCE TABLE",
      "text": "1. [official product docs / PRODUCT_VOLATILE] Google Cloud, “Throughput quota — Generative AI on Vertex AI”, last updated 2026-01-02, accessed 2026-09-16. https://docs.cloud.google.com/vertex-ai/generative-ai/docs/resources/throughput-quota — Dynamic Shared Quotaは固定usage limitを持たず、429 resource exhaustedは共有pool高需要を示しretryを推奨。Provisioned Throughputはreserved capacity。 relation=support/context.\n2. [official product docs / PRODUCT_VOLATILE] Microsoft Foundry, “Manage Azure OpenAI quota”, accessed 2026-09-16. https://learn.microsoft.com/ja-jp/azure/foundry/openai/how-to/quota — x-ratelimit-* と retry-after-ms、429時のexponential backoff+jitter、proactive throttlingを明示。 relation=support.\n3. [official product docs / PRODUCT_VOLATILE] Microsoft Foundry, “Run provisioned throughput deployments in production”, accessed 2026-09-16. https://learn.microsoft.com/ja-jp/azure/foundry/openai/how-to/provisioned-get-started — utilization 100%時の429をtraffic-management signalとして扱い、retry-afterまたは別deployment/modelへのredirectを提示。 relation=support/limit."
    },
    {
      "heading": "FINDINGS",
      "text": "- 429は単一原因ではない。configured quota、effective rate limit、shared capacity pressure、request-size estimate、concurrencyを分離観測する。\n- retryは `retryable? → server hint → bounded exponential backoff + jitter → retry budget → queue/fallback/dead-letter` とする。\n- admission controlをretryより前に置き、priority class、token estimate、deadline、cost ceilingで受理制御する。\n- queue depthとoldest ageをquota pressureの先行指標として扱う。"
    },
    {
      "heading": "LIMITS / COUNTEREVIDENCE / FAILURE ENVELOPE",
      "text": "quota increaseはshared capacityを保証しない。retry-afterを無視した即時retryはthundering herdを悪化。max_tokens等のrequest設定がrate accountingへ影響し得るため、請求tokenとrate-limit tokenを混同しない。"
    },
    {
      "heading": "AVAILABILITY_GATES",
      "text": "provider/model/deployment/region/account tier、PAYG vs provisioned、RPM/TPM/concurrency/batch limits、quota approval。すべてPRODUCT_VOLATILE。"
    },
    {
      "heading": "IMPLEMENTATION_STATE",
      "text": "将来Core候補 `AI_ADMISSION_AND_RETRY_CONTRACT`: provider/model/deployment, quota class, estimated input/output tokens, priority, deadline, concurrency, queue depth/age, rate-limit headers, attempt count, backoff/jitter, retry budget, fallback, final disposition。"
    },
    {
      "heading": "BENCHMARK_OR_EVAL",
      "text": "burst、sustained load、large max-output、mixed priority、429/5xx/timeout注入でsuccess ratio、queue age、retry amplification、deadline miss、cost amplification、fairnessを測る。"
    },
    {
      "heading": "SECURITY / PRIVACY / AUDIT / COST / OPERABILITY",
      "text": "priorityはauthorizationされた業務classに固定。retryでside effectを重複させない。全attemptのcostとtrace lineageを集約。"
    },
    {
      "heading": "SAFE_WORDING_FOR_FUTURE_BOOK",
      "text": "「Rate limitはエラー処理ではなくcapacity controlである。admission、queue、server hint、bounded retry、fallbackを一つの制御系として設計する。」"
    },
    {
      "heading": "UPDATE_WORK_HANDOFF",
      "text": "EA-094のlatency budgetにqueue/retry時間を必ず含める。公開直前にprovider別header/limit仕様を再pin。"
    },
    {
      "heading": "OPEN_UNKNOWN / STOP_CONDITION",
      "text": "OpenAI/Anthropic/AWSを含むexact current header・tier・quota matrixは再pin対象。live saturation test未実施。主要control contract確立につき停止条件充足。\n\n\n---\n\n---"
    },
    {
      "heading": "AUDITED_CURRENTNESS_BOUNDARY",
      "text": "Vertex AI Dynamic Shared Quota has no fixed per-project usage limit; 429 may represent temporary shared-pool pressure and must not automatically be interpreted as fixed-quota exhaustion."
    }
  ],
  "human_url": "/tools/ea-093-quota-rate-limit-engineering",
  "markdown_url": "/agent/article.md?path=%2Ftools%2Fea-093-quota-rate-limit-engineering",
  "json_url": "/agent/article.json?path=%2Ftools%2Fea-093-quota-rate-limit-engineering"
}