[Fix] Improve OpenAI authentication handling and error response
This commit is contained in:
@@ -1813,20 +1813,30 @@ class Controller:
|
|||||||
try:
|
try:
|
||||||
data = str(data)
|
data = str(data)
|
||||||
if data.startswith("sk-") and len(data) >= 164:
|
if data.startswith("sk-") and len(data) >= 164:
|
||||||
key = data
|
result = model.authenticationTranslatorOpenAIAuthKey(auth_key=data)
|
||||||
auth_keys = config.AUTH_KEYS
|
if result is True:
|
||||||
auth_keys[translator_name] = key
|
key = data
|
||||||
config.AUTH_KEYS = auth_keys
|
auth_keys = config.AUTH_KEYS
|
||||||
config.SELECTABLE_TRANSLATION_ENGINE_STATUS[translator_name] = True
|
auth_keys[translator_name] = key
|
||||||
config.SELECTABLE_OPENAI_MODEL_LIST = model.getTranslatorOpenAIModelList()
|
config.AUTH_KEYS = auth_keys
|
||||||
self.run(200, self.run_mapping["selectable_openai_model_list"], config.SELECTABLE_OPENAI_MODEL_LIST)
|
config.SELECTABLE_TRANSLATION_ENGINE_STATUS[translator_name] = True
|
||||||
if config.SELECTED_OPENAI_MODEL not in config.SELECTABLE_OPENAI_MODEL_LIST:
|
config.SELECTABLE_OPENAI_MODEL_LIST = model.getTranslatorOpenAIModelList()
|
||||||
config.SELECTED_OPENAI_MODEL = config.SELECTABLE_OPENAI_MODEL_LIST[0]
|
self.run(200, self.run_mapping["selectable_openai_model_list"], config.SELECTABLE_OPENAI_MODEL_LIST)
|
||||||
model.setTranslatorOpenAIModel(model=config.SELECTED_OPENAI_MODEL)
|
if config.SELECTED_OPENAI_MODEL not in config.SELECTABLE_OPENAI_MODEL_LIST:
|
||||||
self.run(200, self.run_mapping["selected_openai_model"], config.SELECTED_OPENAI_MODEL)
|
config.SELECTED_OPENAI_MODEL = config.SELECTABLE_OPENAI_MODEL_LIST[0]
|
||||||
model.updateTranslatorOpenAIClient()
|
model.setTranslatorOpenAIModel(model=config.SELECTED_OPENAI_MODEL)
|
||||||
self.updateTranslationEngineAndEngineList()
|
self.run(200, self.run_mapping["selected_openai_model"], config.SELECTED_OPENAI_MODEL)
|
||||||
response = {"status":200, "result":config.AUTH_KEYS[translator_name]}
|
model.updateTranslatorOpenAIClient()
|
||||||
|
self.updateTranslationEngineAndEngineList()
|
||||||
|
response = {"status":200, "result":config.AUTH_KEYS[translator_name]}
|
||||||
|
else:
|
||||||
|
response = {
|
||||||
|
"status":400,
|
||||||
|
"result":{
|
||||||
|
"message":"Authentication failure of OpenAI auth key",
|
||||||
|
"data": config.AUTH_KEYS[translator_name]
|
||||||
|
}
|
||||||
|
}
|
||||||
else:
|
else:
|
||||||
response = {
|
response = {
|
||||||
"status":400,
|
"status":400,
|
||||||
|
|||||||
Reference in New Issue
Block a user