From ae9f9142c1640634abc3c3058a6372f24e35ee4e Mon Sep 17 00:00:00 2001 From: m5kro Date: Sat, 18 Nov 2023 11:28:48 -0800 Subject: [PATCH] Default to OpenAI API if no API given --- .env.example | 31 +++++++++++++++++++++++++------ README.md | 15 --------------- modules/alltext.py | 7 ++++++- modules/csv.py | 7 ++++++- modules/json.py | 7 ++++++- modules/kansen.py | 7 ++++++- modules/lune.py | 7 ++++++- modules/lune2.py | 7 ++++++- modules/rpgmakerace.py | 7 ++++++- modules/rpgmakermvmz.py | 7 ++++++- modules/txt.py | 7 ++++++- modules/tyrano.py | 7 ++++++- 12 files changed, 85 insertions(+), 31 deletions(-) diff --git a/.env.example b/.env.example index 82972d3..6429ce5 100644 --- a/.env.example +++ b/.env.example @@ -1,11 +1,30 @@ +#API link, leave blank to use OpenAI API +api="" + +#API key key="" + +#Oranization key, make something up for self hosted or other API organization="" -proxy="" + +#LLM model name, use gpt-3.5-turbo-1106 or gpt-3.5-turbo or gpt-4 for OpenAI API +#For text generation webui use gpt-3.5-turbo, for other API's consult their documentation model="" -timeout="" -fileThreads="" -threads="" -width="" -listWidth="" + #The language to translate TO, Don't forget to change the prompt language="" + +#The timeout before disconnect error, 30 to 120 recommended +timeout="" + +#The number of files to translate at the same time, 1 recommended for free or self hosted API or gpt-4 +fileThreads="" + +#The number of threads per file, 1 recommended for free or self hosted API or gpt-4 +threads="" + +#The wordwrap of dialogue text +width="" + +#The wordwap of items and help text +listWidth="" \ No newline at end of file diff --git a/README.md b/README.md index f9b25c1..5a17513 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,3 @@ -This is a modified version of dazedanon's DazedMTLTool indended for use with proxies and self hosted LLM APIs. There are also some "quality of life" changes. - -In the .env file there are a few new variables to play with: -

proxy - The link to the API you want to use

-

model - The model name of the LLM

-

timeout - The timeout before disconnect error (30 to 120 recommended)

-

fileThreads - The number of files to translate at the same time (1 recommended for free or self hosted API)

-

threads - The number of threads per file (1 recommended for free or self hosted API)

-

width - The wordwrap of dialogue text

-

listWidth - The wordwap of items and help text

-
-

Depending on the API a key or organization won't be needed. You can just set those to something random.

-

Start scripts have been added to streamline the process.

- -All credit goes to dazedanon for creating this marvelous tool. # DazedMTLTool - A script that translates RPGMaker JSON files using ChatGPT API ![image](https://user-images.githubusercontent.com/96628874/230908699-adacb5e1-1548-4116-a0ea-a33297cdafa4.png) diff --git a/modules/alltext.py b/modules/alltext.py index 4e36dc0..bb595c3 100644 --- a/modules/alltext.py +++ b/modules/alltext.py @@ -18,7 +18,12 @@ from tqdm import tqdm # Globals load_dotenv() -openai.api_base = os.getenv('proxy') +if not os.getenv('api').replace(" ", ""): + print('No API given, defaulting to OpenAI API') +else: + openai.api_base = os.getenv('api') + print('Using ' + os.getenv('api') + ' as API') + openai.organization = os.getenv('org') openai.api_key = os.getenv('key') MODEL = os.getenv('model') diff --git a/modules/csv.py b/modules/csv.py index 96f8c21..94cfa57 100644 --- a/modules/csv.py +++ b/modules/csv.py @@ -18,7 +18,12 @@ from tqdm import tqdm #Globals load_dotenv() -openai.api_base = os.getenv('proxy') +if not os.getenv('api').replace(" ", ""): + print('No API given, defaulting to OpenAI API') +else: + openai.api_base = os.getenv('api') + print('Using ' + os.getenv('api') + ' as API') + openai.organization = os.getenv('org') openai.api_key = os.getenv('key') MODEL = os.getenv('model') diff --git a/modules/json.py b/modules/json.py index fddf2d1..f3360c8 100644 --- a/modules/json.py +++ b/modules/json.py @@ -17,7 +17,12 @@ from tqdm import tqdm #Globals load_dotenv() -openai.api_base = os.getenv('proxy') +if not os.getenv('api').replace(" ", ""): + print('No API given, defaulting to OpenAI API') +else: + openai.api_base = os.getenv('api') + print('Using ' + os.getenv('api') + ' as API') + openai.organization = os.getenv('org') openai.api_key = os.getenv('key') MODEL = os.getenv('model') diff --git a/modules/kansen.py b/modules/kansen.py index ae82e0d..f0af984 100644 --- a/modules/kansen.py +++ b/modules/kansen.py @@ -16,7 +16,12 @@ from tqdm import tqdm #Globals load_dotenv() -openai.api_base = os.getenv('proxy') +if not os.getenv('api').replace(" ", ""): + print('No API given, defaulting to OpenAI API') +else: + openai.api_base = os.getenv('api') + print('Using ' + os.getenv('api') + ' as API') + openai.organization = os.getenv('org') openai.api_key = os.getenv('key') MODEL = os.getenv('model') diff --git a/modules/lune.py b/modules/lune.py index 952ca4b..bae87f9 100644 --- a/modules/lune.py +++ b/modules/lune.py @@ -17,7 +17,12 @@ from tqdm import tqdm #Globals load_dotenv() -openai.api_base = os.getenv('proxy') +if not os.getenv('api').replace(" ", ""): + print('No API given, defaulting to OpenAI API') +else: + openai.api_base = os.getenv('api') + print('Using ' + os.getenv('api') + ' as API') + openai.organization = os.getenv('org') openai.api_key = os.getenv('key') MODEL = os.getenv('model') diff --git a/modules/lune2.py b/modules/lune2.py index a0ffe75..46a4a4c 100644 --- a/modules/lune2.py +++ b/modules/lune2.py @@ -18,7 +18,12 @@ from tqdm import tqdm #Globals load_dotenv() -openai.api_base = os.getenv('proxy') +if not os.getenv('api').replace(" ", ""): + print('No API given, defaulting to OpenAI API') +else: + openai.api_base = os.getenv('api') + print('Using ' + os.getenv('api') + ' as API') + openai.organization = os.getenv('org') openai.api_key = os.getenv('key') MODEL = os.getenv('model') diff --git a/modules/rpgmakerace.py b/modules/rpgmakerace.py index 5fd7744..2175d36 100644 --- a/modules/rpgmakerace.py +++ b/modules/rpgmakerace.py @@ -19,7 +19,12 @@ from tqdm import tqdm #Globals load_dotenv() -openai.api_base = os.getenv('proxy') +if not os.getenv('api').replace(" ", ""): + print('No API given, defaulting to OpenAI API') +else: + openai.api_base = os.getenv('api') + print('Using ' + os.getenv('api') + ' as API') + openai.organization = os.getenv('org') openai.api_key = os.getenv('key') MODEL = os.getenv('model') diff --git a/modules/rpgmakermvmz.py b/modules/rpgmakermvmz.py index ac324a0..9364d93 100644 --- a/modules/rpgmakermvmz.py +++ b/modules/rpgmakermvmz.py @@ -18,7 +18,12 @@ from tqdm import tqdm #Globals load_dotenv() -openai.api_base = os.getenv('proxy') +if not os.getenv('api').replace(" ", ""): + print('No API given, defaulting to OpenAI API') +else: + openai.api_base = os.getenv('api') + print('Using ' + os.getenv('api') + ' as API') + openai.organization = os.getenv('org') openai.api_key = os.getenv('key') MODEL = os.getenv('model') diff --git a/modules/txt.py b/modules/txt.py index 585391a..3d2b394 100644 --- a/modules/txt.py +++ b/modules/txt.py @@ -18,7 +18,12 @@ from tqdm import tqdm #Globals load_dotenv() -openai.api_base = os.getenv('proxy') +if not os.getenv('api').replace(" ", ""): + print('No API given, defaulting to OpenAI API') +else: + openai.api_base = os.getenv('api') + print('Using ' + os.getenv('api') + ' as API') + openai.organization = os.getenv('org') openai.api_key = os.getenv('key') MODEL = os.getenv('model') diff --git a/modules/tyrano.py b/modules/tyrano.py index 12dc59e..8b31163 100644 --- a/modules/tyrano.py +++ b/modules/tyrano.py @@ -16,7 +16,12 @@ from tqdm import tqdm #Globals load_dotenv() -openai.api_base = os.getenv('proxy') +if not os.getenv('api').replace(" ", ""): + print('No API given, defaulting to OpenAI API') +else: + openai.api_base = os.getenv('api') + print('Using ' + os.getenv('api') + ' as API') + openai.organization = os.getenv('org') openai.api_key = os.getenv('key') MODEL = os.getenv('model')