Commit Graph

152 Commits (3a8ef750687d8d0d4e2575bd16f796b8dfc15cdb)

Author SHA1 Message Date
vladmandic 20e8b8ab18 add upload api endpoint
Signed-off-by: vladmandic <mandic00@live.com>
2026-03-09 16:02:05 +01:00
Vladimir Mandic bd39638df1 fix pydantic 2026-02-20 08:29:52 +01:00
Vladimir Mandic f78f0eb4a5 refactor imports 2026-02-19 15:28:24 +01:00
Vladimir Mandic 4006b3e093 pylint 2026-02-19 11:36:20 +01:00
Vladimir Mandic bfe014f5da modernize typing 2026-02-19 09:15:37 +01:00
Vladimir Mandic 6fdd3a53cf reduce mandatory requirements
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-02-18 17:53:08 +01:00
Vladimir Mandic 41f206dec9
Merge pull request #4637 from CalamitousFelicitousness/refactor/remove-face-restoration
Refactor/remove face restoration
2026-02-11 11:12:34 +01:00
CalamitousFelicitousness 6c20e49897 refactor(caption): extract caption API into standalone module
Move all caption/interrogate/tagger/VQA API code out of the monolithic
endpoints.py and models.py into a new self-contained modules/api/caption.py,
following the loras.py / nudenet.py self-registering pattern.

- Move 15 Pydantic models (ReqCaption, ResCaption, ReqVQA, ResVQA,
  ReqTagger, ResTagger, dispatch union types, etc.) from models.py
- Move 11 handler functions from endpoints.py
- Deduplicate ~150 lines via shared _do_openclip, _do_tagger, _do_vqa
  core functions called by both direct and dispatch endpoints
- Add register_api() that registers all 8 caption routes
- Add promptgen field to ResVLMPrompts (bug fix: handler returned it
  but response model silently dropped it)
- Improve all endpoint docstrings and Field descriptions for API docs
2026-02-11 02:50:06 +00:00
CalamitousFelicitousness bf7a72f12e fix(caption): remove dead min_length param, split Florence/PromptGen prompts, fix gaze detection
- Remove caption_openclip_min_length from settings, API models, endpoints, and UI
  (clip_interrogator library has no min_length support; parameter was never functional)
- Split vlm_prompts_florence into base Florence prompts and PromptGen-only prompts
  (GENERATE_TAGS, Analyze, Mixed Caption require MiaoshouAI PromptGen fine-tune)
- Add 'promptgen' category to /vqa/prompts API endpoint
- Fix gaze detection: move DETECT_GAZE check before generic 'detect ' prefix
  to prevent "Detect Gaze" matching as detect target="Gaze"
- Update test suite: remove min_length tests, fix min_flavors to use mode='best',
  add acceptance-only notes, fix thinking trace detection, improve bracket/OCR tests,
  split Florence/PromptGen test coverage
2026-02-11 02:48:11 +00:00
CalamitousFelicitousness f4b5abde68 refactor: update API for caption module
Update API endpoints and models for caption module rename:
- modules/api/api.py - update imports and endpoint handlers
- modules/api/endpoints.py - update endpoint definitions
- modules/api/models.py - update request/response models
2026-02-11 02:48:11 +00:00
CalamitousFelicitousness 83fa8e39ba refactor(api): update cli tools for DeepBooru tagger migration
- Update cli/api-interrogate.py to use /sdapi/v1/tagger for DeepBooru
- Handle tagger response format (scores dict or tags string)
- Remove DeepBooru test from interrogate endpoint tests
- Update API model descriptions to reference tagger for anime tagging
2026-02-11 02:47:41 +00:00
CalamitousFelicitousness a04ba1e482 feat(api): add missing caption API parameters for UI parity
Add prompt field to VQA endpoint and advanced settings to OpenCLIP endpoint
to achieve full parity between UI and API capabilities.

VLM endpoint changes:
- Add prompt field for custom text input (required for 'Use Prompt' task)
- Pass prompt to vqa.interrogate instead of hardcoded empty string

OpenCLIP endpoint changes:
- Add 7 optional per-request override fields: min_length, max_length,
  chunk_size, min_flavors, max_flavors, flavor_count, num_beams
- Add get_clip_setting() helper for override support in openclip.py
- Apply overrides via update_interrogate_params() before interrogation

All new fields are optional with None defaults for backwards compatibility.
2026-02-11 02:47:40 +00:00
CalamitousFelicitousness 5fc46c042e docs(api): synchronize API descriptions with UI hints
Update API model field descriptions to match the hints in locale_en.json
for consistency between UI and API documentation.

Updated models:
- ReqInterrogate: clip_model, blip_model, mode
- ReqVQA: model, question, system
- ReqTagger: model, threshold, character_threshold, max_tags,
  include_rating, sort_alpha, use_spaces, escape_brackets,
  exclude_tags, show_scores
2026-02-11 02:47:40 +00:00
CalamitousFelicitousness f431141d2f feat(api): add LLM generation parameters to VQA endpoint
Add optional LLM generation parameters to the VQA API request model,
allowing per-request override of settings:

- max_tokens, temperature, top_k, top_p, num_beams, do_sample
- thinking_mode, prefill, keep_thinking, keep_prefill

Changes:
- Add 10 new optional fields to ReqVQA model with descriptive docs
- Update get_kwargs() to support per-request overrides via singleton
- Add helper functions get_keep_thinking(), get_keep_prefill()
- Update post_vqa endpoint to pass generation kwargs
- Add _generation_overrides instance variable to VQA class
2026-02-11 02:47:40 +00:00
CalamitousFelicitousness ec7934799e feat(api): add caption API endpoints and documentation
Add comprehensive caption/interrogate API with documentation:

- GET /sdapi/v1/interrogate: List available interrogation models
- POST /sdapi/v1/interrogate: Interrogate with OpenCLIP/BLIP/DeepDanbooru
- POST /sdapi/v1/vqa: Caption with Vision-Language Models (VLM)
- GET /sdapi/v1/vqa: List available VLM models
- POST /sdapi/v1/vqa/batch: Batch caption multiple images
- POST /sdapi/v1/tagger: Tag images with WaifuDiffusion/DeepBooru

Updates:
- Add detailed docstrings with usage examples
- Fix analyze_image response parsing for Gradio update dicts
- Add request/response models for all endpoints
2026-02-11 02:47:40 +00:00
CalamitousFelicitousness 8d764951cf refactor(api): remove face restoration endpoints and parameters
- Remove /sdapi/v1/face-restorers route from api.py
- Remove get_restorers() function from endpoints.py
- Remove gfpgan_visibility, codeformer_visibility, codeformer_weight
  fields from ReqProcess model
- Remove GFPGAN and CodeFormer entries from run_extras() signature
  and create_args_for_run dict in postprocessing.py
2026-02-08 22:59:28 +00:00
vladmandic d9a2a21c8c add sampler api endpoints
Signed-off-by: vladmandic <mandic00@live.com>
2026-02-04 13:08:31 +01:00
vladmandic 7bd04e0b5c add /detailers api endpoint
Signed-off-by: vladmandic <mandic00@live.com>
2025-12-06 12:33:52 +01:00
vladmandic b5f000ab8a add xyz and script support to control api
Signed-off-by: vladmandic <mandic00@live.com>
2025-11-23 13:07:42 -05:00
Vladimir Mandic 1c5b3a47e2 job history
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-09-12 22:14:07 -04:00
Vladimir Mandic 175e9cbe29 cleanup/refactor state history
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-09-12 16:12:45 -04:00
Disty0 c210c93444 fix agent scheduler with pydantic 2 2025-09-04 23:38:45 +03:00
Vladimir Mandic 72a9094b42 better model version detect and experimental pydantic v2
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-09-04 12:41:40 -04:00
Vladimir Mandic 4b74fd26b5 redesign gpu monitor
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-08-07 13:56:13 -04:00
Vladimir Mandic 7167d9d82a api set default script-name
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-07-31 17:16:47 -04:00
Vladimir Mandic e8b5ea3847 major refactor: remove backend original
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-07-05 13:16:46 -04:00
Vladimir Mandic 7fbac675fe api update default sampler
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-06-28 09:36:33 -04:00
Vladimir Mandic 8473bae0fc 1000 papercuts
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-05-13 21:51:33 -04:00
Vladimir Mandic 47862fef08 prompt enhance nsfw allow/disallow
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-05-12 20:33:16 -04:00
Vladimir Mandic 6489e4c37d prompt-enhance api support and img2img support
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-05-08 15:31:07 -04:00
Jakob L. Kreuze e6be2a6cdc
Add `system` field to `ReqVQA` 2025-05-02 11:13:29 -04:00
Vladimir Mandic 10fb362bdc server state history
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-04-25 12:25:30 -04:00
Vladimir Mandic dbf20d1388 api refactor: force access control and handle subpaths
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-02-14 11:27:21 -05:00
Vladimir Mandic e40b33d237 add vlms: qwen-vl2, smol-vl2, toriigate
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-02-02 17:07:43 -05:00
Vladimir Mandic 9f30abbad5 fix scheduler api
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-01-02 16:45:08 -05:00
Vladimir Mandic 8a1eaedc82 browser to server logging
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2024-11-23 10:47:06 -05:00
Vladimir Mandic 59cd08f5da update docker and progress monitoring
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2024-11-16 10:49:08 -05:00
Vladimir Mandic 4f1c9cf5c7 api validation
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2024-11-14 11:18:24 -05:00
Vladimir Mandic 172693eb99 refactor processing class
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2024-11-11 15:23:11 -05:00
Vladimir Mandic dab2827dab add api override field
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2024-11-08 09:49:46 -05:00
Vladimir Mandic 2e08a26d53 add latent history
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2024-10-08 09:23:16 -04:00
Vladimir Mandic 3bbcc33181 add detailer
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2024-10-07 09:32:56 -04:00
Vladimir Mandic 04a5071249 face-hires -> detailer refactor
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2024-10-06 11:23:33 -04:00
Vladimir Mandic 2427f922ae update changelog 2024-09-04 16:45:44 -04:00
Vladimir Mandic bb7f84b99b better api defaults 2024-08-28 10:58:54 -04:00
Vladimir Mandic 72f6cf6a1f add ms florence 2024-06-23 08:50:08 -04:00
Vladimir Mandic 4122c6fbce fix api ip-adapter 2024-06-18 08:37:14 -04:00
Vladimir Mandic f2610c3936 ip adapter masking 2024-04-18 12:43:51 -04:00
Vladimir Mandic bd7ba768b1 add ip_adapter to api and fix control 2024-03-29 10:26:29 -04:00
Vladimir Mandic 89e9debbcd control api 2024-03-27 11:33:29 -04:00