27 lines
1.7 KiB
PL/PgSQL
27 lines
1.7 KiB
PL/PgSQL
BEGIN;
|
|
SET ROLE capability_role;
|
|
|
|
ALTER TABLE capability.cognitive_provider_instances
|
|
ADD COLUMN IF NOT EXISTS billing_mode TEXT NOT NULL DEFAULT 'UNKNOWN',
|
|
ADD COLUMN IF NOT EXISTS input_cost_micros BIGINT,
|
|
ADD COLUMN IF NOT EXISTS output_cost_micros BIGINT,
|
|
ADD COLUMN IF NOT EXISTS request_cost_micros BIGINT;
|
|
ALTER TABLE capability.cognitive_provider_instances
|
|
ADD COLUMN IF NOT EXISTS auth_mode TEXT NOT NULL DEFAULT 'NONE';
|
|
ALTER TABLE capability.cognitive_provider_instances
|
|
DROP CONSTRAINT IF EXISTS cognitive_provider_instances_billing_mode_check,
|
|
ADD CONSTRAINT cognitive_provider_instances_billing_mode_check CHECK (billing_mode IN ('UNKNOWN','FREE','PER_INPUT_UNIT','PER_OUTPUT_UNIT','PER_REQUEST')),
|
|
DROP CONSTRAINT IF EXISTS cognitive_provider_instances_auth_mode_check,
|
|
ADD CONSTRAINT cognitive_provider_instances_auth_mode_check CHECK (auth_mode IN ('NONE','API_KEY','BEARER','USERNAME_PASSWORD','OAUTH','SECRET_FILE')),
|
|
DROP CONSTRAINT IF EXISTS cognitive_provider_instances_cost_check,
|
|
ADD CONSTRAINT cognitive_provider_instances_cost_check CHECK ((input_cost_micros IS NULL OR input_cost_micros >= 0) AND (output_cost_micros IS NULL OR output_cost_micros >= 0) AND (request_cost_micros IS NULL OR request_cost_micros >= 0));
|
|
|
|
ALTER TABLE capability.cognitive_model_descriptors
|
|
ADD COLUMN IF NOT EXISTS intelligence_score_millis BIGINT;
|
|
ALTER TABLE capability.cognitive_model_descriptors
|
|
DROP CONSTRAINT IF EXISTS cognitive_model_descriptors_intelligence_score_check,
|
|
ADD CONSTRAINT cognitive_model_descriptors_intelligence_score_check CHECK (intelligence_score_millis IS NULL OR (intelligence_score_millis >= 0 AND intelligence_score_millis <= 1000));
|
|
|
|
RESET ROLE;
|
|
COMMIT;
|