File size: 1,229 Bytes
485d8e3 c0447ed 3acb7f3 485d8e3 6f13b8c 485d8e3 7f191bc 485d8e3 2aed46a 7f191bc 485d8e3 65a4e8d ce0e589 485d8e3 2aed46a 3acb7f3 2aed46a 31ad35a |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
from .base import MetaItem, BasePipe, Segment
from llama_cpp import Llama
from ..helpers.translator import QwenTranslator
from config import LLM_MODEL_PATH, LLM_SYS_PROMPT_EN, LLM_SYS_PROMPT_ZH, LLM_LARGE_MODEL_PATH, ALL_MARKERS, LLM_SYS_7B_PROMPT_EN, LLM_SYS_7B_PROMPT_ZH
class TranslatePipe(BasePipe):
translator = None
@classmethod
def init(cls):
if cls.translator is None:
cls.translator = QwenTranslator(LLM_MODEL_PATH, LLM_SYS_PROMPT_EN, LLM_SYS_PROMPT_ZH)
def process(self, in_data: MetaItem) -> MetaItem:
context = in_data.transcribe_content
if not context.strip():
result = ""
elif all([ch in ALL_MARKERS for ch in context.strip()]):
result = ""
else:
result = self.translator.translate(
context, src_lang=in_data.source_language, dst_lang=in_data.destination_language)
in_data.translate_content = result
return in_data
class Translate7BPipe(TranslatePipe):
translator = None
@classmethod
def init(cls):
if cls.translator is None:
cls.translator = QwenTranslator(LLM_LARGE_MODEL_PATH, LLM_SYS_7B_PROMPT_EN, LLM_SYS_7B_PROMPT_ZH)
|