2025-04-25 23:50:26 +05:30
|
|
|
import os
|
|
|
|
|
from openai import OpenAI
|
|
|
|
|
import dotenv
|
|
|
|
|
dotenv.load_dotenv()
|
|
|
|
|
|
|
|
|
|
PROVIDER_BASE_URL = os.getenv('PROVIDER_BASE_URL', '')
|
2025-04-28 22:17:52 +05:30
|
|
|
PROVIDER_API_KEY = os.getenv('PROVIDER_API_KEY')
|
|
|
|
|
PROVIDER_DEFAULT_MODEL = os.getenv('PROVIDER_DEFAULT_MODEL')
|
|
|
|
|
PROVIDER_COPILOT_MODEL = os.getenv('PROVIDER_COPILOT_MODEL')
|
|
|
|
|
|
|
|
|
|
if not PROVIDER_COPILOT_MODEL:
|
|
|
|
|
PROVIDER_COPILOT_MODEL = 'gpt-4.1'
|
|
|
|
|
|
|
|
|
|
if not PROVIDER_API_KEY:
|
|
|
|
|
PROVIDER_API_KEY = os.getenv('OPENAI_API_KEY')
|
2025-04-25 23:50:26 +05:30
|
|
|
|
|
|
|
|
if not PROVIDER_API_KEY:
|
2025-04-28 22:17:52 +05:30
|
|
|
raise(ValueError("No LLM Provider API key found"))
|
|
|
|
|
|
|
|
|
|
if not PROVIDER_DEFAULT_MODEL:
|
|
|
|
|
PROVIDER_DEFAULT_MODEL = 'gpt-4.1'
|
2025-04-25 23:50:26 +05:30
|
|
|
|
|
|
|
|
completions_client = None
|
|
|
|
|
if PROVIDER_BASE_URL:
|
|
|
|
|
print(f"Using provider {PROVIDER_BASE_URL}, for completions")
|
|
|
|
|
completions_client = OpenAI(
|
|
|
|
|
base_url=PROVIDER_BASE_URL,
|
|
|
|
|
api_key=PROVIDER_API_KEY
|
|
|
|
|
)
|
|
|
|
|
else:
|
|
|
|
|
print(f"Using OpenAI directly for completions")
|
|
|
|
|
completions_client = OpenAI(
|
|
|
|
|
api_key=PROVIDER_API_KEY
|
|
|
|
|
)
|