From f3603113cb9a29e3e48edf805c28bee27e93701c Mon Sep 17 00:00:00 2001 From: JJae-Won <66660035+JJae-Won@users.noreply.github.com> Date: Tue, 16 Jun 2026 13:59:28 +0900 Subject: [PATCH 1/3] feat(costs): add gpt-image-2 model definition --- .../models/authors/openai/gpt-image-2/models.ts | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 packages/cost/models/authors/openai/gpt-image-2/models.ts diff --git a/packages/cost/models/authors/openai/gpt-image-2/models.ts b/packages/cost/models/authors/openai/gpt-image-2/models.ts new file mode 100644 index 0000000000..ea46be949b --- /dev/null +++ b/packages/cost/models/authors/openai/gpt-image-2/models.ts @@ -0,0 +1,17 @@ +import type { ModelConfig } from "../../../types"; + +export const models = { + "gpt-image-2": { + name: "OpenAI GPT Image 2", + author: "openai", + description: + "GPT Image 2 is OpenAI's advanced image generation model with superior text rendering, instruction following, and image editing capabilities. It supports text and image inputs to produce high-fidelity images.", + contextLength: 8192, + maxOutputTokens: 4096, + created: "2025-03-25T00:00:00.000Z", + modality: { inputs: ["text", "image"], outputs: ["image", "text"] }, + tokenizer: "GPT", + }, +} satisfies Record; + +export type GPTImage2ModelName = keyof typeof models; From 576dc50b376f4d5d733efb0d32bb170e872d8ac9 Mon Sep 17 00:00:00 2001 From: JJae-Won <66660035+JJae-Won@users.noreply.github.com> Date: Tue, 16 Jun 2026 13:59:38 +0900 Subject: [PATCH 2/3] feat(costs): add gpt-image-2 endpoint pricing --- .../authors/openai/gpt-image-2/endpoints.ts | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 packages/cost/models/authors/openai/gpt-image-2/endpoints.ts diff --git a/packages/cost/models/authors/openai/gpt-image-2/endpoints.ts b/packages/cost/models/authors/openai/gpt-image-2/endpoints.ts new file mode 100644 index 0000000000..bd5e4af2f9 --- /dev/null +++ b/packages/cost/models/authors/openai/gpt-image-2/endpoints.ts @@ -0,0 +1,31 @@ +import { ModelProviderName } from "../../../providers"; +import type { ModelProviderConfig } from "../../../types"; +import { GPTImage2ModelName } from "./models"; + +export const endpoints = { + "gpt-image-2:openai": { + providerModelId: "gpt-image-2", + provider: "openai", + author: "openai", + pricing: [ + { + threshold: 0, + input: 0.00001, // $10.00 per 1M tokens + output: 0.00004, // $40.00 per 1M tokens + }, + ], + contextLength: 8192, + maxCompletionTokens: 4096, + rateLimits: { + rpm: 500, + tpm: 1000000, + }, + supportedParameters: ["n"], + ptbEnabled: false, + endpointConfigs: { + "*": {}, + }, + }, +} satisfies Partial< + Record<`${GPTImage2ModelName}:${ModelProviderName}`, ModelProviderConfig> +>; From 5b4ecf6c42732b81b0e1b4041a68009cb82366e0 Mon Sep 17 00:00:00 2001 From: JJae-Won <66660035+JJae-Won@users.noreply.github.com> Date: Tue, 16 Jun 2026 13:59:55 +0900 Subject: [PATCH 3/3] feat(costs): register gpt-image-2 in OpenAI index --- packages/cost/models/authors/openai/index.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/cost/models/authors/openai/index.ts b/packages/cost/models/authors/openai/index.ts index 5be9d36afe..f9cb769f51 100644 --- a/packages/cost/models/authors/openai/index.ts +++ b/packages/cost/models/authors/openai/index.ts @@ -17,6 +17,7 @@ import { models as gpt52Models } from "./gpt-5.2/models"; import { models as gpt54Models } from "./gpt-5.4/models"; import { models as ossModels } from "./oss/models"; import { models as gptImage1Models } from "./gpt-image-1/models"; +import { models as gptImage2Models } from "./gpt-image-2/models"; // Import endpoints import { endpoints as gpt4oEndpoints } from "./gpt-4o/endpoints"; @@ -30,6 +31,7 @@ import { endpoints as gpt52Endpoints } from "./gpt-5.2/endpoints"; import { endpoints as gpt54Endpoints } from "./gpt-5.4/endpoints"; import { endpoints as ossEndpoints } from "./oss/endpoints"; import { endpoints as gptImage1Endpoints } from "./gpt-image-1/endpoints"; +import { endpoints as gptImage2Endpoints } from "./gpt-image-2/endpoints"; // Aggregate models export const openaiModels = { @@ -44,6 +46,7 @@ export const openaiModels = { ...gpt54Models, ...ossModels, ...gptImage1Models, + ...gptImage2Models, } satisfies Record; // Aggregate endpoints @@ -59,4 +62,5 @@ export const openaiEndpointConfig = { ...gpt54Endpoints, ...ossEndpoints, ...gptImage1Endpoints, + ...gptImage2Endpoints, } satisfies Record;