You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
1.6 KiB
33 lines
1.6 KiB
CREATE TABLE `llm_models` (
|
|
`id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
`provider_id` integer NOT NULL,
|
|
`name` text(200) NOT NULL,
|
|
`model_id` text(200) NOT NULL,
|
|
`type` text DEFAULT 'text' NOT NULL,
|
|
`enabled` integer DEFAULT 1 NOT NULL,
|
|
`description` text,
|
|
`max_tokens` integer,
|
|
`created_at` integer DEFAULT (cast((julianday('now') - 2440587.5)*86400000 as integer)) NOT NULL,
|
|
`updated_at` integer DEFAULT (cast((julianday('now') - 2440587.5)*86400000 as integer)) NOT NULL,
|
|
FOREIGN KEY (`provider_id`) REFERENCES `llm_providers`(`id`) ON UPDATE no action ON DELETE cascade
|
|
);
|
|
--> statement-breakpoint
|
|
CREATE INDEX `idx_llm_model_provider` ON `llm_models` (`provider_id`);--> statement-breakpoint
|
|
CREATE INDEX `idx_llm_model_type` ON `llm_models` (`type`);--> statement-breakpoint
|
|
CREATE TABLE `llm_providers` (
|
|
`id` integer PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
`name` text(100) NOT NULL,
|
|
`slug` text(100) NOT NULL,
|
|
`base_url` text(500),
|
|
`parse_mode` text DEFAULT 'openai' NOT NULL,
|
|
`api_key` text,
|
|
`status` text DEFAULT 'active' NOT NULL,
|
|
`description` text,
|
|
`created_at` integer DEFAULT (cast((julianday('now') - 2440587.5)*86400000 as integer)) NOT NULL,
|
|
`updated_at` integer DEFAULT (cast((julianday('now') - 2440587.5)*86400000 as integer)) NOT NULL
|
|
);
|
|
--> statement-breakpoint
|
|
CREATE UNIQUE INDEX `llm_providers_name_unique` ON `llm_providers` (`name`);--> statement-breakpoint
|
|
CREATE UNIQUE INDEX `llm_providers_slug_unique` ON `llm_providers` (`slug`);--> statement-breakpoint
|
|
CREATE INDEX `idx_llm_provider_slug` ON `llm_providers` (`slug`);--> statement-breakpoint
|
|
CREATE INDEX `idx_llm_provider_status` ON `llm_providers` (`status`);
|