This commit introduces the initial Agent Creation Playground feature and ensures it supports all model types available in Open WebUI, not just Ollama models.
Key changes include:
Frontend:
- Created a new Agent Creation form at `/agents/create`.
- Added a link to the playground in the sidebar (admin only).
- The form now fetches and displays all available models from the `/api/models` endpoint.
- Updated UI to correctly handle generalized model IDs.
Backend:
- Modified the `Agent` model to store a generic `model_id` (foreign key to the `models` table) instead of a specific `llm_model`.
- Updated API endpoints and Pydantic schemas accordingly.
- Created database migrations to reflect schema changes.
- Verified that the existing `/api/models` endpoint can be used to list all models for the creation form.
Testing:
- Added Cypress E2E tests for the agent creation form.
- Tests verify that different model types can be selected and that the correct `model_id` and other agent details are submitted to the backend.
This provides a foundation for you to define agents using any model integrated with your Open WebUI instance.