Coverage for src/fastoai/routers/models.py: 80%

15 statements  

« prev     ^ index     » next       coverage.py v7.6.8, created at 2024-12-06 09:34 +0800

1from fastapi import APIRouter 

2from openai.pagination import AsyncPage 

3from openai.types import Model 

4from openai.types.model_deleted import ModelDeleted 

5 

6from ..dependencies import OpenAIDependency 

7 

8router = APIRouter(tags=["Models"]) 

9 

10 

11@router.get("/models", response_model=AsyncPage[Model]) 

12async def get_models(*, openai: OpenAIDependency): 

13 return await openai.models.list() 

14 

15 

16@router.get("/models/{model:path}", response_model=Model) 

17async def retrieve_model(*, model: str, openai: OpenAIDependency) -> Model: 

18 return await openai.models.retrieve(model) 

19 

20 

21@router.delete("/models/{model:path}", response_model=ModelDeleted) 

22async def delete_model(*, model: str, openai: OpenAIDependency) -> ModelDeleted: 

23 return await openai.models.delete(model)