Browse Source

fix: GPT Image 1.5 aspect ratio and parameters

- Replace invalid 'size' param with 'aspect_ratio' (1:1, 2:3, 3:2)
- Remove unsupported 'low' quality option (only medium, high)
- Remove unsupported 'seed' parameter
- Change default aspect_ratio from 1:1 to 3:2 (landscape)

Fixes issue where horizontal images were being generated as 1:1.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
handoff-20260429-1057
lapoaiscalers 5 months ago
parent
commit
9fb5a0b6c6
  1. 3
      src/app/api/generate/route.ts
  2. 10
      src/app/api/models/[modelId]/route.ts

3
src/app/api/generate/route.ts

@ -1259,10 +1259,11 @@ async function generateWithFalQueue(
function getKieModelDefaults(modelId: string): Record<string, unknown> { function getKieModelDefaults(modelId: string): Record<string, unknown> {
switch (modelId) { switch (modelId) {
// GPT Image models require aspect_ratio and quality // GPT Image models require aspect_ratio and quality
// Only supports: 1:1, 2:3, 3:2 (default 3:2 = landscape)
case "gpt-image/1.5-text-to-image": case "gpt-image/1.5-text-to-image":
case "gpt-image/1.5-image-to-image": case "gpt-image/1.5-image-to-image":
return { return {
aspect_ratio: "1:1", aspect_ratio: "3:2",
quality: "medium", quality: "medium",
}; };

10
src/app/api/models/[modelId]/route.ts

@ -527,17 +527,15 @@ function getKieSchema(modelId: string): ExtractedSchema {
}, },
"gpt-image/1.5-text-to-image": { "gpt-image/1.5-text-to-image": {
parameters: [ parameters: [
{ name: "size", type: "string", description: "Output size", enum: ["1024x1024", "1536x1024", "1024x1536", "auto"], default: "1024x1024" }, { name: "aspect_ratio", type: "string", description: "Output aspect ratio", enum: ["1:1", "2:3", "3:2"], default: "3:2" },
{ name: "quality", type: "string", description: "Output quality", enum: ["low", "medium", "high"], default: "medium" }, { name: "quality", type: "string", description: "Output quality", enum: ["medium", "high"], default: "medium" },
{ name: "seed", type: "integer", description: "Random seed for reproducibility", minimum: 0 },
], ],
inputs: [{ name: "prompt", type: "text", required: true, label: "Prompt" }], inputs: [{ name: "prompt", type: "text", required: true, label: "Prompt" }],
}, },
"gpt-image/1.5-image-to-image": { "gpt-image/1.5-image-to-image": {
parameters: [ parameters: [
{ name: "size", type: "string", description: "Output size", enum: ["1024x1024", "1536x1024", "1024x1536", "auto"], default: "auto" }, { name: "aspect_ratio", type: "string", description: "Output aspect ratio", enum: ["1:1", "2:3", "3:2"], default: "3:2" },
{ name: "quality", type: "string", description: "Output quality", enum: ["low", "medium", "high"], default: "medium" }, { name: "quality", type: "string", description: "Output quality", enum: ["medium", "high"], default: "medium" },
{ name: "seed", type: "integer", description: "Random seed for reproducibility", minimum: 0 },
], ],
inputs: [ inputs: [
{ name: "prompt", type: "text", required: true, label: "Prompt" }, { name: "prompt", type: "text", required: true, label: "Prompt" },

Loading…
Cancel
Save