Skip to content

feat(openai): add OpenAIImageModelOptions type with providerOptions validation#12555

Open
saakshigupta2002 wants to merge 1 commit intovercel:mainfrom
saakshigupta2002:feat/openai-image-model-options
Open

feat(openai): add OpenAIImageModelOptions type with providerOptions validation#12555
saakshigupta2002 wants to merge 1 commit intovercel:mainfrom
saakshigupta2002:feat/openai-image-model-options

Conversation

@saakshigupta2002
Copy link
Copy Markdown

Summary

Adds a proper OpenAIImageModelOptions type definition for OpenAI image model provider options, backed by a Zod schema and validated at runtime using parseProviderOptions.

This addresses the lack of type safety for OpenAI image generation provider options. Previously, users had no TypeScript guidance when passing providerOptions.openai for image models.

Changes

  • packages/openai/src/image/openai-image-options.ts: Added Zod schema (openaiImageModelOptions) defining all supported OpenAI image generation options (quality, style, background, output_format, output_compression, input_fidelity, partial_images, user). Exported inferred OpenAIImageModelOptions type.
  • packages/openai/src/image/openai-image-model.ts: Integrated parseProviderOptions to validate provider options against the Zod schema at runtime, replacing unvalidated raw access. Provider options are now consumed via individual property assignments.
  • packages/openai/src/index.ts: Exported OpenAIImageModelOptions type.
  • examples/ai-functions/src/generate-image/openai-gpt-image.ts: Updated example to import and use satisfies OpenAIImageModelOptions for type-safe provider options.

Verification

  • Build passes (pnpm turbo build --filter=@ai-sdk/openai)
  • Lint passes (pnpm turbo lint --filter=@ai-sdk/openai)
  • All existing tests pass (pnpm vitest packages/openai/src/image/ --run — 22/22)

Closes #12437

…alidation

Define a Zod schema for OpenAI image generation provider options and
integrate it with parseProviderOptions for runtime validation. Export
the inferred OpenAIImageModelOptions type for consumer use.

- Add openaiImageModelOptions Zod schema in openai-image-options.ts
- Replace raw providerOptions spread with parseProviderOptions call
- Use individual property assignments for type-safe option passing
- Export OpenAIImageModelOptions from package entry point
- Update openai-gpt-image example to use satisfies with the new type
- Add changeset for patch release

Fixes vercel#12437
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add type OpenAIImageModelOptions

1 participant