Implement Self-hosted models contingency navigation
What does this MR do and why?
This MR implements solution 1 of the contingency plans as outlined in the figma below.
The page was originally going to to appear in the unified Duo page which is currently being built in parallel. The page won't be completed in time for the 17.5 release, hence why we've pivoted to the solution implemented in this MR.
What does this MR do?
- Connects the
SelfHostedDuoConfiguration
component added here - Updates the admin navigation menu
See UX Issue for details
MR acceptance checklist
Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Screenshots or screen recordings
Admin menu
Before | After |
---|---|
Self-hosted Models
Before | After |
---|---|
AI Feature Settings
Before | After |
---|---|
Screen recording Screen_Recording_2024-10-09_at_4.19.24_PM
How to set up and validate locally
Prequisites
You will need an active GitLab ultimate license.
- Start GDK instance in self-managed mode:
GITLAB_SIMULATE_SAAS=0 && gdk start
- In the rails console, enable Code Suggestions and the custom models experiment:
Feature.enable(:ai_custom_model)
Feature.enable(:custom_models_vue_app)
Feature.enable(:custom_models_feature_settings_vue_app)
ApplicationSetting.first.update(duo_features_enabled: true)
Test it!
- Log in as an admin
- Visit the page Admin Area > Self-hosted models
- Self-hosted models tab
- You should be able to add/edit/delete self-hosted models
- AI feature settings tab
- You should be able to update AI features
Related to #493581 (closed)