30 lines
960 B
SQL
30 lines
960 B
SQL
-- Create settings table
|
|
CREATE TABLE IF NOT EXISTS system_settings (
|
|
id SERIAL PRIMARY KEY,
|
|
key TEXT NOT NULL,
|
|
value JSONB NOT NULL,
|
|
description TEXT,
|
|
created_at timestamptz NOT NULL DEFAULT NOW(),
|
|
updated_at timestamptz NOT NULL DEFAULT NOW()
|
|
);
|
|
|
|
CREATE UNIQUE INDEX idx_uniq_system_settings_key ON system_settings(key);
|
|
|
|
-- Insert model_setting_mode setting
|
|
-- If there are existing knowledge bases, set mode to 'manual', otherwise set to 'auto'
|
|
INSERT INTO system_settings (key, value, description)
|
|
SELECT
|
|
'model_setting_mode',
|
|
jsonb_build_object(
|
|
'mode', CASE
|
|
WHEN EXISTS (SELECT 1 FROM knowledge_bases LIMIT 1) THEN 'manual'
|
|
ELSE 'auto'
|
|
END,
|
|
'auto_mode_api_key', '',
|
|
'chat_model', '',
|
|
'is_manual_embedding_updated', false
|
|
),
|
|
'Model setting mode configuration'
|
|
WHERE NOT EXISTS (
|
|
SELECT 1 FROM system_settings WHERE key = 'model_setting_mode'
|
|
); |