|
from typing import List, Optional |
|
|
|
from litellm.secret_managers.main import get_secret_str |
|
|
|
from ..base_llm.base_utils import BaseLLMModelInfo |
|
from ..base_llm.chat.transformation import BaseLLMException |
|
|
|
|
|
class TopazException(BaseLLMException): |
|
pass |
|
|
|
|
|
class TopazModelInfo(BaseLLMModelInfo): |
|
def get_models(self) -> List[str]: |
|
return [ |
|
"topaz/Standard V2", |
|
"topaz/Low Resolution V2", |
|
"topaz/CGI", |
|
"topaz/High Resolution V2", |
|
"topaz/Text Refine", |
|
] |
|
|
|
@staticmethod |
|
def get_api_key(api_key: Optional[str] = None) -> Optional[str]: |
|
return api_key or get_secret_str("TOPAZ_API_KEY") |
|
|
|
@staticmethod |
|
def get_api_base(api_base: Optional[str] = None) -> Optional[str]: |
|
return ( |
|
api_base or get_secret_str("TOPAZ_API_BASE") or "https://api.topazlabs.com" |
|
) |
|
|