Merge pull request #341 from MitchBoss/main
Added DALL-E models and gpt-4-1106-preview
This commit is contained in:
		
						commit
						eb4c7467e6
					
				|  | @ -81,6 +81,12 @@ const gpt432k = { | ||||||
|       completion: 0.00012, // $0.12 per 1000 tokens completion |       completion: 0.00012, // $0.12 per 1000 tokens completion | ||||||
|       max: 32768 // 32k max token buffer |       max: 32768 // 32k max token buffer | ||||||
| } | } | ||||||
|  | const gpt4120kpreview = { | ||||||
|  |       ...chatModelBase, | ||||||
|  |       prompt: 0.00003, // $0.03 per 1000 tokens prompt | ||||||
|  |       completion: 0.00006, // $0.06 per 1000 tokens completion | ||||||
|  |       max: 128000 // 128k max token buffer | ||||||
|  | } | ||||||
| 
 | 
 | ||||||
| export const chatModels : Record<string, ModelDetail> = { | export const chatModels : Record<string, ModelDetail> = { | ||||||
|   'gpt-3.5-turbo': { ...gpt35 }, |   'gpt-3.5-turbo': { ...gpt35 }, | ||||||
|  | @ -90,6 +96,7 @@ export const chatModels : Record<string, ModelDetail> = { | ||||||
|   'gpt-4': { ...gpt4 }, |   'gpt-4': { ...gpt4 }, | ||||||
|   'gpt-4-0314': { ...gpt4 }, |   'gpt-4-0314': { ...gpt4 }, | ||||||
|   'gpt-4-0613': { ...gpt4 }, |   'gpt-4-0613': { ...gpt4 }, | ||||||
|  |   'gpt-4-1106-preview': { ...gpt4120kpreview }, | ||||||
|   'gpt-4-32k': { ...gpt432k }, |   'gpt-4-32k': { ...gpt432k }, | ||||||
|   'gpt-4-32k-0314': { ...gpt432k }, |   'gpt-4-32k-0314': { ...gpt432k }, | ||||||
|   'gpt-4-32k-0613': { ...gpt432k } |   'gpt-4-32k-0613': { ...gpt432k } | ||||||
|  | @ -128,6 +135,63 @@ export const imageModels : Record<string, ModelDetail> = { | ||||||
|         opt: { |         opt: { | ||||||
|           size: '256x256' |           size: '256x256' | ||||||
|         } |         } | ||||||
|  |       }, | ||||||
|  |       'dall-e-3-1024x1024': { | ||||||
|  |         ...imageModelBase, | ||||||
|  |         type: 'image', | ||||||
|  |         completion: 0.04, // $0.040 per image | ||||||
|  |         opt: { | ||||||
|  |           model: 'dall-e-3', | ||||||
|  |           size: '1024x1024' | ||||||
|  |         } | ||||||
|  |       }, | ||||||
|  |       'dall-e-3-1024x1792-Portrait': { | ||||||
|  |         ...imageModelBase, | ||||||
|  |         type: 'image', | ||||||
|  |         completion: 0.08, // $0.080 per image | ||||||
|  |         opt: { | ||||||
|  |           model: 'dall-e-3', | ||||||
|  |           size: '1024x1792' | ||||||
|  |         } | ||||||
|  |       }, | ||||||
|  |       'dall-e-3-1792x1024-Landscape': { | ||||||
|  |         ...imageModelBase, | ||||||
|  |         type: 'image', | ||||||
|  |         completion: 0.08, // $0.080 per image | ||||||
|  |         opt: { | ||||||
|  |           model: 'dall-e-3', | ||||||
|  |           size: '1792x1024' | ||||||
|  |         } | ||||||
|  |       }, | ||||||
|  |       'dall-e-3-1024x1024-HD': { | ||||||
|  |         ...imageModelBase, | ||||||
|  |         type: 'image', | ||||||
|  |         completion: 0.08, // $0.080 per image | ||||||
|  |         opt: { | ||||||
|  |           model: 'dall-e-3', | ||||||
|  |           size: '1024x1024', | ||||||
|  |           quality: 'hd' | ||||||
|  |         } | ||||||
|  |       }, | ||||||
|  |       'dall-e-3-1024x1792-Portrait-HD': { | ||||||
|  |         ...imageModelBase, | ||||||
|  |         type: 'image', | ||||||
|  |         completion: 0.12, // $0.080 per image | ||||||
|  |         opt: { | ||||||
|  |           model: 'dall-e-3', | ||||||
|  |           size: '1024x1792', | ||||||
|  |           quality: 'hd' | ||||||
|  |         } | ||||||
|  |       }, | ||||||
|  |       'dall-e-3-1792x1024-Landscape-HD': { | ||||||
|  |         ...imageModelBase, | ||||||
|  |         type: 'image', | ||||||
|  |         completion: 0.12, // $0.080 per image | ||||||
|  |         opt: { | ||||||
|  |           model: 'dall-e-3', | ||||||
|  |           size: '1792x1024', | ||||||
|  |           quality: 'hd' | ||||||
|  |         } | ||||||
|       } |       } | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -102,6 +102,9 @@ type RequestImageGeneration = { | ||||||
|     n?: number; |     n?: number; | ||||||
|     size?: string; |     size?: string; | ||||||
|     response_format?: keyof ResponseImageDetail; |     response_format?: keyof ResponseImageDetail; | ||||||
|  |     model?: string; | ||||||
|  |     quality?: string; | ||||||
|  |     style?: string; | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
| export const imageRequest = async ( | export const imageRequest = async ( | ||||||
|  | @ -118,11 +121,17 @@ export const imageRequest = async ( | ||||||
|   const imageModel = chatSettings.imageGenerationModel |   const imageModel = chatSettings.imageGenerationModel | ||||||
|   const imageModelDetail = getModelDetail(imageModel) |   const imageModelDetail = getModelDetail(imageModel) | ||||||
|   const size = imageModelDetail.opt?.size || '256x256' |   const size = imageModelDetail.opt?.size || '256x256' | ||||||
|  |   const model = imageModelDetail.opt?.model | ||||||
|  |   const style = imageModelDetail.opt?.style | ||||||
|  |   const quality = imageModelDetail.opt?.quality | ||||||
|   const request: RequestImageGeneration = { |   const request: RequestImageGeneration = { | ||||||
|         prompt, |         prompt, | ||||||
|         response_format: 'b64_json', |         response_format: 'b64_json', | ||||||
|         size, |         size, | ||||||
|         n: count |         n: count, | ||||||
|  |         ...(model ? { model } : {}), | ||||||
|  |         ...(style ? { style } : {}), | ||||||
|  |         ...(quality ? { quality } : {}) | ||||||
|   } |   } | ||||||
|   // fetchEventSource doesn't seem to throw on abort, |   // fetchEventSource doesn't seem to throw on abort, | ||||||
|   // so we deal with it ourselves |   // so we deal with it ourselves | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	 Niek van der Maas
						Niek van der Maas