Преглед на файлове

feat: add Groq translation support via llama-3-3-70b-versatile, and updated translation service documentation

Myron Kharkover преди 1 година
родител
ревизия
435d39a078
променени са 3 файла, в които са добавени 5 реда и са изтрити 1 реда
  1. 1 0
      docs/ADVANCED.md
  2. 2 1
      pdf2zh/converter.py
  3. 2 0
      pdf2zh/gui.py

+ 1 - 0
docs/ADVANCED.md

@@ -67,6 +67,7 @@ We've provided a detailed table on the required [environment variables](https://
 | **AnythingLLM**      | `anythingllm`  | `AnythingLLM_URL`, `AnythingLLM_APIKEY`                               | `[Your AnythingLLM URL]`, `[Your Key]`                   | See [anything-llm](https://github.com/Mintplex-Labs/anything-llm)                                                                                                                                         |
 |**Argos Translate**|`argos`| | |See [argos-translate](https://github.com/argosopentech/argos-translate)|
 |**Grok**|`grok`| `GORK_API_KEY`, `GORK_MODEL` | `[Your GORK_API_KEY]`, `grok-2-1212` |See [Grok](https://docs.x.ai/docs/overview)|
+|**Groq**|`groq`| `GROQ_API_KEY`, `GROQ_MODEL` | `[Your GROQ_API_KEY]`, `llama-3-3-70b-versatile` |See [Groq](https://console.groq.com/docs/models)|
 |**DeepSeek**|`deepseek`| `DEEPSEEK_API_KEY`, `DEEPSEEK_MODEL` | `[Your DEEPSEEK_API_KEY]`, `deepseek-chat` |See [DeepSeek](https://www.deepseek.com/)|
 |**OpenAI-Liked**|`openai-liked`| `OPENAILIKE_BASE_URL`, `OPENAILIKE_API_KEY`, `OPENAILIKE_MODEL` | `url`, `[Your Key]`, `model name` | None |
 

+ 2 - 1
pdf2zh/converter.py

@@ -37,6 +37,7 @@ from pdf2zh.translator import (
     XinferenceTranslator,
     ArgosTranslator,
     GorkTranslator,
+    GroqTranslator,
     DeepseekTranslator,
     OpenAIlikedTranslator,
 )
@@ -158,7 +159,7 @@ class TranslateConverter(PDFConverterEx):
         if not prompt:
             prompt = []
         for translator in [GoogleTranslator, BingTranslator, DeepLTranslator, DeepLXTranslator, OllamaTranslator, XinferenceTranslator, AzureOpenAITranslator,
-                           OpenAITranslator, ZhipuTranslator, ModelScopeTranslator, SiliconTranslator, GeminiTranslator, AzureTranslator, TencentTranslator, DifyTranslator, AnythingLLMTranslator, ArgosTranslator, GorkTranslator, DeepseekTranslator, OpenAIlikedTranslator,]:
+                           OpenAITranslator, ZhipuTranslator, ModelScopeTranslator, SiliconTranslator, GeminiTranslator, AzureTranslator, TencentTranslator, DifyTranslator, AnythingLLMTranslator, ArgosTranslator, GorkTranslator, GroqTranslator, DeepseekTranslator, OpenAIlikedTranslator,]:
             if service_name == translator.name:
                 self.translator = translator(lang_in, lang_out, service_model, envs=envs, prompt=prompt)
         if not self.translator:

+ 2 - 0
pdf2zh/gui.py

@@ -34,6 +34,7 @@ from pdf2zh.translator import (
     XinferenceTranslator,
     ZhipuTranslator,
     GorkTranslator,
+    GroqTranslator,
     DeepseekTranslator,
     OpenAIlikedTranslator,
 )
@@ -58,6 +59,7 @@ service_map: dict[str, BaseTranslator] = {
     "AnythingLLM": AnythingLLMTranslator,
     "Argos Translate": ArgosTranslator,
     "Gork": GorkTranslator,
+    "Groq": GroqTranslator,
     "DeepSeek": DeepseekTranslator,
     "OpenAI-liked": OpenAIlikedTranslator,
 }