diff --git a/.github/workflows/translate-readme.yml b/.github/workflows/translate-readme.yml index 18f713d..6b92f02 100644 --- a/.github/workflows/translate-readme.yml +++ b/.github/workflows/translate-readme.yml @@ -17,5 +17,4 @@ jobs: uses: ./ with: token: ${{ secrets.Action_Bot }} # Your token - g4f_provider: g4f.Provider.DeepAi # You can change this provider langs: "en,zh-TW,zh-CN,French,Arabic" # You can define any langs diff --git a/README.zh-TW.md b/README.zh-TW.md index c5aee8a..2d267c4 100644 --- a/README.zh-TW.md +++ b/README.zh-TW.md @@ -82,14 +82,12 @@ uses: Lin-jun-xiang/action-translate-readme@v2 # Based on the tag with: token: ${{ secrets.Action_Bot }} # Based on step2 name - g4f_provider: g4f.Provider.DeepAi # You can change this provider langs: "en,zh-TW,zh-CN,French,Arabic" # You can define any langs ``` 在`.yml`中有三個參數要特別注意: * `token`: 根據步驟2,在repos中建立的token - * `g4f_provider`: gpt 的提供者,更多請參考[連結](https://github.com/xtekky/gpt4free/tree/main#gpt-35--gpt-4) * `langs`: 想要產生的語言版本,務必用`,`分隔不同語言,例如: * `"en"`: 僅翻譯英文版 * `"en,zh-TW"`: 翻譯英文、繁體中文 diff --git a/action.yml b/action.yml index 0258594..934b5c4 100644 --- a/action.yml +++ b/action.yml @@ -44,7 +44,6 @@ runs: shell: bash working-directory: . run: | - export PROVIDER=${{ inputs.g4f_provider }} export LANGS=${{ inputs.langs }} python $GITHUB_ACTION_PATH/translation.py diff --git a/translation.py b/translation.py index 0d6749e..2ab78fc 100644 --- a/translation.py +++ b/translation.py @@ -3,22 +3,11 @@ import re import subprocess -import g4f +from g4f.client import AsyncClient from tenacity import retry, stop_after_attempt -g4f.debug.logging = True - LAGNS = os.environ.get('LANGS').split(',') -PROVIDER_MAPPING = { - f'g4f.Provider.{provider}': getattr(g4f.Provider, provider) - for provider in g4f.Provider.__all__ -} -try: - PROVIDER = PROVIDER_MAPPING[os.environ.get('PROVIDER')] -except: - PROVIDER = None - def run_shell_command(command: str) -> tuple: result = subprocess.run( @@ -33,11 +22,12 @@ def run_shell_command(command: str) -> tuple: @retry(stop=stop_after_attempt(15)) async def chat_completion(query: str) -> str: - response = await g4f.ChatCompletion.create_async( - model=g4f.models.gpt_35_long, + client = AsyncClient() + + response = await client.chat.completions.create( + model="gpt-3.5-turbo", messages=[{"role": "user", "content": query}], - provider=PROVIDER - ) + ).choices[0].message.content if response == '' or response is None: raise Exception return response