API: Add preset listing for sampler overrides

Querying the overrides list endpoint now returns the selected preset
and a list of presets to use.

Signed-off-by: kingbri <bdashore3@proton.me>
This commit is contained in:
kingbri
2024-05-12 01:34:51 -04:00
parent b4bc941cbe
commit 6f4012d20d
3 changed files with 35 additions and 9 deletions

View File

@@ -32,7 +32,10 @@ from endpoints.OAI.types.model import (
ModelLoadRequest,
ModelCardParameters,
)
from endpoints.OAI.types.sampler_overrides import SamplerOverrideSwitchRequest
from endpoints.OAI.types.sampler_overrides import (
SamplerOverrideListResponse,
SamplerOverrideSwitchRequest,
)
from endpoints.OAI.types.template import TemplateList, TemplateSwitchRequest
from endpoints.OAI.types.token import (
TokenEncodeRequest,
@@ -248,7 +251,9 @@ async def unload_template():
async def list_sampler_overrides():
"""API wrapper to list all currently applied sampler overrides"""
return sampling.overrides
return SamplerOverrideListResponse(
presets=sampling.get_all_presets(), **sampling.overrides_container.model_dump()
)
@router.post(

View File

@@ -1,5 +1,13 @@
from pydantic import BaseModel, Field
from typing import Optional
from typing import List, Optional
from common.sampling import SamplerOverridesContainer
class SamplerOverrideListResponse(SamplerOverridesContainer):
"""Sampler override list response"""
presets: Optional[List[str]]
class SamplerOverrideSwitchRequest(BaseModel):