Skip to content

OpenAIAPIKey

fastagency.studio.models.llms.openai.OpenAIAPIKey #

Bases: Model

api_key instance-attribute #

api_key: str

name instance-attribute #

name: str

create_autogen async classmethod #

create_autogen(
    model_id: UUID, user_id: UUID, **kwargs: Any
) -> str
Source code in fastagency/studio/models/llms/openai.py
@classmethod
async def create_autogen(cls, model_id: UUID, user_id: UUID, **kwargs: Any) -> str:
    my_model: OpenAIAPIKey = await cls.from_db(model_id)

    return my_model.api_key

from_db async classmethod #

from_db(model_id: UUID) -> T
Source code in fastagency/studio/models/base.py
@classmethod
async def from_db(cls: type[T], model_id: UUID) -> T:
    my_model_dict = await DefaultDB.backend().find_model(model_id)
    my_model = cls(**my_model_dict["json_str"])

    return my_model

get_reference_model classmethod #

get_reference_model() -> Type[ObjectReference]
Source code in fastagency/studio/models/base.py
@classmethod
def get_reference_model(cls) -> "Type[ObjectReference]":
    if cls._reference_model is None:
        raise ValueError("reference model not set")
    return cls._reference_model

validate_api_key classmethod #

validate_api_key(value: Any) -> Any
Source code in fastagency/studio/models/llms/openai.py
@field_validator("api_key")
@classmethod
def validate_api_key(cls: type["OpenAIAPIKey"], value: Any) -> Any:
    if not re.match(
        r"^(sk-(proj-|None-|svcacct-)[A-Za-z0-9_-]+|sk-[a-zA-Z0-9]{20}T3BlbkFJ[a-zA-Z0-9]{20})$",
        value,
    ):
        raise ValueError("Invalid OpenAI API Key")
    return value