references
read_reference_route_subpath
module-attribute
/model_categories
get_reference_by_category_route_subpath
module-attribute
/{model_category_name}
single_model_route_subpath
module-attribute
/{model_category_name}/{model_name}
create_model_image_generation_route_subpath
module-attribute
/image_generation/create_model
create_model_text_generation_route_subpath
module-attribute
/text_generation/create_model
create_model_controlnet_route_subpath
module-attribute
/controlnet/create_model
add_model_route_subpath
module-attribute
/{model_category_name}/add
update_model_image_generation_route_subpath
module-attribute
update_model_image_generation_route_subpath = (
f"/{image_generation}/update_model/{{model_name}}"
)
/image_generation/update_model/{model_name}
update_model_text_generation_route_subpath
module-attribute
/text_generation/update_model/{model_name}
update_model_controlnet_route_subpath
module-attribute
/controlnet/update_model/{model_name}
update_model_route_subpath
module-attribute
/{model_category_name}/{model_name}
delete_model_route_subpath
module-attribute
/{model_category_name}/{model_name}
_check_model_exists
_check_model_exists(
manager: ModelReferenceManager,
category: MODEL_REFERENCE_CATEGORY,
model_name: str,
) -> bool
Check if a model exists in the given category.
Source code in src/horde_model_reference/service/v2/routers/references.py
_model_payload
_enqueue_pending_change
_enqueue_pending_change(
*,
queue_service: PendingQueueService,
category: MODEL_REFERENCE_CATEGORY,
model_name: str,
operation: AuditOperation,
payload: dict[str, Any] | None,
requestor_id: str,
requestor_username: str,
request_metadata: dict[str, Any] | None = None,
related_models: list[str] | None = None,
) -> PendingChangeRecord
Source code in src/horde_model_reference/service/v2/routers/references.py
_queue_response
_preserve_created_metadata
_preserve_created_metadata(
manager: ModelReferenceManager,
category: MODEL_REFERENCE_CATEGORY,
model_name: str,
model_record: ModelRecordUnionType,
) -> ModelRecordUnionType
Copy created_* metadata fields from the stored record into the new payload.
Source code in src/horde_model_reference/service/v2/routers/references.py
_queue_change
_queue_change(
*,
manager: ModelReferenceManager,
category: MODEL_REFERENCE_CATEGORY,
model_name: str,
operation: AuditOperation,
payload: dict[str, Any] | None,
requestor_id: str,
requestor_username: str,
request_metadata: dict[str, Any],
related_models: list[str] | None = None,
) -> PendingChangeRecord
Source code in src/horde_model_reference/service/v2/routers/references.py
_queue_model_record_request
async
_queue_model_record_request(
*,
manager: ModelReferenceManager,
category: MODEL_REFERENCE_CATEGORY,
model_record: ModelRecordUnionType,
apikey: str,
operation: AuditOperation,
route_name: str,
) -> JSONResponse
Source code in src/horde_model_reference/service/v2/routers/references.py
_queue_delete_request
async
_queue_delete_request(
*,
manager: ModelReferenceManager,
category: MODEL_REFERENCE_CATEGORY,
model_name: str,
apikey: str,
route_name: str,
) -> JSONResponse
Source code in src/horde_model_reference/service/v2/routers/references.py
read_v2_reference_info
async
Get information about the v2 model reference API.
This is the v2 model reference API, which uses the new format established by horde_model_reference.
Source code in src/horde_model_reference/service/v2/routers/references.py
read_v2_reference_names
async
read_v2_reference_names(
manager: Annotated[
ModelReferenceManager,
Depends(get_model_reference_manager),
],
) -> list[MODEL_REFERENCE_CATEGORY]
Get all available v2 model reference category names.
Returns a list of all model categories that have v2 format references available.
Source code in src/horde_model_reference/service/v2/routers/references.py
read_v2_reference
async
read_v2_reference(
model_category_name: MODEL_REFERENCE_CATEGORY,
manager: Annotated[
ModelReferenceManager,
Depends(get_model_reference_manager),
],
) -> JSONResponse
Get all models in a specific v2 model reference category.
Returns the complete v2 format JSON for the requested category.
Source code in src/horde_model_reference/service/v2/routers/references.py
read_v2_single_model
async
read_v2_single_model(
model_category_name: MODEL_REFERENCE_CATEGORY,
model_name: str,
manager: Annotated[
ModelReferenceManager,
Depends(get_model_reference_manager),
],
) -> JSONResponse
Get a specific model by category and name.
Parameters:
-
model_category_name(MODEL_REFERENCE_CATEGORY) –The model reference category (e.g., image_generation).
-
model_name(str) –The name of the model within the category.
-
manager(Annotated[ModelReferenceManager, Depends(get_model_reference_manager)]) –The model reference manager dependency.
Returns:
-
JSONResponse(JSONResponse) –The model record data.
Raises:
-
HTTPException–404 if category or model not found.
Source code in src/horde_model_reference/service/v2/routers/references.py
create_v2_image_generation_model
async
create_v2_image_generation_model(
new_model_record: ImageGenerationModelRecord,
manager: Annotated[
ModelReferenceManager,
Depends(get_model_reference_manager),
],
apikey: Annotated[str, Depends(header_auth_scheme)],
) -> JSONResponse
Create a new image generation model in v2 format.
⚠️ This endpoint is only available when canonical_format='v2' in PRIMARY mode.
The model name in the request body must not already exist in the image generation category.
Source code in src/horde_model_reference/service/v2/routers/references.py
create_v2_text_generation_model
async
create_v2_text_generation_model(
new_model_record: TextGenerationModelRecord,
manager: Annotated[
ModelReferenceManager,
Depends(get_model_reference_manager),
],
apikey: Annotated[str, Depends(header_auth_scheme)],
) -> JSONResponse
Create a new text generation model in v2 format.
⚠️ This endpoint is only available when canonical_format='v2' in PRIMARY mode.
The model name in the request body must not already exist in the text generation category.
Source code in src/horde_model_reference/service/v2/routers/references.py
create_v2_controlnet_model
async
create_v2_controlnet_model(
new_model_record: ControlNetModelRecord,
manager: Annotated[
ModelReferenceManager,
Depends(get_model_reference_manager),
],
apikey: Annotated[str, Depends(header_auth_scheme)],
) -> JSONResponse
Create a new ControlNet model in v2 format.
⚠️ This endpoint is only available when canonical_format='v2' in PRIMARY mode.
The model name in the request body must not already exist in the ControlNet category.
Source code in src/horde_model_reference/service/v2/routers/references.py
create_v2_model
async
create_v2_model(
model_category_name: MODEL_REFERENCE_CATEGORY,
new_model_record: ModelRecordUnion,
manager: Annotated[
ModelReferenceManager,
Depends(get_model_reference_manager),
],
apikey: Annotated[str, Depends(header_auth_scheme)],
) -> JSONResponse
Create a new model in the specified category.
⚠️ This endpoint is only available when canonical_format='v2' in PRIMARY mode.
The model name in the request body must not already exist in the specified category.
Source code in src/horde_model_reference/service/v2/routers/references.py
update_v2_image_generation_model
async
update_v2_image_generation_model(
model_name: str,
new_model_record: ImageGenerationModelRecord,
manager: Annotated[
ModelReferenceManager,
Depends(get_model_reference_manager),
],
apikey: Annotated[str, Depends(header_auth_scheme)],
) -> JSONResponse
Update an existing image generation model in v2 format.
⚠️ This endpoint is only available when canonical_format='v2' in PRIMARY mode.
The model must already exist in the image generation category. Use POST to create new models.
Source code in src/horde_model_reference/service/v2/routers/references.py
update_v2_text_generation_model
async
update_v2_text_generation_model(
model_name: str,
new_model_record: TextGenerationModelRecord,
manager: Annotated[
ModelReferenceManager,
Depends(get_model_reference_manager),
],
apikey: Annotated[str, Depends(header_auth_scheme)],
) -> JSONResponse
Update an existing text generation model in v2 format.
⚠️ This endpoint is only available when canonical_format='v2' in PRIMARY mode.
The model must already exist in the text generation category. Use POST to create new models.
Source code in src/horde_model_reference/service/v2/routers/references.py
update_v2_controlnet_model
async
update_v2_controlnet_model(
model_name: str,
new_model_record: ControlNetModelRecord,
manager: Annotated[
ModelReferenceManager,
Depends(get_model_reference_manager),
],
apikey: Annotated[str, Depends(header_auth_scheme)],
) -> JSONResponse
Update an existing ControlNet model in v2 format.
⚠️ This endpoint is only available when canonical_format='v2' in PRIMARY mode.
The model must already exist in the ControlNet category. Use POST to create new models.
Source code in src/horde_model_reference/service/v2/routers/references.py
update_v2_model
async
update_v2_model(
model_category_name: MODEL_REFERENCE_CATEGORY,
model_name: str,
new_model_record: ModelRecordUnion,
manager: Annotated[
ModelReferenceManager,
Depends(get_model_reference_manager),
],
apikey: Annotated[str, Depends(header_auth_scheme)],
) -> JSONResponse
Update an existing model in v2 format.
⚠️ This endpoint is only available when canonical_format='v2' in PRIMARY mode.
The model must already exist in the specified category. Use POST to create new models.
- Preserves original
created_atandcreated_bymetadata - Updates
updated_attimestamp
Source code in src/horde_model_reference/service/v2/routers/references.py
980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 | |
delete_v2_model
async
delete_v2_model(
model_category_name: MODEL_REFERENCE_CATEGORY,
model_name: str,
manager: Annotated[
ModelReferenceManager,
Depends(get_model_reference_manager),
],
apikey: Annotated[str, Depends(header_auth_scheme)],
) -> JSONResponse
Queue deletion of a model from a v2 model reference category.