fix: painting no provider
This commit is contained in:
parent
b148c5adf5
commit
76b9e1a65e
@ -373,7 +373,9 @@
|
||||
},
|
||||
"error": {
|
||||
"chat.response": "Something went wrong. Please check if you have set your API key in the Settings > Providers",
|
||||
"backup.file_format": "Backup file format error"
|
||||
"backup.file_format": "Backup file format error",
|
||||
"provider_disabled": "Model provider is not enabled",
|
||||
"no_api_key": "API key is not configured"
|
||||
},
|
||||
"words": {
|
||||
"knowledgeGraph": "Knowledge Graph",
|
||||
|
||||
@ -373,7 +373,9 @@
|
||||
},
|
||||
"error": {
|
||||
"chat.response": "出错了,如果没有配置 API 密钥,请前往设置 > 模型提供商中配置密钥",
|
||||
"backup.file_format": "备份文件格式错误"
|
||||
"backup.file_format": "备份文件格式错误",
|
||||
"provider_disabled": "模型提供商未启用",
|
||||
"no_api_key": "API 密钥未配置"
|
||||
},
|
||||
"words": {
|
||||
"knowledgeGraph": "知识图谱",
|
||||
|
||||
@ -373,7 +373,9 @@
|
||||
},
|
||||
"error": {
|
||||
"chat.response": "出現錯誤。如果尚未配置 API 密鑰,請前往設定 > 模型提供者中配置密鑰",
|
||||
"backup.file_format": "備份文件格式錯誤"
|
||||
"backup.file_format": "備份文件格式錯誤",
|
||||
"provider_disabled": "模型提供商未啟用",
|
||||
"no_api_key": "API 密鑰未配置"
|
||||
},
|
||||
"words": {
|
||||
"knowledgeGraph": "知識圖譜",
|
||||
|
||||
@ -11,7 +11,7 @@ import Scrollbar from '@renderer/components/Scrollbar'
|
||||
import { TEXT_TO_IMAGES_MODELS } from '@renderer/config/models'
|
||||
import { useTheme } from '@renderer/context/ThemeProvider'
|
||||
import { usePaintings } from '@renderer/hooks/usePaintings'
|
||||
import { useProviders } from '@renderer/hooks/useProvider'
|
||||
import { useAllProviders } from '@renderer/hooks/useProvider'
|
||||
import AiProvider from '@renderer/providers/AiProvider'
|
||||
import { getProviderByModel } from '@renderer/services/AssistantService'
|
||||
import FileManager from '@renderer/services/FileManager'
|
||||
@ -69,7 +69,7 @@ const PaintingsPage: FC = () => {
|
||||
const { paintings, addPainting, removePainting, updatePainting } = usePaintings()
|
||||
const [painting, setPainting] = useState<Painting>(_painting || paintings[0])
|
||||
const { theme } = useTheme()
|
||||
const { providers } = useProviders()
|
||||
const providers = useAllProviders()
|
||||
const siliconProvider = providers.find((p) => p.id === 'silicon')!
|
||||
const [currentImageIndex, setCurrentImageIndex] = useState(0)
|
||||
|
||||
@ -118,8 +118,19 @@ const PaintingsPage: FC = () => {
|
||||
const model = TEXT_TO_IMAGES_MODELS.find((m) => m.id === painting.model)
|
||||
const provider = getProviderByModel(model)
|
||||
|
||||
if (!provider.enabled) {
|
||||
window.modal.error({
|
||||
content: t('error.provider_disabled'),
|
||||
centered: true
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
if (!provider.apiKey) {
|
||||
window.message.error(t('error.no_api_key'))
|
||||
window.modal.error({
|
||||
content: t('error.no_api_key'),
|
||||
centered: true
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
@ -160,7 +171,10 @@ const PaintingsPage: FC = () => {
|
||||
}
|
||||
} catch (error: unknown) {
|
||||
if (error instanceof Error && error.name !== 'AbortError') {
|
||||
window.message.error(getErrorMessage(error))
|
||||
window.modal.error({
|
||||
content: getErrorMessage(error),
|
||||
centered: true
|
||||
})
|
||||
}
|
||||
} finally {
|
||||
setIsLoading(false)
|
||||
|
||||
@ -370,28 +370,23 @@ export default class OpenAIProvider extends BaseProvider {
|
||||
guidanceScale: number
|
||||
signal?: AbortSignal
|
||||
}): Promise<string[]> {
|
||||
try {
|
||||
const response = (await this.sdk.request({
|
||||
method: 'post',
|
||||
path: '/images/generations',
|
||||
headers: this.getHeaders(),
|
||||
signal,
|
||||
body: {
|
||||
model: 'stabilityai/stable-diffusion-3-5-large',
|
||||
prompt,
|
||||
negative_prompt: negativePrompt,
|
||||
image_size: imageSize,
|
||||
batch_size: batchSize,
|
||||
seed: seed ? parseInt(seed) : undefined,
|
||||
num_inference_steps: numInferenceSteps,
|
||||
guidance_scale: guidanceScale
|
||||
}
|
||||
})) as { data: Array<{ url: string }> }
|
||||
const response = (await this.sdk.request({
|
||||
method: 'post',
|
||||
path: '/images/generations',
|
||||
headers: this.getHeaders(),
|
||||
signal,
|
||||
body: {
|
||||
model: 'stabilityai/stable-diffusion-3-5-large',
|
||||
prompt,
|
||||
negative_prompt: negativePrompt,
|
||||
image_size: imageSize,
|
||||
batch_size: batchSize,
|
||||
seed: seed ? parseInt(seed) : undefined,
|
||||
num_inference_steps: numInferenceSteps,
|
||||
guidance_scale: guidanceScale
|
||||
}
|
||||
})) as { data: Array<{ url: string }> }
|
||||
|
||||
return response.data.map((item) => item.url)
|
||||
} catch (error) {
|
||||
console.error('Image generation error:', error)
|
||||
return []
|
||||
}
|
||||
return response.data.map((item) => item.url)
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user