36 lines
1.4 KiB
MySQL
Raw Normal View History

CREATE TABLE IF NOT EXISTS `ChatSession` (
`id` VARCHAR(191) NOT NULL,
`userId` VARCHAR(191) NOT NULL,
`knowledgeBaseId` VARCHAR(191) NOT NULL,
`title` VARCHAR(200) NOT NULL DEFAULT '新对话',
`createdAt` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`updatedAt` DATETIME(3) NOT NULL,
INDEX `ChatSession_userId_idx`(`userId`),
INDEX `ChatSession_knowledgeBaseId_idx`(`knowledgeBaseId`),
PRIMARY KEY (`id`)
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE TABLE IF NOT EXISTS `ChatMessage` (
`id` VARCHAR(191) NOT NULL,
`sessionId` VARCHAR(191) NOT NULL,
`role` VARCHAR(16) NOT NULL,
`content` LONGTEXT NOT NULL,
`tokens` INTEGER NOT NULL DEFAULT 0,
`createdAt` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
INDEX `ChatMessage_sessionId_idx`(`sessionId`),
PRIMARY KEY (`id`)
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE TABLE IF NOT EXISTS `ChatCitation` (
`id` VARCHAR(191) NOT NULL,
`messageId` VARCHAR(191) NOT NULL,
`chunkId` VARCHAR(191) NULL,
`sourceId` VARCHAR(191) NULL,
`sourceTitle` VARCHAR(255) NULL,
`excerptText` VARCHAR(2000) NULL,
`pageNumber` INT NULL,
`createdAt` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
INDEX `ChatCitation_messageId_idx`(`messageId`),
PRIMARY KEY (`id`)
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;