import pytest from test_data.texts import read_translation from lib.utils import save_csv from environment import REPORTS_DIR @pytest.fixture(scope="module") def llm(get_platform): if get_platform == "apple": from lib.models.mac.llm import QwenTranslator return QwenTranslator() elif get_platform == "intel": from lib.models.intel.llm import QwenOv return QwenOv() def test_llm_zh(llm): report = [] for src in read_translation("zh", count_limit=None): dst, time_cost = llm.translate(src, src_lang="zh", dst_lang="en") report.append([src, dst, time_cost]) save_csv(REPORTS_DIR/"test_llm_zh.csv", ["src", "dst", "time"], report) speed = [i[2] for i in report] print("llm zh average speed: ", sum(speed) / len(speed)) def test_llm_en(llm): report = [] for src in read_translation("en", count_limit=None): dst, time_cost = llm.translate(src, src_lang="en", dst_lang="zh") report.append([src, dst, time_cost]) save_csv(REPORTS_DIR/"test_llm_en.csv", ["src", "dst", "time"], report) speed = [i[2] for i in report] print("llm en average speed: ", sum(speed) / len(speed))