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