{
  "format": "agent-article-v0",
  "article_id": "EA-084",
  "canonical_url": "/tools/ea-084-batch-ai",
  "page_type": "reference",
  "claim_ids": [],
  "evidence_ids": [
    "EVD-EA-084-URL-54DA17A685AD",
    "EVD-EA-084-URL-DBCB362197DB",
    "EVD-EA-084-URL-1A16A6E71D17",
    "EVD-EA-084-URL-D1910CF4F698",
    "EVD-EA-084-URL-AF1B5C331102",
    "EA-084-R11-RESEARCH",
    "EA-084-R11-WEB-READBACK"
  ],
  "unknown_ids": [
    "EA-084-UNKNOWN-01",
    "EA-084-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-078-EA0084",
    "SRC-EA-084-URL-54DA17A685AD",
    "SRC-EA-084-URL-DBCB362197DB",
    "SRC-EA-084-URL-1A16A6E71D17",
    "SRC-EA-084-URL-D1910CF4F698",
    "SRC-EA-084-URL-AF1B5C331102",
    "WEBBODY-EA0084-R8-72DC9FBA"
  ],
  "article_sources": [
    {
      "id": "EVD-EA-084-URL-54DA17A685AD",
      "evidence_class": "RESEARCH",
      "title": "1. source class: official product documentation; exact title: Batch API; author/org: OpenAI; canonical URL:",
      "href": "https://developers.openai.com/api/docs/guides/batch",
      "supports": [],
      "limit": "元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。",
      "origin_class": "SOURCE_PACKET_REFERENCE",
      "source_or_experiment_ids": [
        "SRC-EA-084-URL-54DA17A685AD"
      ],
      "supporting_locators": [
        "EVIDENCE TABLE",
        "1. source class: official product documentation; exact title: Batch API; author/org: OpenAI; canonical URL: https://developers.openai.com/api/docs/guides/batch"
      ],
      "scope": "EVIDENCE TABLE",
      "provenance_status": "SOURCE_PACKET_REFERENCE_PROJECTED"
    },
    {
      "id": "EVD-EA-084-URL-DBCB362197DB",
      "evidence_class": "RESEARCH",
      "title": "2. source class: official product documentation; exact title: Batch processing; author/org: Anthropic; canonical URL:",
      "href": "https://platform.claude.com/docs/en/build-with-claude/batch-processing",
      "supports": [],
      "limit": "元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。",
      "origin_class": "SOURCE_PACKET_REFERENCE",
      "source_or_experiment_ids": [
        "SRC-EA-084-URL-DBCB362197DB"
      ],
      "supporting_locators": [
        "EVIDENCE TABLE",
        "2. source class: official product documentation; exact title: Batch processing; author/org: Anthropic; canonical URL: https://platform.claude.com/docs/en/build-with-claude/batch-processing"
      ],
      "scope": "EVIDENCE TABLE",
      "provenance_status": "SOURCE_PACKET_REFERENCE_PROJECTED"
    },
    {
      "id": "EVD-EA-084-URL-1A16A6E71D17",
      "evidence_class": "RESEARCH",
      "title": "3. source class: official product documentation; exact title: Batch API; author/org: Google; canonical URL:",
      "href": "https://ai.google.dev/gemini-api/docs/batch-api",
      "supports": [],
      "limit": "元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。",
      "origin_class": "SOURCE_PACKET_REFERENCE",
      "source_or_experiment_ids": [
        "SRC-EA-084-URL-1A16A6E71D17"
      ],
      "supporting_locators": [
        "EVIDENCE TABLE",
        "3. source class: official product documentation; exact title: Batch API; author/org: Google; canonical URL: https://ai.google.dev/gemini-api/docs/batch-api"
      ],
      "scope": "EVIDENCE TABLE",
      "provenance_status": "SOURCE_PACKET_REFERENCE_PROJECTED"
    },
    {
      "id": "EVD-EA-084-URL-D1910CF4F698",
      "evidence_class": "RESEARCH",
      "title": "4. source class: official product documentation; exact title: Batch Predict with Gemini using GCS data / BigQuery data; author/org: Google Cloud; canonical URLs:",
      "href": "https://docs.cloud.google.com/vertex-ai/generative-ai/docs/samples/generativeaionvertexai-batch-predict-gemini-createjob-gcs",
      "supports": [],
      "limit": "元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。",
      "origin_class": "SOURCE_PACKET_REFERENCE",
      "source_or_experiment_ids": [
        "SRC-EA-084-URL-D1910CF4F698"
      ],
      "supporting_locators": [
        "EVIDENCE TABLE",
        "4. source class: official product documentation; exact title: Batch Predict with Gemini using GCS data / BigQuery data; author/org: Google Cloud; canonical URLs: https://docs.cloud.google.com/vertex-ai/generative-ai/docs/samples/generativeaionvertexai-batch-predict-gemini-createjob-gcs"
      ],
      "scope": "EVIDENCE TABLE",
      "provenance_status": "SOURCE_PACKET_REFERENCE_PROJECTED"
    },
    {
      "id": "EVD-EA-084-URL-AF1B5C331102",
      "evidence_class": "RESEARCH",
      "title": "4. source class: official product documentation; exact title: Batch Predict with Gemini using GCS data / BigQuery data; author/org: Google Cloud; canonical URLs: https://docs.cloud",
      "href": "https://docs.cloud.google.com/vertex-ai/generative-ai/docs/samples/googlegenaisdk-batchpredict-with-bq",
      "supports": [],
      "limit": "元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。",
      "origin_class": "SOURCE_PACKET_REFERENCE",
      "source_or_experiment_ids": [
        "SRC-EA-084-URL-AF1B5C331102"
      ],
      "supporting_locators": [
        "EVIDENCE TABLE",
        "4. source class: official product documentation; exact title: Batch Predict with Gemini using GCS data / BigQuery data; author/org: Google Cloud; canonical URLs: https://docs.cloud.google.com/vertex-ai/generative-ai/docs/samples/generativeaionvertexai-batch-predict-gemini-createjob-gcs and https://docs.cloud.google.com/vertex-ai/generative-ai/docs/samples/googlegenaisdk-batchpredict-with-bq"
      ],
      "scope": "EVIDENCE TABLE",
      "provenance_status": "SOURCE_PACKET_REFERENCE_PROJECTED"
    },
    {
      "id": "EA-084-R11-RESEARCH",
      "evidence_class": "RESEARCH",
      "title": "EA-084 監査済みresearch / canonical revision binding",
      "supports": [
        "Batch is an execution class, not merely “many synchronous calls.” The Core should route work by deadline/SLO, dependency graph, mutability, ordering, data locality, output size, and cost sensitivity. Every input needs a stable request_id/custom_id and immutable request manifest/hash; outputs must be reconciled by ID, not assumed position. Batch creation, partial failure, cancellation, expiration, completion, output retrieval, and retry are separate states. Provider price discounts are current product claims, not permanent architecture guarantees."
      ],
      "limit": "canonical監査・revision bindingの存在を示す。外部ソースcurrentnessが本文またはcontrol-planeで確定していない場合は、currentnessをUNKNOWNのまま保持する。",
      "origin_class": "AUDITED_CANONICAL_RESEARCH_PACKET",
      "source_or_experiment_ids": [
        "COMM-078-EA0084"
      ],
      "supporting_locators": [
        "COMM-078-EA0084",
        "EA-084-R5-LEGACY-MIGRATION-20261008-R1",
        "content/staging/EA-084.md"
      ],
      "scope": "監査済みEA本文・canonical revision・既存Source Graph relationの範囲。欠損currentnessは推測で閉じない。",
      "provenance_status": "AUDIT_PASS_CANONICAL_BINDING"
    },
    {
      "id": "EA-084-R11-WEB-READBACK",
      "evidence_class": "IMPL",
      "title": "EA-084 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-EA0084-R8-72DC9FBA"
      ],
      "supporting_locators": [
        "WEBBODY-EA0084-R8-72DC9FBA",
        "content/staging/EA-084.md",
        "EA-084-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": "A large share of enterprise AI work—classification, enrichment, evaluation, summarization, embedding, media processing—does not require interactive latency. Batch paths can materially lower cost and raise throughput, but trade away immediate completion, ordering assumptions, mutability, and sometimes endpoint/tool coverage."
    },
    {
      "heading": "SCOPE_ROUTING",
      "text": "Enterprise AI Core / provider mapping / architecture / cost / operability / governance"
    },
    {
      "heading": "CLAIM_OR_RESEARCH_QUESTION",
      "text": "When should a workload be routed from synchronous inference to provider batch execution, and what manifest, SLA, retry, reconciliation, and provenance controls preserve correctness?"
    },
    {
      "heading": "EVIDENCE TABLE",
      "text": "1. source class: official product documentation; exact title: Batch API; author/org: OpenAI; canonical URL: https://developers.openai.com/api/docs/guides/batch ; access date: 2026-09-16; API revision: current docs; locator: Batch API overview; evidence label: VERIFIED_SPEC / PRODUCT_VOLATILE; relation: support/availability. Current docs state 50% cost discount vs synchronous APIs, separate/higher rate-limit headroom, and completion within 24 hours; requests use unique custom_id for result correlation and an input file is single-model.\n2. source class: official product documentation; exact title: Batch processing; author/org: Anthropic; canonical URL: https://platform.claude.com/docs/en/build-with-claude/batch-processing ; access date: 2026-09-16; API revision: current docs; locator: pricing / batch lifecycle; evidence label: VERIFIED_SPEC / PRODUCT_VOLATILE; relation: support/limit. Current docs state 50% discount; submitted batch cannot be modified, requiring cancel/new submission for changes; batch rate limits are separate from Messages API limits.\n3. source class: official product documentation; exact title: Batch API; author/org: Google; canonical URL: https://ai.google.dev/gemini-api/docs/batch-api ; access date: 2026-09-16; API revision: current Gemini API; locator: overview / supported models / pricing / SLO; evidence label: VERIFIED_SPEC / PRODUCT_VOLATILE; relation: support/availability. Current docs state asynchronous processing at 50% standard cost, target 24-hour turnaround, generateContent-only note, model-specific support, and context caching support within batch requests.\n4. source class: official product documentation; exact title: Batch Predict with Gemini using GCS data / BigQuery data; author/org: Google Cloud; canonical URLs: https://docs.cloud.google.com/vertex-ai/generative-ai/docs/samples/generativeaionvertexai-batch-predict-gemini-createjob-gcs and https://docs.cloud.google.com/vertex-ai/generative-ai/docs/samples/googlegenaisdk-batchpredict-with-bq ; access date: 2026-09-16; evidence label: VERIFIED_SPEC / PRODUCT_VOLATILE; relation: implementation/context. Demonstrates Vertex AI batch prediction paths using GCS and BigQuery inputs/outputs."
    },
    {
      "heading": "FINDINGS",
      "text": "Batch is an execution class, not merely “many synchronous calls.” The Core should route work by deadline/SLO, dependency graph, mutability, ordering, data locality, output size, and cost sensitivity. Every input needs a stable request_id/custom_id and immutable request manifest/hash; outputs must be reconciled by ID, not assumed position. Batch creation, partial failure, cancellation, expiration, completion, output retrieval, and retry are separate states. Provider price discounts are current product claims, not permanent architecture guarantees."
    },
    {
      "heading": "LIMITS / COUNTEREVIDENCE / FAILURE ENVELOPE",
      "text": "No interactive latency guarantee; provider turnaround target can be too slow for operational triggers; submitted jobs may be immutable; partial request failures; duplicate resubmission after uncertain status; result ordering mismatch; model/endpoint/tool/modality coverage gaps; input/output file retention and residency concerns; batch completion notification loss; stale business data by execution time; large failed batches causing expensive replay."
    },
    {
      "heading": "AVAILABILITY_GATES",
      "text": "Provider/model/endpoint/modality; region; input source/file limits; request count/token limits; completion window; batch-specific quota/rate limits; data residency; pricing; cancellation/expiration behavior; output retention."
    },
    {
      "heading": "IMPLEMENTATION_STATE",
      "text": "OpenAI, Anthropic, Gemini API, and Vertex AI expose current batch/asynchronous bulk inference mechanisms. Exact model coverage and quotas are provider-volatile."
    },
    {
      "heading": "TEST_PROFILE",
      "text": "identical workload through synchronous and batch paths with fixed model/revision. Measure quality equivalence, completion-time distribution, throughput, cost/request and cost/token, partial-failure rate, reconciliation correctness, retry amplification, duplicate-output rate, and operational recovery time. Include cancellation and malformed-request fixtures."
    },
    {
      "heading": "SECURITY / PRIVACY / AUDIT / COST / OPERABILITY",
      "text": "Persist batch manifest hash, submitter/service identity, provider/project/region, model revision, request IDs, input/output object references and hashes, submit/start/complete/expire timestamps, per-item status, retry lineage, cost, and deletion/retention state. Batch discount must not justify moving sensitive data to a weaker residency/retention path."
    },
    {
      "heading": "SAFE_WORDING_FOR_FUTURE_BOOK",
      "text": "“For non-urgent independent workloads, provider batch APIs can trade interactive latency for lower unit cost and higher bulk throughput. Treat batch as an asynchronous job system with explicit manifests, item IDs, reconciliation, partial-failure handling, and retention controls.”"
    },
    {
      "heading": "UPDATE_WORK_HANDOFF",
      "text": "Add BATCH_EXECUTION_CONTRACT: deadline/SLO, immutable input manifest/hash, provider/model/revision, request_id, job_id, lifecycle state, output mapping/hash, retry lineage, completion notification, retention/deletion, and cost. Re-pin provider discounts and turnaround commitments at publication."
    },
    {
      "heading": "OPEN_UNKNOWN",
      "text": "exact per-model batch coverage, quotas, file/request limits, and enterprise residency/retention matrix as of publication. STOP_CONDITION: architecture and failure contract established; volatile provider matrix deferred to update Work.\n\n---"
    },
    {
      "heading": "AUDITED_CURRENTNESS_BOUNDARY",
      "text": "OpenAI Batch API numeric/product claims stay as-of; batch acceptance, completion window and item outcomes remain distinct."
    }
  ],
  "human_url": "/tools/ea-084-batch-ai",
  "markdown_url": "/agent/article.md?path=%2Ftools%2Fea-084-batch-ai",
  "json_url": "/agent/article.json?path=%2Ftools%2Fea-084-batch-ai"
}