- wwwroot/v1/video/generations/index.dspy: video generation endpoint
Required params: model, llmcatelogid, prompt
Supports async task submission via existing inference infrastructure
- wwwroot/v1/image/generations/index.dspy: image generation endpoint
Required params: model, llmcatelogid, prompt
Supports both sync and async models depending on config
Both endpoints follow the same pattern as /v1/chat/completions:
1. Validate required params (model + llmcatelogid + prompt)
2. Look up llm via llm_api_map join with catalog type
3. Check customer balance
4. Route to inference (async/sync based on model config)
- Create llm_catalog_rel model for one-to-many relationship
- Remove llmcatelogid from llm model
- Update SQL queries in utils.py and dspy files to use join
- Add maintenance UI (llm_catalog_rel_manage.ui) and API endpoints
- Filter options by user's orgid