Files
windmill/backend/migrations/20250319121050_multiple_ai_providers.down.sql
HugoCasa 234b20f8bd feat: autocomplete v2 + AI chat (#5323)
* feat: autocomplete v2

* wip chat

* wip

* feat: chat ai review and apply

* feat: multiple providers

* update cli gen

* fixes

* improvements

* fix build

* fix issues

* fix build

* final nits

* nits

* nits
2025-03-25 19:53:48 +01:00

25 lines
1.0 KiB
SQL

ALTER TABLE workspace_settings RENAME COLUMN ai_config TO ai_resource;
ALTER TABLE workspace_settings
ADD COLUMN ai_models VARCHAR(255)[] NOT NULL DEFAULT '{}',
ADD COLUMN code_completion_model VARCHAR(255);
UPDATE workspace_settings
SET ai_resource = CASE
WHEN ai_resource IS NULL THEN NULL
ELSE jsonb_build_object(
'provider',
COALESCE((SELECT jsonb_object_keys(COALESCE(ai_resource->>'providers', '{}')::jsonb) LIMIT 1), 'openai'), -- Get the first provider key
'path',
ai_resource->'providers'->(SELECT jsonb_object_keys(COALESCE(ai_resource->>'providers', '{}')::jsonb) LIMIT 1)->>'resource_path'
)
END,
ai_models = COALESCE((
SELECT array_agg(model)
FROM jsonb_array_elements_text(
COALESCE(ai_resource->'providers'->(SELECT jsonb_object_keys(COALESCE(ai_resource->>'providers', '{}')::jsonb) LIMIT 1)->>'models', '[]')::jsonb
) model
WHERE model IS NOT NULL
), '{}'),
code_completion_model = ai_resource->'code_completion_model'->>'model';