translatekit 0.2.3__tar.gz → 0.2.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {translatekit-0.2.3/translatekit.egg-info → translatekit-0.2.4}/PKG-INFO +1 -1
- {translatekit-0.2.3 → translatekit-0.2.4}/setup.py +1 -1
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/__init__.py +5 -1
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/llm_general.py +4 -0
- translatekit-0.2.4/translatekit/null_translator.py +57 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/sizhi.py +9 -4
- {translatekit-0.2.3 → translatekit-0.2.4/translatekit.egg-info}/PKG-INFO +1 -1
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit.egg-info/SOURCES.txt +1 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/.gitignore +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/LICENSE +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/MANIFEST.in +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/README.md +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/docs/TRANSLATION_CONFIG.md +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/docs/example.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/docs/kit.md +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/pyproject.toml +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/requirements.txt +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/setup.cfg +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/test/test_argu.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/baidu.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/base.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/deepl.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/google.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/kit.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/libre.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/linguee.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/microsoft.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/mymemory.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/papago.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/pons.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/qcri.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/tencent-hunyuan.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/tencent.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/test2.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/test_ai.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/test_ai_pro.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/test_format.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/test_re.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/test_self.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/yandex.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit/youdao.py +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit.egg-info/dependency_links.txt +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit.egg-info/requires.txt +0 -0
- {translatekit-0.2.3 → translatekit-0.2.4}/translatekit.egg-info/top_level.txt +0 -0
|
@@ -12,7 +12,7 @@ URL = 'https://github.com/HZBHZB1234/Py-Translate-Kit'
|
|
|
12
12
|
EMAIL = 'HZBHZB1234@outlook.com'
|
|
13
13
|
AUTHOR = 'HZBHZB1234'
|
|
14
14
|
REQUIRES_PYTHON = '>=3.6.0'
|
|
15
|
-
VERSION = '0.2.
|
|
15
|
+
VERSION = '0.2.4'
|
|
16
16
|
|
|
17
17
|
# What packages are required for this module to be executed?
|
|
18
18
|
REQUIRED = [
|
|
@@ -18,7 +18,9 @@ from .pons import PonsTranslator
|
|
|
18
18
|
from .qcri import QcriTranslator
|
|
19
19
|
from .tencent import TencentTranslator
|
|
20
20
|
from .youdao import YoudaoTranslator
|
|
21
|
+
from.sizhi import SizhiTranslator
|
|
21
22
|
from .llm_general import LLMGeneralTranslator
|
|
23
|
+
from .null_translator import NullTranslator
|
|
22
24
|
from . import kit
|
|
23
25
|
|
|
24
26
|
__all__ = [
|
|
@@ -40,9 +42,11 @@ __all__ = [
|
|
|
40
42
|
'QcriTranslator',
|
|
41
43
|
'TencentTranslator',
|
|
42
44
|
'YoudaoTranslator',
|
|
45
|
+
'SizhiTranslator',
|
|
43
46
|
'LLMGeneralTranslator',
|
|
47
|
+
'NullTranslator',
|
|
44
48
|
'kit'
|
|
45
49
|
]
|
|
46
50
|
|
|
47
|
-
__version__ = "
|
|
51
|
+
__version__ = "0.2.4"
|
|
48
52
|
__author__ = "HZBHZB1234"
|
|
@@ -200,6 +200,10 @@ class LLMGeneralTranslator(TranslatorBase):
|
|
|
200
200
|
|
|
201
201
|
self.logger.debug(f"LLM翻译器初始化完成,API地址: {self.complete_api_url},模型: {self.model_name}")
|
|
202
202
|
|
|
203
|
+
def _validate_languages(self, source_lang: str, target_lang: str):
|
|
204
|
+
"""无需验证语言对"""
|
|
205
|
+
pass
|
|
206
|
+
|
|
203
207
|
def _update_config_from_kwargs(self, kwargs: Dict):
|
|
204
208
|
"""更新配置参数"""
|
|
205
209
|
if "model" in kwargs:
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"""
|
|
2
|
+
空翻译器实现,对于所有输入文本都返回原文,用于调试目的
|
|
3
|
+
"""
|
|
4
|
+
|
|
5
|
+
from typing import Dict, Any, Optional
|
|
6
|
+
from .base import TranslatorBase, TranslationConfig, Metadata
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class NullTranslator(TranslatorBase):
|
|
10
|
+
"""空翻译器实现类,对于所有输入文本都返回原文,用于调试目的"""
|
|
11
|
+
|
|
12
|
+
# 服务元信息
|
|
13
|
+
SERVICE_NAME = "null_translator"
|
|
14
|
+
SUPPORTED_LANGUAGES = {
|
|
15
|
+
'auto': '自动检测',
|
|
16
|
+
'en': '英语'
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
METADATA = Metadata(
|
|
20
|
+
console_url="",
|
|
21
|
+
description="空翻译器,对于所有输入文本都返回原文,用于调试目的",
|
|
22
|
+
documentation_url="",
|
|
23
|
+
short_description="空翻译器(调试用)",
|
|
24
|
+
usage_documentation="不发送任何网络请求,直接返回原文,用于调试翻译流程"
|
|
25
|
+
)
|
|
26
|
+
|
|
27
|
+
def _translate_default(self, text: str, source_lang: str, target_lang: str, **kwargs) -> str:
|
|
28
|
+
"""
|
|
29
|
+
默认翻译方法,直接返回原文
|
|
30
|
+
|
|
31
|
+
Args:
|
|
32
|
+
text: 要翻译的文本
|
|
33
|
+
source_lang: 源语言
|
|
34
|
+
target_lang: 目标语言
|
|
35
|
+
**kwargs: 额外参数
|
|
36
|
+
|
|
37
|
+
Returns:
|
|
38
|
+
原始文本,不做任何翻译
|
|
39
|
+
"""
|
|
40
|
+
return text
|
|
41
|
+
|
|
42
|
+
def _parse_api_response(self, response: Any, **kwargs) -> str:
|
|
43
|
+
"""
|
|
44
|
+
解析API响应,对于NullTranslator,响应就是原始文本
|
|
45
|
+
|
|
46
|
+
Args:
|
|
47
|
+
response: API响应(在这里就是原始文本)
|
|
48
|
+
**kwargs: 额外参数
|
|
49
|
+
|
|
50
|
+
Returns:
|
|
51
|
+
解析后的翻译文本
|
|
52
|
+
"""
|
|
53
|
+
return response
|
|
54
|
+
|
|
55
|
+
def _validate_languages(self, source_lang: str, target_lang: str):
|
|
56
|
+
"""验证语言对,NullTranslator不做验证,允许所有语言对"""
|
|
57
|
+
pass
|
|
@@ -30,7 +30,7 @@ class SizhiTranslator(TranslatorBase):
|
|
|
30
30
|
DEFAULT_API_KEY = {
|
|
31
31
|
"appid": "",
|
|
32
32
|
"userid": "",
|
|
33
|
-
"prompt": "
|
|
33
|
+
"prompt": "请将以下文本翻译为{target},只返回翻译结果:\n{text}"
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
DESCRIBE_API_KEY = [
|
|
@@ -82,6 +82,10 @@ class SizhiTranslator(TranslatorBase):
|
|
|
82
82
|
# 线程本地存储,用于速率限制
|
|
83
83
|
self.MIN_REQUEST_INTERVAL = 1.0 # 思知API建议的最小请求间隔
|
|
84
84
|
|
|
85
|
+
def _validate_languages(self, source_lang: str, target_lang: str):
|
|
86
|
+
"""无需验证语言对"""
|
|
87
|
+
pass
|
|
88
|
+
|
|
85
89
|
def _translate_default(self, text: str, source_lang: str, target_lang: str, **kwargs) -> Any:
|
|
86
90
|
"""
|
|
87
91
|
调用思知对话API进行翻译
|
|
@@ -93,11 +97,12 @@ class SizhiTranslator(TranslatorBase):
|
|
|
93
97
|
**kwargs: 额外参数
|
|
94
98
|
"""
|
|
95
99
|
# 使用prompt模板,将{text}替换为实际文本
|
|
96
|
-
if hasattr(self, 'prompt'):
|
|
97
|
-
prompt_text = self.prompt.format(
|
|
100
|
+
if hasattr(self, 'prompt') and self.prompt:
|
|
101
|
+
prompt_text = self.prompt.format(
|
|
102
|
+
text=text,target=target_lang)
|
|
98
103
|
else:
|
|
99
104
|
# 默认prompt
|
|
100
|
-
prompt_text = f"
|
|
105
|
+
prompt_text = f"请将以下文本翻译为{target_lang},只返回翻译结果:\n{text}"
|
|
101
106
|
|
|
102
107
|
# 构建API请求URL和参数
|
|
103
108
|
url = f"{self.BASE_ENDPOINT}{self.CHAT_ENDPOINT}"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|