Some more work on multi models
This commit is contained in:
@@ -15,11 +15,10 @@
|
||||
|
||||
import typing
|
||||
from pathlib import Path
|
||||
from typing import Any
|
||||
|
||||
from gajim.gtk.const import Setting, SettingKind, SettingType
|
||||
from gajim.gtk.preferences import PreferenceBox
|
||||
from gajim.plugins.plugins_i18n import _
|
||||
from .model import Model
|
||||
|
||||
from gajim.gtk.const import Setting
|
||||
|
||||
try:
|
||||
import whisper
|
||||
@@ -29,7 +28,7 @@ except ModuleNotFoundError:
|
||||
import whisper
|
||||
|
||||
|
||||
class WhisperModel:
|
||||
class WhisperModel(Model):
|
||||
def __init__(self):
|
||||
self._model_sizes = ['tiny', 'small', 'base', 'medium', 'large']
|
||||
self._multilanguage = True
|
||||
@@ -43,50 +42,6 @@ class WhisperModel:
|
||||
result = model.transcribe(audio_file)
|
||||
return result["text"]
|
||||
|
||||
def _build_config(self) -> list[Setting]:
|
||||
whisper_model_sizes = ('tiny', 'base', 'small', 'medium', 'large')
|
||||
settings = [
|
||||
Setting(SettingKind.COMBO,
|
||||
_('Language Model'),
|
||||
SettingType.VALUE,
|
||||
callback=self._on_setting,
|
||||
props={'combo_items': whisper_model_sizes}),
|
||||
|
||||
Setting(SettingKind.SWITCH,
|
||||
_('Use Multilanguage Model'),
|
||||
SettingType.VALUE,
|
||||
self._multilanguage,
|
||||
callback=self._on_setting,
|
||||
data='use_multilanguage_model'),
|
||||
]
|
||||
|
||||
return settings
|
||||
|
||||
def _on_setting(self, setting: Setting):
|
||||
def on_setting(self, setting: Setting):
|
||||
pass
|
||||
|
||||
################################################################################
|
||||
# Whisper Settings UI
|
||||
################################################################################
|
||||
|
||||
class OpenAIWhisperGeneral(PreferenceBox):
|
||||
def __init__(self, *args: Any) -> None:
|
||||
|
||||
model_sizes = {
|
||||
'tiny': _('Tiny'),
|
||||
'small': _('Small'),
|
||||
'basic': _('Basic'),
|
||||
'medium': _('Medium'),
|
||||
'large': _('Large'),
|
||||
}
|
||||
|
||||
settings = [
|
||||
Setting(SettingKind.POPOVER,
|
||||
_('Language Model'),
|
||||
SettingType.VALUE,
|
||||
callback=None,
|
||||
props={'entries': model_sizes},
|
||||
desc=_('Model Size')),
|
||||
]
|
||||
|
||||
PreferenceBox.__init__(self, settings)
|
||||
|
||||
Reference in New Issue
Block a user