Merge branch 'init_download' into for_webui

This commit is contained in:
misyaguziya
2024-11-15 11:01:19 +09:00
2 changed files with 24 additions and 8 deletions

View File

@@ -65,6 +65,10 @@ def splitList(lst:list, split_count:int, to_shuffle:bool=False):
def encodeBase64(data:str) -> dict: def encodeBase64(data:str) -> dict:
return json.loads(base64.b64decode(data).decode('utf-8')) return json.loads(base64.b64decode(data).decode('utf-8'))
def removeLogFiles():
with open('process.log', 'w', encoding="utf-8") as f:
f.write("")
def printLog(log:str, data:Any=None) -> None: def printLog(log:str, data:Any=None) -> None:
response = { response = {
"status": 348, "status": 348,

View File

@@ -6,7 +6,7 @@ import re
from device_manager import device_manager from device_manager import device_manager
from config import config from config import config
from model import model from model import model
from utils import isUniqueStrings, printLog from utils import isUniqueStrings, removeLog, printLog
import torch import torch
class Controller: class Controller:
@@ -1694,6 +1694,7 @@ class Controller:
return {"status":200, "result":True} return {"status":200, "result":True}
def init(self, *args, **kwargs) -> None: def init(self, *args, **kwargs) -> None:
removeLog()
printLog("Start Initialization") printLog("Start Initialization")
printLog("Start check DeepL API Key") printLog("Start check DeepL API Key")
@@ -1707,20 +1708,31 @@ class Controller:
# download CTranslate2 Model Weight # download CTranslate2 Model Weight
printLog("Download CTranslate2 Model Weight") printLog("Download CTranslate2 Model Weight")
weight_type = config.CTRANSLATE2_WEIGHT_TYPE weight_type = config.CTRANSLATE2_WEIGHT_TYPE
th_download_ctranslate2 = None
if model.checkTranslatorCTranslate2ModelWeight(weight_type) is False: if model.checkTranslatorCTranslate2ModelWeight(weight_type) is False:
self.downloadCtranslate2Weight(weight_type, False) th_download_ctranslate2 = Thread(target=self.downloadCtranslate2Weight, args=(weight_type, False))
th_download_ctranslate2.daemon = True
th_download_ctranslate2.start()
# download Whisper Model Weight
printLog("Download Whisper Model Weight")
weight_type = config.WHISPER_WEIGHT_TYPE
th_download_whisper = None
if model.checkTranscriptionWhisperModelWeight(weight_type) is False:
th_download_whisper = Thread(target=self.downloadWhisperWeight, args=(weight_type, False))
th_download_whisper.daemon = True
th_download_whisper.start()
if isinstance(th_download_ctranslate2, Thread):
th_download_ctranslate2.join()
if isinstance(th_download_whisper, Thread):
th_download_whisper.join()
# set Translation Engine # set Translation Engine
printLog("Set Translation Engine") printLog("Set Translation Engine")
self.updateDownloadedCTranslate2ModelWeight() self.updateDownloadedCTranslate2ModelWeight()
self.updateTranslationEngineAndEngineList() self.updateTranslationEngineAndEngineList()
# download Whisper Model Weight
printLog("Download Whisper Model Weight")
weight_type = config.WHISPER_WEIGHT_TYPE
if model.checkTranscriptionWhisperModelWeight(weight_type) is False:
self.downloadWhisperWeight(weight_type, False)
# set Transcription Engine # set Transcription Engine
printLog("Set Transcription Engine") printLog("Set Transcription Engine")
self.updateDownloadedWhisperModelWeight() self.updateDownloadedWhisperModelWeight()