mirror of
https://github.com/invoke-ai/InvokeAI
synced 2024-08-30 20:32:17 +00:00
Added full-version endpoint (#5206)
* Added get_app_deps endpoint * Use importlib.version & added deps
This commit is contained in:
parent
d0464a5793
commit
4fc2ed7195
@ -1,7 +1,11 @@
|
|||||||
import typing
|
import typing
|
||||||
from enum import Enum
|
from enum import Enum
|
||||||
|
from importlib.metadata import PackageNotFoundError, version
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
from platform import python_version
|
||||||
|
from typing import Optional
|
||||||
|
|
||||||
|
import torch
|
||||||
from fastapi import Body
|
from fastapi import Body
|
||||||
from fastapi.routing import APIRouter
|
from fastapi.routing import APIRouter
|
||||||
from pydantic import BaseModel, Field
|
from pydantic import BaseModel, Field
|
||||||
@ -40,6 +44,24 @@ class AppVersion(BaseModel):
|
|||||||
version: str = Field(description="App version")
|
version: str = Field(description="App version")
|
||||||
|
|
||||||
|
|
||||||
|
class AppDependencyVersions(BaseModel):
|
||||||
|
"""App depencency Versions Response"""
|
||||||
|
|
||||||
|
accelerate: str = Field(description="accelerate version")
|
||||||
|
compel: str = Field(description="compel version")
|
||||||
|
cuda: Optional[str] = Field(description="CUDA version")
|
||||||
|
diffusers: str = Field(description="diffusers version")
|
||||||
|
numpy: str = Field(description="Numpy version")
|
||||||
|
opencv: str = Field(description="OpenCV version")
|
||||||
|
onnx: str = Field(description="ONNX version")
|
||||||
|
pillow: str = Field(description="Pillow (PIL) version")
|
||||||
|
python: str = Field(description="Python version")
|
||||||
|
torch: str = Field(description="PyTorch version")
|
||||||
|
torchvision: str = Field(description="PyTorch Vision version")
|
||||||
|
transformers: str = Field(description="transformers version")
|
||||||
|
xformers: Optional[str] = Field(description="xformers version")
|
||||||
|
|
||||||
|
|
||||||
class AppConfig(BaseModel):
|
class AppConfig(BaseModel):
|
||||||
"""App Config Response"""
|
"""App Config Response"""
|
||||||
|
|
||||||
@ -54,6 +76,29 @@ async def get_version() -> AppVersion:
|
|||||||
return AppVersion(version=__version__)
|
return AppVersion(version=__version__)
|
||||||
|
|
||||||
|
|
||||||
|
@app_router.get("/app_deps", operation_id="get_app_deps", status_code=200, response_model=AppDependencyVersions)
|
||||||
|
async def get_app_deps() -> AppDependencyVersions:
|
||||||
|
try:
|
||||||
|
xformers = version("xformers")
|
||||||
|
except PackageNotFoundError:
|
||||||
|
xformers = None
|
||||||
|
return AppDependencyVersions(
|
||||||
|
accelerate=version("accelerate"),
|
||||||
|
compel=version("compel"),
|
||||||
|
cuda=torch.version.cuda,
|
||||||
|
diffusers=version("diffusers"),
|
||||||
|
numpy=version("numpy"),
|
||||||
|
opencv=version("opencv-python"),
|
||||||
|
onnx=version("onnx"),
|
||||||
|
pillow=version("pillow"),
|
||||||
|
python=python_version(),
|
||||||
|
torch=torch.version.__version__,
|
||||||
|
torchvision=version("torchvision"),
|
||||||
|
transformers=version("transformers"),
|
||||||
|
xformers=xformers,
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
@app_router.get("/config", operation_id="get_config", status_code=200, response_model=AppConfig)
|
@app_router.get("/config", operation_id="get_config", status_code=200, response_model=AppConfig)
|
||||||
async def get_config() -> AppConfig:
|
async def get_config() -> AppConfig:
|
||||||
infill_methods = ["tile", "lama", "cv2"]
|
infill_methods = ["tile", "lama", "cv2"]
|
||||||
|
Loading…
Reference in New Issue
Block a user