Coverage for packages/server/src/langgate/server/api/api_v1/endpoints/models_ep.py: 79%
19 statements
« prev ^ index » next coverage.py v7.7.1, created at 2025-08-02 18:47 +0000
« prev ^ index » next coverage.py v7.7.1, created at 2025-08-02 18:47 +0000
1from fastapi import APIRouter
3from langgate.core.logging import get_logger
4from langgate.registry.models import ImageModelInfo, LLMInfo
5from langgate.server.api.services.registry_api import ModelRegistryAPI
7logger = get_logger(__name__)
8router = APIRouter()
9registry_service = ModelRegistryAPI()
12# LLM endpoints
13@router.get("/llms", response_model=list[LLMInfo])
14async def list_llms():
15 return await registry_service.list_llms()
18@router.get("/llms/{model_id:path}", response_model=LLMInfo)
19async def get_llm_info(
20 *,
21 model_id: str,
22):
23 return await registry_service.get_llm_info(model_id)
26# Image model endpoints
27@router.get("/images", response_model=list[ImageModelInfo])
28async def list_image_models():
29 return await registry_service.list_image_models()
32@router.get("/images/{model_id:path}", response_model=ImageModelInfo)
33async def get_image_model_info(
34 *,
35 model_id: str,
36):
37 return await registry_service.get_image_model_info(model_id)