Move openai intialization to tl.py

This commit is contained in:
dazedanon 2025-10-27 22:53:08 -05:00
parent 391d3a3a66
commit c31731922f
19 changed files with 35 additions and 151 deletions

View file

@ -453,11 +453,11 @@ class ConfigTab(QWidget):
if self.env_file_path.exists():
load_dotenv(self.env_file_path)
# Load API settings
self.api_url_edit.setText(os.getenv("api", ""))
self.api_key_edit.setText(os.getenv("key", ""))
self.organization_edit.setText(os.getenv("organization", ""))
self.model_combo.setCurrentText(os.getenv("model", "gpt-4.1"))
# Load API settings (trim whitespace to avoid accidental trailing spaces)
self.api_url_edit.setText(os.getenv("api", "").strip())
self.api_key_edit.setText(os.getenv("key", "").strip())
self.organization_edit.setText(os.getenv("organization", "").strip())
self.model_combo.setCurrentText(os.getenv("model", "gpt-4.1"))
# Load translation settings
self.language_combo.setCurrentText(os.getenv("language", "English"))
@ -485,10 +485,10 @@ class ConfigTab(QWidget):
if not self.env_file_path.exists():
self.env_file_path.touch()
# Save API settings
set_key(self.env_file_path, "api", self.api_url_edit.text())
set_key(self.env_file_path, "key", self.api_key_edit.text())
set_key(self.env_file_path, "organization", self.organization_edit.text())
# Save API settings (trim whitespace to prevent accidental spaces in .env)
set_key(self.env_file_path, "api", self.api_url_edit.text().strip())
set_key(self.env_file_path, "key", self.api_key_edit.text().strip())
set_key(self.env_file_path, "organization", self.organization_edit.text().strip())
set_key(self.env_file_path, "model", self.model_combo.currentText())
# Save translation settings

View file

@ -7,7 +7,6 @@ import threading
import time
import traceback
import tiktoken
import openai
import csv
from pathlib import Path
from colorama import Fore
@ -17,13 +16,6 @@ from tqdm import tqdm
from util.translation import TranslationConfig, translateAI as sharedtranslateAI, getPricingConfig, calculateCost
import tempfile
# Open AI
load_dotenv()
if os.getenv("api").replace(" ", "") != "":
openai.base_url = os.getenv("api")
openai.organization = os.getenv("org")
openai.api_key = os.getenv("key")
# Globals
MODEL = os.getenv("model")
TIMEOUT = int(os.getenv("timeout"))

View file

@ -7,7 +7,6 @@ import threading
import time
import traceback
import tiktoken
import openai
from pathlib import Path
from colorama import Fore
from dotenv import load_dotenv
@ -34,13 +33,6 @@ NAMESLIST = []
MISMATCH = [] # Lists files that throw a mismatch error (Length of GPT list response is wrong)
FILENAME = None
# Open AI
load_dotenv()
if os.getenv("api").replace(" ", "") != "":
openai.base_url = os.getenv("api")
openai.organization = os.getenv("org")
openai.api_key = os.getenv("key")
# Regex - Need to change this if you want to translate from/to other languages. Default is Japanese Regex
LANGREGEX = r"[一-龠ぁ-ゔァ-ヴーa---\uFF61-\uFF9F]+"

View file

@ -7,7 +7,6 @@ import threading
import time
import traceback
import tiktoken
import openai
from pathlib import Path
from colorama import Fore
from dotenv import load_dotenv
@ -16,13 +15,6 @@ from tqdm import tqdm
from util.translation import TranslationConfig, translateAI as sharedtranslateAI, getPricingConfig, calculateCost, getPricingConfig, calculateCost
import tempfile
# Open AI
load_dotenv()
if os.getenv("api").replace(" ", "") != "":
openai.base_url = os.getenv("api")
openai.organization = os.getenv("org")
openai.api_key = os.getenv("key")
# Globals
MODEL = os.getenv("model")
TIMEOUT = int(os.getenv("timeout"))

View file

@ -7,7 +7,6 @@ import threading
import time
import traceback
import tiktoken
import openai
from pathlib import Path
from colorama import Fore
from dotenv import load_dotenv
@ -16,13 +15,6 @@ from tqdm import tqdm
from util.translation import TranslationConfig, translateAI as sharedtranslateAI, getPricingConfig, calculateCost, getPricingConfig, calculateCost
import tempfile
# Open AI
load_dotenv()
if os.getenv("api").replace(" ", "") != "":
openai.base_url = os.getenv("api")
openai.organization = os.getenv("org")
openai.api_key = os.getenv("key")
# Globals
MODEL = os.getenv("model")
TIMEOUT = int(os.getenv("timeout"))

View file

@ -7,7 +7,6 @@ import threading
import time
import traceback
import tiktoken
import openai
from pathlib import Path
from colorama import Fore
from dotenv import load_dotenv
@ -16,13 +15,6 @@ from tqdm import tqdm
from util.translation import TranslationConfig, translateAI as sharedtranslateAI, getPricingConfig, calculateCost
import tempfile
# Open AI
load_dotenv()
if os.getenv("api").replace(" ", "") != "":
openai.base_url = os.getenv("api")
openai.organization = os.getenv("org")
openai.api_key = os.getenv("key")
# Globals
MODEL = os.getenv("model")
TIMEOUT = int(os.getenv("timeout"))

View file

@ -7,7 +7,6 @@ import threading
import time
import traceback
import tiktoken
import openai
from pathlib import Path
from colorama import Fore
from dotenv import load_dotenv
@ -16,13 +15,6 @@ from tqdm import tqdm
from util.translation import TranslationConfig, translateAI as sharedtranslateAI, getPricingConfig, calculateCost
import tempfile
# Open AI
load_dotenv()
if os.getenv("api").replace(" ", "") != "":
openai.base_url = os.getenv("api")
openai.organization = os.getenv("org")
openai.api_key = os.getenv("key")
# Globals
MODEL = os.getenv("model")
TIMEOUT = int(os.getenv("timeout"))

View file

@ -7,7 +7,6 @@ import threading
import time
import traceback
import tiktoken
import openai
from pathlib import Path
from colorama import Fore
from dotenv import load_dotenv
@ -16,18 +15,6 @@ from tqdm import tqdm
from util.translation import TranslationConfig, translateAI as sharedtranslateAI, getPricingConfig, calculateCost
import tempfile
# Open AI
load_dotenv()
if os.getenv("API_PROVIDER") == "gemini":
openai.base_url = "https://generativelanguage.googleapis.com/v1beta/openai/"
openai.organization = None
else:
api_url = os.getenv("api")
if api_url and api_url.replace(" ", "") != "":
openai.base_url = api_url
openai.organization = os.getenv("org")
openai.api_key = os.getenv("key")
# Globals
MODEL = os.getenv("model")
TIMEOUT = int(os.getenv("timeout"))

View file

@ -7,7 +7,6 @@ import threading
import time
import traceback
import tiktoken
import openai
from pathlib import Path
from colorama import Fore
from dotenv import load_dotenv
@ -16,13 +15,6 @@ from tqdm import tqdm
from util.translation import TranslationConfig, translateAI as sharedtranslateAI, getPricingConfig, calculateCost, getPricingConfig, calculateCost
import tempfile
# Open AI
load_dotenv()
if os.getenv("api").replace(" ", "") != "":
openai.base_url = os.getenv("api")
openai.organization = os.getenv("org")
openai.api_key = os.getenv("key")
# Globals
MODEL = os.getenv("model")
TIMEOUT = int(os.getenv("timeout"))

View file

@ -7,7 +7,6 @@ import threading
import time
import traceback
import tiktoken
import openai
import copy
# Removed concurrent.futures usage for simplicity; running synchronously
from pathlib import Path
@ -19,13 +18,6 @@ from util.translation import TranslationConfig, translateAI as sharedtranslateAI
from ruamel.yaml import YAML
# Open AI
load_dotenv()
if os.getenv("api").replace(" ", "") != "":
openai.base_url = os.getenv("api")
openai.organization = os.getenv("org")
openai.api_key = os.getenv("key")
# Globals
MODEL = os.getenv("model")
TIMEOUT = int(os.getenv("timeout"))

View file

@ -6,7 +6,6 @@ import util.dazedwrap as dazedwrap
import threading
import time
import traceback
import openai
import copy
from pathlib import Path
import shutil
@ -16,13 +15,6 @@ from retry import retry
from tqdm import tqdm
from util.translation import TranslationConfig, translateAI as sharedtranslateAI, getPricingConfig, calculateCost, getPricingConfig, calculateCost
# Open AI
load_dotenv()
if os.getenv("api").replace(" ", "") != "":
openai.base_url = os.getenv("api")
openai.organization = os.getenv("org")
openai.api_key = os.getenv("key")
# Globals
MODEL = os.getenv("model")
TIMEOUT = int(os.getenv("timeout"))

View file

@ -7,7 +7,6 @@ import threading
import time
import traceback
import tiktoken
import openai
from pathlib import Path
from colorama import Fore
from dotenv import load_dotenv
@ -16,13 +15,6 @@ from tqdm import tqdm
from util.translation import TranslationConfig, translateAI as sharedtranslateAI, getPricingConfig, calculateCost
import tempfile
# Open AI
load_dotenv()
if os.getenv("api").replace(" ", "") != "":
openai.base_url = os.getenv("api")
openai.organization = os.getenv("org")
openai.api_key = os.getenv("key")
# Globals
MODEL = os.getenv("model")
TIMEOUT = int(os.getenv("timeout"))

View file

@ -7,7 +7,7 @@ import util.dazedwrap as dazedwrap
import threading
import time
import traceback
import openai
from dotenv import load_dotenv
from pathlib import Path
from colorama import Fore
from dotenv import load_dotenv
@ -15,13 +15,6 @@ from retry import retry
from tqdm import tqdm
from util.translation import TranslationConfig, translateAI as sharedtranslateAI, getPricingConfig, calculateCost
# Open AI
load_dotenv()
if os.getenv("api").replace(" ", "") != "":
openai.base_url = os.getenv("api")
openai.organization = os.getenv("org")
openai.api_key = os.getenv("key")
# Globals
MODEL = os.getenv("model")
TIMEOUT = int(os.getenv("timeout"))

View file

@ -7,7 +7,6 @@ import threading
import time
import traceback
import tiktoken
import openai
from pathlib import Path
from colorama import Fore
from dotenv import load_dotenv
@ -16,18 +15,6 @@ from tqdm import tqdm
from util.translation import TranslationConfig, translateAI as sharedtranslateAI, getPricingConfig, calculateCost, getPricingConfig, calculateCost
import tempfile
# Open AI
load_dotenv()
if os.getenv("API_PROVIDER") == "gemini":
openai.base_url = "https://generativelanguage.googleapis.com/v1beta/openai/"
openai.organization = None
else:
api_url = os.getenv("api")
if api_url and api_url.replace(" ", "") != "":
openai.base_url = api_url
openai.organization = os.getenv("org")
openai.api_key = os.getenv("key")
# Globals
MODEL = os.getenv("model")
TIMEOUT = int(os.getenv("timeout"))

View file

@ -7,7 +7,6 @@ import threading
import time
import traceback
import tiktoken
import openai
from pathlib import Path
from colorama import Fore
from dotenv import load_dotenv
@ -16,12 +15,7 @@ from tqdm import tqdm
from util.translation import TranslationConfig, translateAI as sharedtranslateAI, getPricingConfig, calculateCost
import tempfile
# Open AI
load_dotenv()
if os.getenv("api").replace(" ", "") != "":
openai.base_url = os.getenv("api")
openai.organization = os.getenv("org")
openai.api_key = os.getenv("key")
# OpenAI initialization centralized in util/translation.py
# Globals
MODEL = os.getenv("model")

View file

@ -7,7 +7,6 @@ import threading
import time
import traceback
import tiktoken
import openai
from pathlib import Path
from colorama import Fore
from dotenv import load_dotenv
@ -16,12 +15,7 @@ from tqdm import tqdm
from util.translation import TranslationConfig, translateAI as sharedtranslateAI, getPricingConfig, calculateCost, getPricingConfig, calculateCost
import tempfile
# Open AI
load_dotenv()
if os.getenv("api").replace(" ", "") != "":
openai.base_url = os.getenv("api")
openai.organization = os.getenv("org")
openai.api_key = os.getenv("key")
# OpenAI initialization centralized in util/translation.py
# Globals
MODEL = os.getenv("model")

View file

@ -7,7 +7,6 @@ import threading
import time
import traceback
import tiktoken
import openai
# Removed concurrent.futures usage for simplicity; running synchronously
from pathlib import Path
from colorama import Fore
@ -16,12 +15,7 @@ from retry import retry
from tqdm import tqdm
from util.translation import TranslationConfig, translateAI as sharedtranslateAI, getPricingConfig, calculateCost, getPricingConfig, calculateCost
# Open AI
load_dotenv()
if os.getenv("api").replace(" ", "") != "":
openai.base_url = os.getenv("api")
openai.organization = os.getenv("org")
openai.api_key = os.getenv("key")
# OpenAI initialization centralized in util/translation.py
# Globals
MODEL = os.getenv("model")

View file

@ -8,7 +8,6 @@ import threading
import time
import traceback
import tiktoken
import openai
from pathlib import Path
from colorama import Fore
from dotenv import load_dotenv
@ -17,12 +16,7 @@ from tqdm import tqdm
from util.translation import TranslationConfig, translateAI as sharedtranslateAI, getPricingConfig, calculateCost
import tempfile
# Open AI
load_dotenv()
if os.getenv("api").replace(" ", "") != "":
openai.base_url = os.getenv("api")
openai.organization = os.getenv("org")
openai.api_key = os.getenv("key")
# OpenAI initialization centralized in util/translation.py
# Globals
MODEL = os.getenv("model")

View file

@ -9,9 +9,30 @@ import re
import json
import tiktoken
import openai
from dotenv import load_dotenv
from pathlib import Path
from retry import retry
# (from .env if present), strip accidental whitespace, and set the base URL,
# organization, and API key. It also handles the Gemini compatibility layer.
load_dotenv()
api_provider = os.getenv("API_PROVIDER", "openai").lower()
env_api = os.getenv("api", "").strip()
if api_provider == "gemini":
# Use Google Generative Language compatibility endpoint when running Gemini
openai.base_url = "https://generativelanguage.googleapis.com/v1beta/openai/"
openai.organization = None
else:
if env_api:
openai.base_url = env_api
# Support both 'organization' (gui/.env.example) and legacy 'org' names
org = os.getenv("organization") or os.getenv("org")
if org:
openai.organization = org.strip()
# Always set API key from 'key' env var (trim whitespace)
openai.api_key = os.getenv("key", "").strip()
class TranslationConfig:
"""Configuration class to hold all translation settings"""