52 lines
3.4 KiB
PL/PgSQL
52 lines
3.4 KiB
PL/PgSQL
BEGIN;
|
|
SET ROLE capability_role;
|
|
|
|
ALTER TABLE capability.cognitive_provider_instances ALTER COLUMN credential_ref DROP NOT NULL;
|
|
ALTER TABLE capability.cognitive_model_descriptors DROP CONSTRAINT IF EXISTS cognitive_model_descriptors_max_context_bytes_check;
|
|
ALTER TABLE capability.cognitive_model_descriptors ADD CONSTRAINT cognitive_model_descriptors_max_context_bytes_check CHECK (max_context_bytes >= 0);
|
|
|
|
CREATE TABLE IF NOT EXISTS capability.cognitive_provider_health (
|
|
provider_instance_id TEXT PRIMARY KEY, health TEXT NOT NULL, observed_at_unix_millis BIGINT NOT NULL,
|
|
failure_class TEXT NOT NULL DEFAULT '', recorded_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
CHECK (health IN ('UNKNOWN','AVAILABLE','DEGRADED','UNAVAILABLE')), CHECK (observed_at_unix_millis > 0)
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS capability.cognitive_model_availability (
|
|
provider_instance_id TEXT NOT NULL, model_descriptor_id TEXT NOT NULL,
|
|
installed TEXT NOT NULL, loaded TEXT NOT NULL, invokable TEXT NOT NULL, health TEXT NOT NULL,
|
|
observed_at_unix_millis BIGINT NOT NULL, recorded_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
PRIMARY KEY (provider_instance_id, model_descriptor_id),
|
|
CHECK (installed IN ('NOT_OBSERVED','YES','NO')), CHECK (loaded IN ('NOT_OBSERVED','YES','NO')),
|
|
CHECK (invokable IN ('NOT_OBSERVED','YES','NO')), CHECK (health IN ('UNKNOWN','AVAILABLE','DEGRADED','UNAVAILABLE')),
|
|
CHECK (observed_at_unix_millis > 0)
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS capability.cognitive_evaluated_capabilities (
|
|
evaluation_id TEXT PRIMARY KEY, binding_id TEXT NOT NULL, binding_revision BIGINT NOT NULL,
|
|
capability_id TEXT NOT NULL, result TEXT NOT NULL, quality_score_millis BIGINT,
|
|
critical_failure_millis BIGINT, benchmark_version TEXT NOT NULL, artifact_id TEXT NOT NULL,
|
|
observed_at_unix_millis BIGINT NOT NULL, recorded_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
CHECK (binding_revision > 0), CHECK (result IN ('UNKNOWN','SUPPORTED','UNSUPPORTED')),
|
|
CHECK (quality_score_millis IS NULL OR quality_score_millis >= 0),
|
|
CHECK (critical_failure_millis IS NULL OR critical_failure_millis >= 0), CHECK (observed_at_unix_millis > 0)
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS capability.cognitive_performance_evidence (
|
|
evidence_id TEXT PRIMARY KEY, binding_id TEXT NOT NULL, binding_revision BIGINT NOT NULL,
|
|
model_descriptor_id TEXT NOT NULL, model_revision BIGINT NOT NULL, hardware_profile TEXT NOT NULL,
|
|
runtime TEXT NOT NULL, quantization TEXT NOT NULL, context_units BIGINT, thinking_enabled BOOLEAN,
|
|
generation_tps_millis BIGINT, prompt_tps_millis BIGINT, ttft_micros BIGINT, latency_micros BIGINT,
|
|
memory_bytes BIGINT, reliability_millis BIGINT, benchmark_version TEXT NOT NULL, artifact_id TEXT NOT NULL,
|
|
observed_at_unix_millis BIGINT NOT NULL, recorded_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
CHECK (binding_revision > 0), CHECK (model_revision > 0),
|
|
CHECK (context_units IS NULL OR context_units >= 0), CHECK (generation_tps_millis IS NULL OR generation_tps_millis >= 0),
|
|
CHECK (prompt_tps_millis IS NULL OR prompt_tps_millis >= 0), CHECK (ttft_micros IS NULL OR ttft_micros >= 0),
|
|
CHECK (latency_micros IS NULL OR latency_micros >= 0), CHECK (memory_bytes IS NULL OR memory_bytes >= 0),
|
|
CHECK (reliability_millis IS NULL OR reliability_millis >= 0), CHECK (observed_at_unix_millis > 0)
|
|
);
|
|
|
|
ALTER TABLE capability.cognitive_usage_observations ADD COLUMN IF NOT EXISTS failure_type TEXT NOT NULL DEFAULT '';
|
|
|
|
RESET ROLE;
|
|
COMMIT;
|