model-gateway-api / models /__init__.py
autumnssuns's picture
✨ Add Gemma 4 E2B model integration and update service to support multiple models
21bfda5
from typing import Any
from enum import Enum
class Model(Enum):
LLAMA_3_2_3B_INSTRUCT = (
"meta-llama/Llama-3.2-3B-Instruct",
"text-generation",
"local",
4096,
)
GEMMA_4_E2B = ("google/gemma-4-E2B-it", "text-generation", "local", 4096)
def __init__(
self,
model_id: str,
model_type: str,
backend: str,
max_tokens: int,
):
self.model_id = model_id
self.model_type = model_type
self.backend = backend
self.max_tokens = max_tokens
def __str__(self):
return self.model_id
def __repr__(self):
return f"Model(id={self.model_id}, type={self.model_type}, backend={self.backend}, max_tokens={self.max_tokens})"
def to_dict(self) -> dict[str, Any]:
return {
"id": self.model_id,
"type": self.model_type,
"backend": self.backend,
"max_tokens": self.max_tokens,
}
AVAILABLE_MODELS = [model.to_dict() for model in Model]
def get_available_models() -> list[dict[str, Any]]:
return AVAILABLE_MODELS