feat: asr blackblox

This commit is contained in:
superobk
2024-03-19 11:44:51 +08:00
parent 4e2a4ef63c
commit 2dccf5e78d
19 changed files with 1408 additions and 14 deletions

View File

@ -1,16 +1,23 @@
from blackbox.audio_to_text import AudioToText
from blackbox.blackbox import Blackbox
from blackbox.calculator import Calculator
from blackbox.text_to_audio import TextToAudio
from ..asr.asr import ASR
from .audio_to_text import AudioToText
from .blackbox import Blackbox
from .calculator import Calculator
from .text_to_audio import TextToAudio
class BlackboxFactory:
def create_blackbox(self, blackbox_type: str, blackbox_config: dict) -> Blackbox:
if blackbox_type == "audio_to_text":
def __init__(self) -> None:
self.asr = ASR("./.env.yaml")
pass
def create_blackbox(self, blackbox_name: str, blackbox_config: dict) -> Blackbox:
if blackbox_name == "audio_to_text":
return AudioToText(blackbox_config)
if blackbox_type == "text_to_audio":
if blackbox_name == "text_to_audio":
return TextToAudio(blackbox_config)
if blackbox_type == "calculator":
if blackbox_name == "calculator":
return Calculator(blackbox_config)
if blackbox_name == "asr":
return self.asr
raise ValueError("Invalid blockbox type")