@@ -42,6 +42,17 @@ class OpenAIImageGenerationService extends BaseService {
4242
4343 _construct ( ) {
4444 this . models_ = {
45+ 'gpt-image-1-mini' : {
46+ 'low:1024x1024' : 0.005 ,
47+ 'low:1024x1536' : 0.006 ,
48+ 'low:1536x1024' : 0.006 ,
49+ 'medium:1024x1024' : 0.011 ,
50+ 'medium:1024x1536' : 0.015 ,
51+ 'medium:1536x1024' : 0.015 ,
52+ 'high:1024x1024' : 0.036 ,
53+ 'high:1024x1536' : 0.052 ,
54+ 'high:1536x1024' : 0.052 ,
55+ } ,
4556 'gpt-image-1' : {
4657 'low:1024x1024' : 0.011 ,
4758 'low:1024x1536' : 0.016 ,
@@ -247,6 +258,9 @@ class OpenAIImageGenerationService extends BaseService {
247258 * @private
248259 */
249260 _getValidQualities ( model ) {
261+ if ( model === 'gpt-image-1-mini' ) {
262+ return [ 'low' , 'medium' , 'high' ] ;
263+ }
250264 if ( model === 'gpt-image-1' ) {
251265 return [ 'low' , 'medium' , 'high' ] ;
252266 }
@@ -269,8 +283,8 @@ class OpenAIImageGenerationService extends BaseService {
269283 * @private
270284 */
271285 _buildPriceKey ( model , quality , size ) {
272- if ( model === 'gpt-image-1' ) {
273- // gpt-image-1 uses format: "quality:size" - default to low if not specified
286+ if ( model === 'gpt-image-1' || model === 'gpt-image-1-mini' ) {
287+ // gpt-image-1 and gpt-image-1-mini use format: "quality:size" - default to low if not specified
274288 const qualityLevel = quality || 'low' ;
275289 return `${ qualityLevel } :${ size } ` ;
276290 } else {
@@ -293,7 +307,7 @@ class OpenAIImageGenerationService extends BaseService {
293307 size : baseParams . size ,
294308 } ;
295309
296- if ( model === 'gpt-image-1' ) {
310+ if ( model === 'gpt-image-1' || model === 'gpt-image-1-mini' ) {
297311 // gpt-image-1 requires the model parameter and uses different quality mapping
298312 apiParams . model = model ;
299313 // Default to low quality if not specified, consistent with _buildPriceKey
@@ -318,7 +332,7 @@ class OpenAIImageGenerationService extends BaseService {
318332 _getValidRatios ( model ) {
319333 const commonRatios = [ this . constructor . RATIO_SQUARE ] ;
320334
321- if ( model === 'gpt-image-1' ) {
335+ if ( model === 'gpt-image-1' || model === 'gpt-image-1-mini' ) {
322336 return [
323337 ...commonRatios ,
324338 this . constructor . RATIO_GPT_PORTRAIT ,
0 commit comments