👍️[Update] Model : use_translation_featureを削除/それに伴い一部機能を修正
This commit is contained in:
@@ -676,17 +676,6 @@ class Config:
|
||||
self._USE_EXCLUDE_WORDS = value
|
||||
self.saveConfig(inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('USE_TRANSLATION_FEATURE')
|
||||
def USE_TRANSLATION_FEATURE(self):
|
||||
return self._USE_TRANSLATION_FEATURE
|
||||
|
||||
@USE_TRANSLATION_FEATURE.setter
|
||||
def USE_TRANSLATION_FEATURE(self, value):
|
||||
if isinstance(value, bool):
|
||||
self._USE_TRANSLATION_FEATURE = value
|
||||
self.saveConfig(inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('SELECTED_TRANSLATION_COMPUTE_DEVICE')
|
||||
def SELECTED_TRANSLATION_COMPUTE_DEVICE(self):
|
||||
@@ -1033,7 +1022,7 @@ class Config:
|
||||
},
|
||||
},
|
||||
}
|
||||
self._SELECTED_TRANSCRIPTION_ENGINE = "Google"
|
||||
self._SELECTED_TRANSCRIPTION_ENGINE = "Whisper"
|
||||
self._MULTI_LANGUAGE_TRANSLATION = False
|
||||
self._CONVERT_MESSAGE_TO_ROMAJI = False
|
||||
self._CONVERT_MESSAGE_TO_HIRAGANA = False
|
||||
@@ -1080,7 +1069,6 @@ class Config:
|
||||
"DeepL_API": None,
|
||||
}
|
||||
self._USE_EXCLUDE_WORDS = True
|
||||
self._USE_TRANSLATION_FEATURE = True
|
||||
self._SELECTED_TRANSLATION_COMPUTE_DEVICE = {"device": "cpu", "device_index": 0, "device_name":"cpu"}
|
||||
self._SELECTED_TRANSCRIPTION_COMPUTE_DEVICE = {"device": "cpu", "device_index": 0, "device_name":"cpu"}
|
||||
self._CTRANSLATE2_WEIGHT_TYPE = "Small"
|
||||
|
||||
@@ -39,7 +39,7 @@ def calculate_file_hash(file_path, block_size=65536):
|
||||
|
||||
return hash_object.hexdigest()
|
||||
|
||||
def checkCTranslate2Weight(path, weight_type="Small"):
|
||||
def checkCTranslate2Weight(root, weight_type="Small"):
|
||||
weight_directory_name = ctranslate2_weights[weight_type]["directory_name"]
|
||||
hash_data = ctranslate2_weights[weight_type]["hash"]
|
||||
files = [
|
||||
@@ -47,6 +47,7 @@ def checkCTranslate2Weight(path, weight_type="Small"):
|
||||
"sentencepiece.model",
|
||||
"shared_vocabulary.txt"
|
||||
]
|
||||
path = os_path.join(root, "weights", "ctranslate2")
|
||||
|
||||
# check already downloaded
|
||||
already_downloaded = False
|
||||
@@ -66,7 +67,7 @@ def downloadCTranslate2Weight(root, weight_type="Small", callback=None, end_call
|
||||
path = os_path.join(root, "weights", "ctranslate2")
|
||||
os_makedirs(path, exist_ok=True)
|
||||
|
||||
if checkCTranslate2Weight(path, weight_type) is False:
|
||||
if checkCTranslate2Weight(root, weight_type) is False:
|
||||
try:
|
||||
with tempfile.TemporaryDirectory() as tmp_path:
|
||||
res = requests_get(url, stream=True)
|
||||
|
||||
@@ -547,21 +547,8 @@ class Controller:
|
||||
|
||||
@staticmethod
|
||||
def setSelectedTranscriptionEngine(data, *args, **kwargs) -> dict:
|
||||
engine = data["engine"]
|
||||
weight_type = data["weight_type"]
|
||||
if engine == "Whisper" and config.SELECTABLE_WHISPER_WEIGHT_TYPE_DICT[weight_type] is False:
|
||||
config.SELECTED_TRANSCRIPTION_ENGINE = "Google"
|
||||
config.WHISPER_WEIGHT_TYPE = None
|
||||
else:
|
||||
config.SELECTED_TRANSCRIPTION_ENGINE = engine
|
||||
config.WHISPER_WEIGHT_TYPE = weight_type
|
||||
return {
|
||||
"status":200,
|
||||
"result":{
|
||||
"engine": config.SELECTED_TRANSCRIPTION_ENGINE,
|
||||
"weight_type": config.WHISPER_WEIGHT_TYPE,
|
||||
}
|
||||
}
|
||||
config.SELECTED_TRANSCRIPTION_ENGINE = str(data)
|
||||
return {"status":200, "result":config.SELECTED_TRANSCRIPTION_ENGINE}
|
||||
|
||||
@staticmethod
|
||||
def getMultiLanguageTranslation(*args, **kwargs) -> dict:
|
||||
@@ -1124,26 +1111,6 @@ class Controller:
|
||||
self.updateTranslationEngineAndEngineList()
|
||||
return {"status":200, "result":config.AUTH_KEYS["DeepL_API"]}
|
||||
|
||||
@staticmethod
|
||||
def getUseTranslationFeature(*args, **kwargs) -> dict:
|
||||
return {"status":200, "result":config.USE_TRANSLATION_FEATURE}
|
||||
|
||||
@staticmethod
|
||||
def setEnableUseTranslationFeature(*args, **kwargs) -> dict:
|
||||
config.USE_TRANSLATION_FEATURE = True
|
||||
if model.checkTranslatorCTranslate2ModelWeight(config.CTRANSLATE2_WEIGHT_TYPE):
|
||||
def callback():
|
||||
model.changeTranslatorCTranslate2Model()
|
||||
th_callback = Thread(target=callback)
|
||||
th_callback.daemon = True
|
||||
th_callback.start()
|
||||
return {"status":200, "result":config.USE_TRANSLATION_FEATURE}
|
||||
|
||||
@staticmethod
|
||||
def setDisableUseTranslationFeature(*args, **kwargs) -> dict:
|
||||
config.USE_TRANSLATION_FEATURE = False
|
||||
return {"status":200, "result": config.USE_TRANSLATION_FEATURE}
|
||||
|
||||
@staticmethod
|
||||
def getCtranslate2WeightType(*args, **kwargs) -> dict:
|
||||
return {"status":200, "result":config.CTRANSLATE2_WEIGHT_TYPE}
|
||||
@@ -1702,26 +1669,26 @@ class Controller:
|
||||
auth_keys["DeepL_API"] = None
|
||||
config.AUTH_KEYS = auth_keys
|
||||
|
||||
# download CTranslate2 Model Weight
|
||||
printLog("Download CTranslate2 Model Weight")
|
||||
if model.checkTranslatorCTranslate2ModelWeight(config.CTRANSLATE2_WEIGHT_TYPE) is False:
|
||||
self.downloadCtranslate2Weight(config.CTRANSLATE2_WEIGHT_TYPE)
|
||||
|
||||
# set Translation Engine
|
||||
printLog("Set Translation Engine")
|
||||
self.updateDownloadedCTranslate2ModelWeight()
|
||||
self.updateTranslationEngineAndEngineList()
|
||||
|
||||
# download CTranslate2 Model Weight
|
||||
printLog("Download CTranslate2 Model Weight")
|
||||
if config.USE_TRANSLATION_FEATURE is True and model.checkTranslatorCTranslate2ModelWeight(config.CTRANSLATE2_WEIGHT_TYPE) is False:
|
||||
self.downloadCtranslate2Weight(config.CTRANSLATE2_WEIGHT_TYPE)
|
||||
# download Whisper Model Weight
|
||||
printLog("Download Whisper Model Weight")
|
||||
if model.checkTranscriptionWhisperModelWeight(config.WHISPER_WEIGHT_TYPE) is False:
|
||||
self.downloadWhisperWeight(config.WHISPER_WEIGHT_TYPE)
|
||||
|
||||
# set Transcription Engine
|
||||
printLog("Set Transcription Engine")
|
||||
self.updateDownloadedWhisperModelWeight()
|
||||
self.updateTranscriptionEngine()
|
||||
|
||||
# download Whisper Model Weight
|
||||
printLog("Download Whisper Model Weight")
|
||||
if model.checkTranscriptionWhisperModelWeight(config.WHISPER_WEIGHT_TYPE) is False:
|
||||
self.downloadWhisperWeight(config.WHISPER_WEIGHT_TYPE)
|
||||
|
||||
# set word filter
|
||||
printLog("Set Word Filter")
|
||||
model.addKeywords()
|
||||
|
||||
@@ -21,7 +21,7 @@ run_mapping = {
|
||||
"word_filter":"/run/word_filter",
|
||||
|
||||
"download_ctranslate2_weight":"/run/download_ctranslate2_weight",
|
||||
"downloaded_ctranslate2_weight":"/run/download_ctranslate2_weight",
|
||||
"downloaded_ctranslate2_weight":"/run/downloaded_ctranslate2_weight",
|
||||
"download_whisper_weight":"/run/download_whisper_weight",
|
||||
"downloaded_whisper_weight":"/run/downloaded_whisper_weight",
|
||||
|
||||
@@ -131,10 +131,6 @@ mapping = {
|
||||
"/set/data/main_window_geometry": {"status": True, "variable":controller.setMainWindowGeometry},
|
||||
|
||||
# Translation
|
||||
"/get/data/use_translation_feature": {"status": True, "variable":controller.getUseTranslationFeature},
|
||||
"/set/enable/use_translation_feature": {"status": True, "variable":controller.setEnableUseTranslationFeature},
|
||||
"/set/disable/use_translation_feature": {"status": True, "variable":controller.setDisableUseTranslationFeature},
|
||||
|
||||
"/get/data/translation_compute_device_list": {"status": True, "variable":controller.getComputeDeviceList},
|
||||
"/get/data/selected_translation_compute_device": {"status": True, "variable":controller.getSelectedTranslationComputeDevice},
|
||||
"/set/data/selected_translation_compute_device": {"status": True, "variable":controller.setSelectedTranslationComputeDevice},
|
||||
|
||||
Reference in New Issue
Block a user