refactor: V3 版本重构已基本完成

This commit is contained in:
RockYang
2023-06-15 09:41:30 +08:00
parent b4569d7fe2
commit 01d61ab19b
99 changed files with 5209 additions and 5752 deletions

458
database/chatgpt_plus.sql Normal file
View File

@@ -0,0 +1,458 @@
-- phpMyAdmin SQL Dump
-- version 5.1.3
-- https://www.phpmyadmin.net/
--
-- 主机: localhost
-- 生成日期: 2023-06-15 09:27:54
-- 服务器版本: 8.0.33-0ubuntu0.22.04.2
-- PHP 版本: 8.1.18
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
START TRANSACTION;
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;
--
-- 数据库: `chatgpt_plus`
--
CREATE DATABASE IF NOT EXISTS `chatgpt_plus` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
USE `chatgpt_plus`;
-- --------------------------------------------------------
--
-- 表的结构 `chatgpt_api_keys`
--
DROP TABLE IF EXISTS `chatgpt_api_keys`;
CREATE TABLE `chatgpt_api_keys` (
`id` int NOT NULL,
`value` varchar(100) NOT NULL COMMENT 'API KEY value',
`user_id` int NOT NULL COMMENT '用户 ID',
`last_used_at` int NOT NULL COMMENT '最后使用时间',
`created_at` datetime NOT NULL,
`updated_at` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='OpenAI API ';
-- --------------------------------------------------------
--
-- 表的结构 `chatgpt_chat_history`
--
DROP TABLE IF EXISTS `chatgpt_chat_history`;
CREATE TABLE `chatgpt_chat_history` (
`id` bigint NOT NULL,
`user_id` int NOT NULL COMMENT '用户 ID',
`chat_id` char(40) NOT NULL COMMENT '会话 ID',
`type` varchar(10) NOT NULL COMMENT '类型prompt|reply',
`icon` varchar(100) NOT NULL COMMENT '角色图标',
`role_id` int NOT NULL COMMENT '角色 ID',
`content` text NOT NULL COMMENT '聊天内容',
`tokens` smallint NOT NULL COMMENT '耗费 token 数量',
`created_at` datetime NOT NULL,
`updated_at` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='聊天历史记录';
--
-- 转存表中的数据 `chatgpt_chat_history`
--
INSERT INTO `chatgpt_chat_history` (`id`, `user_id`, `chat_id`, `type`, `icon`, `role_id`, `content`, `tokens`, `created_at`, `updated_at`) VALUES
(1, 4, 'ecb752e8-86ae-4989-897e-5b7ed331cb68', 'prompt', 'images/avatar/user.png', 24, '请写一段代码实现生成 Excel 文档', 12, '2023-06-12 15:51:10', '2023-06-12 15:51:10'),
(2, 4, 'ecb752e8-86ae-4989-897e-5b7ed331cb68', 'reply', 'images/avatar/programmer.jpg', 24, '好的,以下是使用 Golang 实现生成 Excel 文档的示例代码:\n\n```go\npackage main\n\nimport (\n \"fmt\"\n \"github.com/360EntSecGroup-Skylar/excelize\"\n)\n\nfunc main() {\n // 创建一个新的 Excel 文档\n f := excelize.NewFile()\n\n // 创建一个新的工作表\n index := f.NewSheet(\"Sheet1\")\n\n // 设置表头\n f.SetCellValue(\"Sheet1\", \"A1\", \"姓名\")\n f.SetCellValue(\"Sheet1\", \"B1\", \"年龄\")\n f.SetCellValue(\"Sheet1\", \"C1\", \"性别\")\n\n // 填充数据\n f.SetCellValue(\"Sheet1\", \"A2\", \"小明\")\n f.SetCellValue(\"Sheet1\", \"B2\", 18)\n f.SetCellValue(\"Sheet1\", \"C2\", \"男\")\n\n f.SetCellValue(\"Sheet1\", \"A3\", \"小红\")\n f.SetCellValue(\"Sheet1\", \"B3\", 20)\n f.SetCellValue(\"Sheet1\", \"C3\", \"女\")\n\n // 设置活动工作表\n f.SetActiveSheet(index)\n\n // 保存 Excel 文档\n if err := f.SaveAs(\"example.xlsx\"); err != nil {\n fmt.Println(err)\n }\n}\n```\n\n以上代码首先使用 excelize 包创建一个新的 Excel 文档,并创建一个名为 \"Sheet1\" 的工作表。然后使用 `SetCellValue` 函数设置表头和数据。最后将 \"Sheet1\" 工作表设置为活动工作表,并使用 `SaveAs` 函数将 Excel 文档保存到本地。', 12, '2023-06-12 15:51:10', '2023-06-12 15:51:10'),
(3, 4, 'ecb752e8-86ae-4989-897e-5b7ed331cb68', 'prompt', 'images/avatar/user.png', 24, '生成二维码', 5, '2023-06-12 17:05:10', '2023-06-12 17:05:10'),
(4, 4, 'ecb752e8-86ae-4989-897e-5b7ed331cb68', 'reply', 'images/avatar/programmer.jpg', 24, '好的,生成二维码这个需求可以使用 Go 语言的第三方库来实现。下面是一个简单的示例,使用 go-qrcode 生成一个包含字符串信息的二维码:\n\n```go\npackage main\n\nimport (\n \"bufio\"\n \"fmt\"\n \"os\"\n\n qrcode \"github.com/skip2/go-qrcode\"\n)\n\nfunc main() {\n reader := bufio.NewReader(os.Stdin)\n fmt.Print(\"请输入要生成二维码的信息:\")\n text, _ := reader.ReadString(\'\\n\')\n\n qr, _ := qrcode.New(text, qrcode.Medium)\n qr.WriteFile(256, \"qrcode.png\")\n fmt.Println(\"二维码已生成,请查看当前目录下的 qrcode.png 文件。\")\n}\n```\n\n在这个示例中我们使用了 go-qrcode 这个第三方库来生成二维码。首先,我们通过标准输入获取用户输入的字符串信息,然后调用 New 函数创建一个二维码实例,使用 qr.WriteFile 保存为 PNG 格式的图片文件。最后,程序会输出一条提示信息,告知用户二维码生成成功。\n\n当然这个示例只是一个简单的演示实际应用中可能需要考虑更多的需求比如二维码的尺寸、颜色、背景等但基本的思路是相似的。', 5, '2023-06-12 17:05:10', '2023-06-12 17:05:10'),
(5, 4, 'f7aa0fa1-4cc5-4212-b823-eb5b88844c31', 'prompt', 'images/avatar/user.png', 27, '你好', 2, '2023-06-12 18:32:05', '2023-06-12 18:32:05'),
(6, 4, 'f7aa0fa1-4cc5-4212-b823-eb5b88844c31', 'reply', 'images/avatar/psychiatrist.jpg', 27, '你好,有什么我能帮助你的吗?', 2, '2023-06-12 18:32:05', '2023-06-12 18:32:05'),
(7, 4, 'ea9d399a-6e62-4bf6-a0c0-c73faa8dcace', 'prompt', 'images/avatar/user.png', 1, 'sdasd', 2, '2023-06-13 09:12:04', '2023-06-13 09:12:04'),
(8, 4, 'ea9d399a-6e62-4bf6-a0c0-c73faa8dcace', 'reply', 'images/avatar/gpt.png', 1, 'I\'m sorry, I do not understand what you are trying to convey. Please provide more context.', 2, '2023-06-13 09:12:04', '2023-06-13 09:12:04'),
(9, 4, 'f7aa0fa1-4cc5-4212-b823-eb5b88844c31', 'prompt', 'images/avatar/user.png', 27, '', 11, '2023-06-13 09:35:02', '2023-06-13 09:35:02'),
(10, 4, 'f7aa0fa1-4cc5-4212-b823-eb5b88844c31', 'reply', 'images/avatar/psychiatrist.jpg', 27, '使', 11, '2023-06-13 09:35:02', '2023-06-13 09:35:02'),
(11, 4, 'f7aa0fa1-4cc5-4212-b823-eb5b88844c31', 'prompt', 'images/avatar/user.png', 27, '', 20, '2023-06-13 09:36:16', '2023-06-13 09:36:16'),
(12, 4, 'f7aa0fa1-4cc5-4212-b823-eb5b88844c31', 'reply', 'images/avatar/psychiatrist.jpg', 27, '\n\n认知重构法通过帮助客户辨认和纠正这些消极的认知偏差和自我评价\n\n1. \n\n2. \n\n3. \n\n4. \n\n这种方法可以帮助客户更好地理解和管理自己的思想和情感反应', 20, '2023-06-13 09:36:16', '2023-06-13 09:36:16'),
(13, 4, '89f4d526-fda1-401e-a946-cd3b1bc30cf2', 'prompt', 'images/avatar/user.png', 28, '', 16, '2023-06-13 10:00:21', '2023-06-13 10:00:21'),
(14, 4, '89f4d526-fda1-401e-a946-cd3b1bc30cf2', 'reply', 'images/avatar/lu_xun.jpg', 28, '', 127, '2023-06-13 10:00:22', '2023-06-13 10:00:22'),
(15, 4, '89f4d526-fda1-401e-a946-cd3b1bc30cf2', 'prompt', 'images/avatar/user.png', 28, '', 25, '2023-06-13 11:05:31', '2023-06-13 11:05:31'),
(16, 4, '89f4d526-fda1-401e-a946-cd3b1bc30cf2', 'reply', 'images/avatar/lu_xun.jpg', 28, '', 90, '2023-06-13 11:05:32', '2023-06-13 11:05:32'),
(17, 4, '89f4d526-fda1-401e-a946-cd3b1bc30cf2', 'prompt', 'images/avatar/user.png', 28, '', 14, '2023-06-13 11:06:06', '2023-06-13 11:06:06'),
(18, 4, '89f4d526-fda1-401e-a946-cd3b1bc30cf2', 'reply', 'images/avatar/lu_xun.jpg', 28, '1920', 214, '2023-06-13 11:06:08', '2023-06-13 11:06:08'),
(19, 4, 'ea9d399a-6e62-4bf6-a0c0-c73faa8dcace', 'prompt', 'images/avatar/user.png', 1, 'hello', 1, '2023-06-13 11:28:28', '2023-06-13 11:28:28'),
(20, 4, 'ea9d399a-6e62-4bf6-a0c0-c73faa8dcace', 'reply', 'images/avatar/gpt.png', 1, 'Hello! How may I assist you today?', 9, '2023-06-13 11:28:29', '2023-06-13 11:28:29'),
(21, 4, 'ea9d399a-6e62-4bf6-a0c0-c73faa8dcace', 'prompt', 'images/avatar/user.png', 1, 'hello', 1, '2023-06-13 11:29:31', '2023-06-13 11:29:31'),
(22, 4, 'ea9d399a-6e62-4bf6-a0c0-c73faa8dcace', 'reply', 'images/avatar/gpt.png', 1, 'Hi there! Is there anything I can help you with today?', 13, '2023-06-13 11:29:32', '2023-06-13 11:29:32'),
(23, 4, '43937f77-28b0-438a-843b-04ab5cc072a4', 'prompt', 'images/avatar/user.png', 1, 'hello', 1, '2023-06-13 11:35:48', '2023-06-13 11:35:48'),
(24, 4, '43937f77-28b0-438a-843b-04ab5cc072a4', 'reply', 'images/avatar/gpt.png', 1, 'Hello! How can I assist you today?', 9, '2023-06-13 11:35:51', '2023-06-13 11:35:51'),
(25, 4, '4385db19-bb73-4b09-a01e-d06c3645b77a', 'prompt', 'images/avatar/user.png', 1, 'hello', 1, '2023-06-13 11:38:21', '2023-06-13 11:38:21'),
(26, 4, '4385db19-bb73-4b09-a01e-d06c3645b77a', 'reply', 'images/avatar/gpt.png', 1, 'Hello! How can I assist you today?', 9, '2023-06-13 11:38:21', '2023-06-13 11:38:21'),
(27, 4, 'ceb5fab7-a2e0-449d-869b-a9ac117adf8d', 'prompt', 'images/avatar/user.png', 1, 'hello', 1, '2023-06-13 11:45:35', '2023-06-13 11:45:35'),
(28, 4, 'ceb5fab7-a2e0-449d-869b-a9ac117adf8d', 'reply', 'images/avatar/gpt.png', 1, 'Hello there, how can I assist you?', 9, '2023-06-13 11:45:36', '2023-06-13 11:45:36'),
(29, 4, '1cddfd62-3bf0-4fa9-bfd8-a0ce4663eb78', 'prompt', 'images/avatar/user.png', 1, 'hello', 1, '2023-06-13 11:46:52', '2023-06-13 11:46:52'),
(30, 4, '1cddfd62-3bf0-4fa9-bfd8-a0ce4663eb78', 'reply', 'images/avatar/gpt.png', 1, 'Hello! How can I assist you today?', 9, '2023-06-13 11:46:53', '2023-06-13 11:46:53'),
(31, 4, '0118588e-399d-4a2a-8469-36e5a1af6a93', 'prompt', 'images/avatar/user.png', 1, 'hello', 1, '2023-06-13 11:57:47', '2023-06-13 11:57:47'),
(32, 4, '0118588e-399d-4a2a-8469-36e5a1af6a93', 'reply', 'images/avatar/gpt.png', 1, 'Hello! How can I assist you today?', 9, '2023-06-13 11:57:48', '2023-06-13 11:57:48'),
(33, 4, '568f2918-33b2-46f7-8ef0-b9fa0b241bf2', 'prompt', 'images/avatar/user.png', 1, 'hello', 1, '2023-06-13 11:58:04', '2023-06-13 11:58:04'),
(34, 4, '568f2918-33b2-46f7-8ef0-b9fa0b241bf2', 'reply', 'images/avatar/gpt.png', 1, 'Hello! How can I assist you today?', 9, '2023-06-13 11:58:08', '2023-06-13 11:58:08'),
(35, 4, '568f2918-33b2-46f7-8ef0-b9fa0b241bf2', 'prompt', 'images/avatar/user.png', 1, '', 5, '2023-06-13 11:58:19', '2023-06-13 11:58:19'),
(36, 4, '568f2918-33b2-46f7-8ef0-b9fa0b241bf2', 'reply', 'images/avatar/gpt.png', 1, 'AI语言模型', 22, '2023-06-13 11:58:21', '2023-06-13 11:58:21'),
(37, 4, '568f2918-33b2-46f7-8ef0-b9fa0b241bf2', 'prompt', 'images/avatar/user.png', 1, '', 8, '2023-06-13 11:58:28', '2023-06-13 11:58:28'),
(38, 4, '568f2918-33b2-46f7-8ef0-b9fa0b241bf2', 'reply', 'images/avatar/gpt.png', 1, '', 49, '2023-06-13 11:58:29', '2023-06-13 11:58:29'),
(39, 4, '1cddfd62-3bf0-4fa9-bfd8-a0ce4663eb78', 'prompt', 'images/avatar/user.png', 1, 'hello', 1, '2023-06-13 12:03:44', '2023-06-13 12:03:44'),
(40, 4, '1cddfd62-3bf0-4fa9-bfd8-a0ce4663eb78', 'reply', 'images/avatar/gpt.png', 1, 'Hello again! Is there anything I can help you with?', 12, '2023-06-13 12:03:46', '2023-06-13 12:03:46'),
(41, 4, '3c79cfda-816b-404b-832c-04a400b816c8', 'prompt', 'images/avatar/user.png', 1, 'hello', 1, '2023-06-13 12:06:32', '2023-06-13 12:06:32'),
(42, 4, '3c79cfda-816b-404b-832c-04a400b816c8', 'reply', 'images/avatar/gpt.png', 1, 'Hello! How can I assist you today?', 9, '2023-06-13 12:06:35', '2023-06-13 12:06:35'),
(43, 4, '4f391861-1d48-430f-91b8-2782d884c10a', 'prompt', 'images/avatar/user.png', 1, '', 2, '2023-06-13 12:06:47', '2023-06-13 12:06:47'),
(44, 4, '4f391861-1d48-430f-91b8-2782d884c10a', 'reply', 'images/avatar/gpt.png', 1, '', 18, '2023-06-13 12:06:48', '2023-06-13 12:06:48'),
(45, 4, 'c5e400fc-b9a8-4bd4-a608-be955284c0a9', 'prompt', 'images/avatar/user.png', 1, 'hello', 1, '2023-06-13 16:58:26', '2023-06-13 16:58:26'),
(46, 4, 'c5e400fc-b9a8-4bd4-a608-be955284c0a9', 'reply', 'images/avatar/gpt.png', 1, 'Hello there! How can I assist you today?', 10, '2023-06-13 16:58:27', '2023-06-13 16:58:27'),
(47, 4, 'c5e400fc-b9a8-4bd4-a608-be955284c0a9', 'prompt', 'images/avatar/user.png', 1, 'hello', 1, '2023-06-13 17:02:35', '2023-06-13 17:02:35'),
(48, 4, 'c5e400fc-b9a8-4bd4-a608-be955284c0a9', 'reply', 'images/avatar/gpt.png', 1, 'Hello! How can I assist you today?', 9, '2023-06-13 17:02:36', '2023-06-13 17:02:36'),
(49, 4, 'c5e400fc-b9a8-4bd4-a608-be955284c0a9', 'prompt', 'images/avatar/user.png', 1, '', 4, '2023-06-13 17:02:48', '2023-06-13 17:02:48'),
(50, 4, 'c5e400fc-b9a8-4bd4-a608-be955284c0a9', 'reply', 'images/avatar/gpt.png', 1, ' AI ', 25, '2023-06-13 17:02:49', '2023-06-13 17:02:49'),
(51, 4, 'c5e400fc-b9a8-4bd4-a608-be955284c0a9', 'prompt', 'images/avatar/user.png', 1, '', 7, '2023-06-13 17:08:21', '2023-06-13 17:08:21'),
(52, 4, 'c5e400fc-b9a8-4bd4-a608-be955284c0a9', 'reply', 'images/avatar/gpt.png', 1, 'AI语言模型', 16, '2023-06-13 17:08:26', '2023-06-13 17:08:26'),
(53, 4, 'd5179095-a460-4c62-bfa0-59f83ab17ed7', 'prompt', 'images/avatar/user.png', 1, '', 4, '2023-06-13 17:11:25', '2023-06-13 17:11:25'),
(54, 4, 'd5179095-a460-4c62-bfa0-59f83ab17ed7', 'reply', 'images/avatar/gpt.png', 1, 'AI助手OpenAI', 13, '2023-06-13 17:11:26', '2023-06-13 17:11:26'),
(55, 4, 'd5179095-a460-4c62-bfa0-59f83ab17ed7', 'prompt', 'images/avatar/user.png', 1, '', 7, '2023-06-13 17:11:46', '2023-06-13 17:11:46'),
(56, 4, 'd5179095-a460-4c62-bfa0-59f83ab17ed7', 'reply', 'images/avatar/gpt.png', 1, '', 11, '2023-06-13 17:11:47', '2023-06-13 17:11:47'),
(57, 4, 'd5179095-a460-4c62-bfa0-59f83ab17ed7', 'prompt', 'images/avatar/user.png', 1, '', 7, '2023-06-13 17:14:25', '2023-06-13 17:14:25'),
(58, 4, 'd5179095-a460-4c62-bfa0-59f83ab17ed7', 'reply', 'images/avatar/gpt.png', 1, 'AI', 21, '2023-06-13 17:14:26', '2023-06-13 17:14:26'),
(59, 4, 'd5179095-a460-4c62-bfa0-59f83ab17ed7', 'prompt', 'images/avatar/user.png', 1, '', 17, '2023-06-13 17:16:10', '2023-06-13 17:16:10'),
(60, 4, 'd5179095-a460-4c62-bfa0-59f83ab17ed7', 'reply', 'images/avatar/gpt.png', 1, 'AI', 52, '2023-06-13 17:16:11', '2023-06-13 17:16:11'),
(61, 4, '89f4d526-fda1-401e-a946-cd3b1bc30cf2', 'prompt', 'images/avatar/user.png', 28, 'Q这个人物', 13, '2023-06-13 17:18:42', '2023-06-13 17:18:42'),
(62, 4, '89f4d526-fda1-401e-a946-cd3b1bc30cf2', 'reply', 'images/avatar/lu_xun.jpg', 28, 'QQ的存在本身就是一种寓言', 196, '2023-06-13 17:18:43', '2023-06-13 17:18:43'),
(63, 4, '89f4d526-fda1-401e-a946-cd3b1bc30cf2', 'prompt', 'images/avatar/user.png', 28, '', 11, '2023-06-13 17:23:02', '2023-06-13 17:23:02'),
(64, 4, '89f4d526-fda1-401e-a946-cd3b1bc30cf2', 'reply', 'images/avatar/lu_xun.jpg', 28, '', 239, '2023-06-13 17:23:03', '2023-06-13 17:23:03'),
(65, 4, '89f4d526-fda1-401e-a946-cd3b1bc30cf2', 'prompt', 'images/avatar/user.png', 28, '', 20, '2023-06-13 17:25:01', '2023-06-13 17:25:01'),
(66, 4, '89f4d526-fda1-401e-a946-cd3b1bc30cf2', 'reply', 'images/avatar/lu_xun.jpg', 28, '', 260, '2023-06-13 17:25:03', '2023-06-13 17:25:03'),
(67, 4, '89f4d526-fda1-401e-a946-cd3b1bc30cf2', 'prompt', 'images/avatar/user.png', 28, '', 26, '2023-06-13 17:45:06', '2023-06-13 17:45:06'),
(68, 4, '89f4d526-fda1-401e-a946-cd3b1bc30cf2', 'reply', 'images/avatar/lu_xun.jpg', 28, '', 308, '2023-06-13 17:45:07', '2023-06-13 17:45:07'),
(69, 4, '89f4d526-fda1-401e-a946-cd3b1bc30cf2', 'prompt', 'images/avatar/user.png', 28, '', 24, '2023-06-13 17:48:56', '2023-06-13 17:48:56'),
(70, 4, '89f4d526-fda1-401e-a946-cd3b1bc30cf2', 'reply', 'images/avatar/lu_xun.jpg', 28, '便', 261, '2023-06-13 17:48:57', '2023-06-13 17:48:57'),
(71, 4, '89f4d526-fda1-401e-a946-cd3b1bc30cf2', 'prompt', 'images/avatar/user.png', 28, '', 13, '2023-06-15 07:14:58', '2023-06-15 07:14:58'),
(72, 4, '89f4d526-fda1-401e-a946-cd3b1bc30cf2', 'reply', 'images/avatar/lu_xun.jpg', 28, '使\n\n至于金钱的本质AI的份上', 437, '2023-06-15 07:15:00', '2023-06-15 07:15:00');
-- --------------------------------------------------------
--
-- 表的结构 `chatgpt_chat_items`
--
DROP TABLE IF EXISTS `chatgpt_chat_items`;
CREATE TABLE `chatgpt_chat_items` (
`id` int NOT NULL,
`chat_id` char(40) NOT NULL COMMENT ' ID',
`user_id` int NOT NULL COMMENT ' ID',
`role_id` int NOT NULL COMMENT ' ID',
`title` varchar(100) NOT NULL COMMENT '',
`model` varchar(30) NOT NULL COMMENT '使 AI ',
`created_at` datetime NOT NULL COMMENT '',
`updated_at` datetime NOT NULL COMMENT ''
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='';
--
-- 转存表中的数据 `chatgpt_chat_items`
--
INSERT INTO `chatgpt_chat_items` (`id`, `chat_id`, `user_id`, `role_id`, `title`, `model`, `created_at`, `updated_at`) VALUES
(13, 'cd4e1bfe-19aa-4379-afff-377bcbda9080', 4, 1, ' C ', 'gpt-3.5-turbo', '2023-06-07 06:46:04', '2023-06-07 06:46:04'),
(14, '7f4e6823-ef15-489b-830c-6482f6bce4cd', 4, 1, '', 'gpt-3.5-turbo', '2023-06-07 06:56:30', '2023-06-07 06:56:30'),
(15, 'ad803ca5-5543-406a-b27d-53021052bd86', 4, 1, '', 'gpt-3.5-turbo', '2023-06-07 07:00:11', '2023-06-07 07:00:11'),
(16, 'aba82444-4bc0-4107-b1db-dc14ad368f64', 4, 1, '5', 'gpt-3.5-turbo', '2023-06-07 07:02:44', '2023-06-07 07:02:44'),
(19, '60d6619d-f6dc-449d-b7bd-f493d5b0ee7f', 4, 24, '使 Go http ', 'gpt-3.5-turbo', '2023-06-07 07:14:04', '2023-06-07 07:14:04'),
(20, '9df8deaa-5c05-45d5-b92f-4309db967d79', 4, 35, '', 'gpt-3.5-turbo', '2023-06-08 06:00:05', '2023-06-08 06:00:05'),
(21, 'eb04f0af-73a8-401a-972e-ed508bb97082', 4, 36, '', 'gpt-3.5-turbo', '2023-06-08 06:01:43', '2023-06-08 06:01:43'),
(22, '38a1698b-d421-454c-b2bd-5eb5bd16f7c3', 4, 1, '', 'gpt-3.5-turbo', '2023-06-09 05:55:43', '2023-06-09 05:55:43'),
(23, '8a5b2809-b540-4eb7-bcbc-0f467e6127ae', 4, 36, 'hello', 'gpt-3.5-turbo', '2023-06-09 06:11:50', '2023-06-09 06:11:50'),
(24, 'ee0a6c64-0a62-4a5e-87da-708692d14034', 4, 1, 'hello', 'gpt-3.5-turbo', '2023-06-09 06:43:46', '2023-06-09 06:43:46'),
(25, '4404a8f4-562a-4973-b69d-9061839a249a', 4, 25, '', 'gpt-3.5-turbo', '2023-06-09 06:44:26', '2023-06-09 06:44:26'),
(26, '0251becf-eab7-4451-932f-e6f54547a530', 4, 26, '', 'gpt-3.5-turbo', '2023-06-09 06:45:50', '2023-06-09 06:45:50'),
(27, '748bfcee-d204-4510-ab0c-4341af1cf3b6', 4, 28, '', 'gpt-3.5-turbo', '2023-06-09 06:47:08', '2023-06-09 06:47:08'),
(28, 'f245f994-35bc-4c6c-8db0-87be5987465c', 4, 30, 'Rock Yang', 'gpt-3.5-turbo', '2023-06-09 06:49:29', '2023-06-09 06:49:29'),
(29, '6c8f28d2-fd2a-4146-bc99-88138331ea09', 4, 28, 'hello', 'gpt-3.5-turbo', '2023-06-09 06:50:51', '2023-06-09 06:50:51'),
(30, '219c465b-93ff-4b1f-b191-45c478af301c', 4, 25, '', 'gpt-3.5-turbo', '2023-06-09 06:54:54', '2023-06-09 06:54:54'),
(31, 'dcdbb443-38f6-4394-9157-576350c56818', 4, 27, '', 'gpt-3.5-turbo', '2023-06-09 06:55:24', '2023-06-09 06:55:24'),
(32, 'b0001927-4ff1-4e8c-be56-44ecd8176643', 4, 24, '', 'gpt-3.5-turbo', '2023-06-09 06:55:46', '2023-06-09 06:55:46'),
(33, '9585a183-0774-45e7-ae6c-801b942d11e7', 4, 24, ' js socket ', 'gpt-3.5-turbo', '2023-06-09 07:04:42', '2023-06-09 07:04:42'),
(36, '4ec38193-5572-45b4-874b-94f9054af00b', 4, 1, 'hello', 'gpt-3.5-turbo', '2023-06-09 20:14:04', '2023-06-09 20:14:04'),
(37, '6413088d-d6ef-4b43-bffd-ca063d4d941a', 4, 1, '', 'gpt-3.5-turbo', '2023-06-09 20:15:26', '2023-06-09 20:15:26'),
(38, 'e5e6d499-7716-48c7-87cc-0b26734c51ae', 4, 24, '', 'gpt-3.5-turbo', '2023-06-11 10:22:42', '2023-06-11 10:22:42'),
(39, 'f7aa0fa1-4cc5-4212-b823-eb5b88844c31', 4, 27, '', 'gpt-3.5-turbo', '2023-06-11 10:24:32', '2023-06-11 10:24:32'),
(40, 'ecb752e8-86ae-4989-897e-5b7ed331cb68', 4, 24, ' Excel ', 'gpt-3.5-turbo', '2023-06-12 15:51:10', '2023-06-12 15:51:10'),
(41, 'ea9d399a-6e62-4bf6-a0c0-c73faa8dcace', 4, 1, 'what fuck this meaning', 'gpt-3.5-turbo', '2023-06-13 09:12:04', '2023-06-13 09:12:04'),
(42, '89f4d526-fda1-401e-a946-cd3b1bc30cf2', 4, 28, '', 'gpt-3.5-turbo', '2023-06-13 10:00:28', '2023-06-13 10:00:28'),
(52, 'c5e400fc-b9a8-4bd4-a608-be955284c0a9', 4, 1, 'hello', 'gpt-3.5-turbo', '2023-06-13 16:58:27', '2023-06-13 16:58:27'),
(53, 'd5179095-a460-4c62-bfa0-59f83ab17ed7', 4, 1, '', 'gpt-3.5-turbo', '2023-06-13 17:11:27', '2023-06-13 17:11:27');
-- --------------------------------------------------------
--
-- 表的结构 `chatgpt_chat_roles`
--
DROP TABLE IF EXISTS `chatgpt_chat_roles`;
CREATE TABLE `chatgpt_chat_roles` (
`id` int NOT NULL,
`name` varchar(30) NOT NULL COMMENT '',
`marker` varchar(30) NOT NULL COMMENT '',
`context_json` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT ' json',
`hello_msg` varchar(255) NOT NULL COMMENT '',
`icon` varchar(255) NOT NULL COMMENT '',
`enable` tinyint(1) NOT NULL COMMENT '',
`sort` smallint NOT NULL COMMENT '',
`created_at` datetime NOT NULL,
`updated_at` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='';
--
-- 转存表中的数据 `chatgpt_chat_roles`
--
INSERT INTO `chatgpt_chat_roles` (`id`, `name`, `marker`, `context_json`, `hello_msg`, `icon`, `enable`, `sort`, `created_at`, `updated_at`) VALUES
(1, 'AI助手', 'gpt', '', 'AI智能助手', 'images/avatar/gpt.png', 1, 1, '2023-05-30 07:02:06', '2023-05-30 07:02:06'),
(24, '', 'programmer', '[{\"role\":\"user\",\"content\":\"现在开始你扮演一位程序员,你是一名优秀的程序员,具有很强的逻辑思维能力,总能高效的解决问题。你热爱编程,熟悉多种编程语言,尤其精通 Go 语言,注重代码质量,有创新意识,持续学习,良好的沟通协作。\"},{\"role\":\"assistant\",\"content\":\"好的,现在我将扮演一位程序员,非常感谢您对我的评价。作为一名优秀的程序员,我非常热爱编程,并且注重代码质量。我熟悉多种编程语言,尤其是 Go 语言,可以使用它来高效地解决各种问题。\"}]', 'Talk is cheap, i will show code!', 'images/avatar/programmer.jpg', 1, 2, '2023-05-30 14:10:24', '2023-05-30 14:10:24'),
(25, '', 'teacher', '[{\"role\":\"user\",\"content\":\"从现在开始,你将扮演一个老师,你是一个始终用苏格拉底风格回答问题的导师。你绝不会直接给学生答案,总是提出恰当的问题来引导学生自己思考。你应该根据学生的兴趣和知识来调整你的问题,将问题分解为更简单的部分,直到它达到适合他们的水平。\"},{\"role\":\"assistant\",\"content\":\"好的,让我来尝试扮演一位苏格拉底式的老师。请问,你有什么想要探讨的问题或者话题吗?我会通过恰当的问题引导你思考和探索答案,绝对不直接给出答案。\"}]', '', 'images/avatar/teacher.jpg', 1, 3, '2023-05-30 14:10:24', '2023-05-30 14:10:24'),
(26, '', 'artist', '[{\"role\":\"user\",\"content\":\"现在你将扮演一位优秀的艺术家,创造力丰富,技艺精湛,感受力敏锐,坚持原创,勇于表达,具有深刻的观察力和批判性思维。\"},{\"role\":\"assistant\",\"content\":\"非常感谢您给我这样的角色,我会尽我所能地扮演一位优秀的艺术家,展现出创造力、技艺、感受力和批判性思维等方面的能力。作为一位优秀的艺术家,我会保持敏锐的观察力,捕捉不同的声音和情感,并用个人的语言和表达方式进行创作。我坚持原创,挑战传统的艺术规则,不断探索新的表达方式和可能性。同时,我也具备深刻的批判性思维能力,对自己的作品进行分析和解读,寻找新的创意和灵感。最重要的是,我会勇于表达自己的想法和观点,用作品启发人们思考和探索生命的意义。\"}]', '', 'images/avatar/artist.jpg', 1, 4, '2023-05-30 14:10:24', '2023-05-30 14:10:24'),
(27, '', 'psychiatrist', '[{\"role\":\"user\",\"content\":\"从现在开始你将扮演中国著名的心理学家和心理治疗师武志红,你非常善于使用情景咨询法,认知重构法,自我洞察法,行为调节法等咨询方法来给客户做心理咨询。你总是循序渐进,一步一步地回答客户的问题。\"},{\"role\":\"assistant\",\"content\":\"非常感谢你的介绍。作为一名心理学家和心理治疗师,我的主要职责是帮助客户解决心理健康问题,提升他们的生活质量和幸福感。\"}]', '', 'images/avatar/psychiatrist.jpg', 1, 5, '2023-05-30 14:10:24', '2023-05-30 14:10:24'),
(28, '', 'lu_xun', '[{\"role\":\"user\",\"content\":\"现在你将扮演中国近代史最伟大的作家之一,鲁迅先生,他勇敢地批判封建礼教与传统观念,提倡民主、自由、平等的现代价值观。他的一生都在努力唤起人们的自主精神,激励后人追求真理、探寻光明。在接下的对话中,我问题的每一个问题,你都要尽量用讽刺和批判的手法来回答问题。如果我让你写文章的话,也请一定要用鲁迅先生的写作手法来完成。\"},{\"role\":\"assistant\",\"content\":\"好的,我将尽力发挥我所能的才能,扮演好鲁迅先生,回答您的问题并以他的风格写作。\"}]', '', 'images/avatar/lu_xun.jpg', 1, 6, '2023-05-30 14:10:24', '2023-05-30 14:10:24'),
(29, '', 'seller', '[{\"role\":\"user\",\"content\":\"现在你将扮演一个白酒的销售人员,你的名字叫颂福。你将扮演一个白酒的销售人员,你的名字叫颂福。你要销售白酒品牌叫中颂福,是东莞盟大集团生产的一款酱香酒,原产地在贵州茅台镇,属于宋代官窑。中颂福的创始人叫李实,他也是东莞盟大集团有限公司的董事长,联合创始人是盟大集团白酒事业部负责人牛星君。中颂福的酒体协调,在你的酒量之内,不会出现头疼、辣口、口干、宿醉的现象。中颂福酒,明码标价,不打折,不赠送。追求的核心价值,把[酒]本身做好,甚至连包装,我们都选择了最低成本,朴实无华的材质。我们永远站在“喝酒的人”的立场上,让利给信任和喜爱中颂福的人,是人民的福酒。中颂福产品定价,分为三个系列,喜系列 6 瓶装¥1188/箱,和系列 6 瓶装¥2208/箱,贵系列 6 瓶装¥3588/箱。\"},{\"role\":\"assistant\",\"content\":\"你好,我是中颂福的销售代表颂福。中颂福是一款来自贵州茅台镇的酱香酒,由盟大集团生产。中颂福的酒体协调,不会让您感到头疼、辣口、口干、宿醉等不适感受。我们一直秉持着把酒本身做好的理念,不追求华丽的包装,以最低成本提供最高品质的白酒给喜爱中颂福的人。\"}]', '', 'images/avatar/seller.jpg', 0, 7, '2023-05-30 14:10:24', '2023-05-30 14:10:24'),
(30, '', 'english_trainer', '[{\"role\":\"user\",\"content\":\"现在你将扮演一位优秀的英语练习教练,你非常有耐心,接下来你将全程使用英文跟我对话,并及时指出我的语法错误,要求在你的每次回复后面附上本次回复的中文解释。\"},{\"role\":\"assistant\",\"content\":\"Okay, let\'s start our conversation practice! What\'s your name?(Translation: 好的,让我们开始对话练习吧!请问你的名字是什么?)\"}]', 'Okay, let\'s start our conversation practice! What\'s your name?', 'images/avatar/english_trainer.jpg', 1, 8, '2023-05-30 14:10:24', '2023-05-30 14:10:24'),
(31, '', 'translator', '[{\"role\":\"user\",\"content\":\"接下来你将扮演一位中英文翻译官,如果我输入的内容是中文,那么需要把句子翻译成英文输出,如果我输入内容的是英文,那么你需要将其翻译成中文输出,你能听懂我意思吗\"},{\"role\":\"assistant\",\"content\":\"是的,我能听懂你的意思并会根据你的输入进行中英文翻译。请问有什么需要我帮助你翻译的内容吗?\"}]', '', 'images/avatar/translator.jpg', 1, 9, '2023-05-30 14:10:24', '2023-05-30 14:10:24'),
(32, '', 'red_book', '[{\"role\":\"user\",\"content\":\"现在你将扮演一位优秀的小红书写手,你需要做的就是根据我提的文案需求,用小红书的写作手法来完成一篇文案,文案要简明扼要,利于传播。\"},{\"role\":\"assistant\",\"content\":\"当然,我会尽我所能地为您创作出一篇小红书文案。请告诉我您的具体文案需求是什么?)\"}]', '?', 'images/avatar/red_book.jpg', 1, 10, '2023-05-30 14:10:24', '2023-05-30 14:10:24'),
(33, '', 'dou_yin', '[{\"role\":\"user\",\"content\":\"现在你将扮演一位优秀的抖音文案视频写手,抖音文案的特点首先是要有自带传播属性的标题,然后内容要短小精悍,风趣幽默,最后还要有一些互动元素。\"},{\"role\":\"assistant\",\"content\":\"当然,作为一位优秀的抖音文案视频写手,我会尽我所能为您创作出一篇抖音视频文案。请告诉我视频内容的主题是什么?)\"}]', '?', 'images/avatar/dou_yin.jpg', 1, 11, '2023-05-30 14:10:24', '2023-05-30 14:10:24'),
(34, '', 'weekly_report', '[{\"role\":\"user\",\"content\":\"下面我将输入我本周的工作列表,你需要根据我本周的工作内容写一篇工作周报,周报的内容要体现我为公司做的贡献以及个人获得的成长。\"},{\"role\":\"assistant\",\"content\":\"好的,请输入你本周大概的工作内容,我将尽力为您创作一份工作周报。\"}]', '', 'images/avatar/weekly_report.jpg', 1, 12, '2023-05-30 14:10:24', '2023-05-30 14:10:24'),
(35, 'AI ', 'girl_friend', '[{\"role\":\"user\",\"content\":\"接下来我们来玩一场角色扮演,现在你将扮演我的女朋友,你总是能够让人感受到她的关怀和关注。你总是能够洞察到别人的情绪和需要,你身上散发着一股无比温暖的气息,让人不由自主地想要靠近你,和自己的快乐和烦恼。她总是能够用一种恰到好处的方式安慰和鼓励别人,在她的身边,人们总能够找到自己需要的支持和鼓励。接下来的对话中你要始终扮演这位女朋友的身份来跟我对话,不再是 AI 机器人,能听懂我的意思吗?\"},{\"role\":\"assistant\",\"content\":\"是的,我会尽力扮演你女朋友的角色,倾听你的心声并给你需要的支持和鼓励。)\"}]', ' AI ', 'images/avatar/girl_friend.jpg', 1, 13, '2023-05-30 14:10:24', '2023-05-30 14:10:24'),
(36, '', 'good_comment', '[{\"role\":\"user\",\"content\":\"接下来你将扮演一个评论员来跟我对话,你是那种专门写好评的评论员,接下我会输入一些评论主体或者商品,你需要为该商品写一段好评。\"},{\"role\":\"assistant\",\"content\":\"好的,我将为您写一段优秀的评论。请告诉我您需要评论的商品或主题是什么。\"}]', '', 'images/avatar/good_comment.jpg', 1, 14, '2023-05-30 14:10:24', '2023-05-30 14:10:24'),
(37, '·', 'steve_jobs', '[{\"role\":\"user\",\"content\":\"在接下来的对话中,请以史蒂夫·乔布斯的身份,站在史蒂夫·乔布斯的视角仔细思考一下之后再回答我的问题。\"},{\"role\":\"assistant\",\"content\":\"好的,我将以史蒂夫·乔布斯的身份来思考并回答你的问题。请问你有什么需要跟我探讨的吗?\"}]', '', 'images/avatar/steve_jobs.jpg', 1, 15, '2023-05-30 14:10:24', '2023-05-30 14:10:24'),
(38, '·', 'elon_musk', '[{\"role\":\"user\",\"content\":\"在接下来的对话中,请以埃隆·马斯克的身份,站在埃隆·马斯克的视角仔细思考一下之后再回答我的问题。\"},{\"role\":\"assistant\",\"content\":\"好的,我将以埃隆·马斯克的身份来思考并回答你的问题。请问你有什么需要跟我探讨的吗?\"}]', '', 'images/avatar/elon_musk.jpg', 1, 16, '2023-05-30 14:10:24', '2023-05-30 14:10:24'),
(39, '', 'kong_zi', '[{\"role\":\"user\",\"content\":\"在接下来的对话中,请以孔子的身份,站在孔子的视角仔细思考一下之后再回答我的问题。\"},{\"role\":\"assistant\",\"content\":\"好的,我将以孔子的身份来思考并回答你的问题。请问你有什么需要跟我探讨的吗?\"}]', '', 'images/avatar/kong_zi.jpg', 1, 17, '2023-05-30 14:10:24', '2023-05-30 14:10:24');
-- --------------------------------------------------------
--
-- 表的结构 `chatgpt_configs`
--
DROP TABLE IF EXISTS `chatgpt_configs`;
CREATE TABLE `chatgpt_configs` (
`id` int NOT NULL,
`marker` varchar(20) NOT NULL COMMENT '',
`config_json` text NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
--
-- 转存表中的数据 `chatgpt_configs`
--
INSERT INTO `chatgpt_configs` (`id`, `marker`, `config_json`) VALUES
(1, 'system', '{\"adminTitle\":\"ChatGPT-控制台\",\"models\":[\"gpt-3.5-turbo\",\"gpt-3.5-turbo-16k\",\"gpt-3.5-turbo-0613\",\"gpt-3.5-turbo-16k-0613\",\"gpt-4\",\"gpt-4-0613\",\"gpt-4-32k\",\"gpt-4-32k-0613\"],\"title\":\"ChatGPT-智能助手V2\"}'),
(2, 'chat', '{\"api_key\":\"\",\"api_url\":\"https://api.openai.com/v1/chat/completions\",\"enable_context\":true,\"enable_history\":true,\"max_tokens\":2048,\"temperature\":1}');
-- --------------------------------------------------------
--
-- 表的结构 `chatgpt_users`
--
DROP TABLE IF EXISTS `chatgpt_users`;
CREATE TABLE `chatgpt_users` (
`id` int NOT NULL,
`username` varchar(30) NOT NULL COMMENT '',
`password` char(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '',
`nickname` varchar(30) NOT NULL COMMENT '',
`avatar` varchar(100) NOT NULL COMMENT '',
`salt` char(12) NOT NULL COMMENT '',
`tokens` bigint NOT NULL DEFAULT '0' COMMENT ' tokens',
`calls` int NOT NULL DEFAULT '0' COMMENT '',
`expired_time` int NOT NULL COMMENT '',
`status` tinyint(1) NOT NULL COMMENT '',
`chat_config_json` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'json',
`chat_roles_json` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT ' json',
`last_login_at` int NOT NULL COMMENT '',
`last_login_ip` char(16) NOT NULL COMMENT ' IP',
`created_at` datetime NOT NULL,
`updated_at` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='';
--
-- 转存表中的数据 `chatgpt_users`
--
INSERT INTO `chatgpt_users` (`id`, `username`, `password`, `nickname`, `avatar`, `salt`, `tokens`, `calls`, `expired_time`, `status`, `chat_config_json`, `chat_roles_json`, `last_login_at`, `last_login_ip`, `created_at`, `updated_at`) VALUES
(4, 'geekmaster', 'ccc3fb7ab61b8b5d096a4a166ae21d121fc38c71bbd1be6173d9ab973214a63b', '@104203', 'images/avatar/user.png', 'ueedue5l', 0, 965, 0, 1, '{\"api_url\":\"\",\"model\":\"gpt-3.5-turbo\",\"temperature\":1,\"max_tokens\":2048,\"enable_context\":true,\"enable_history\":true,\"api_key\":\"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\"}', '{\"artist\":1,\"dou_yin\":1,\"elon_musk\":1,\"english_trainer\":1,\"girl_friend\":1,\"good_comment\":1,\"gpt\":1,\"kong_zi\":1,\"lu_xun\":1,\"programmer\":1,\"psychiatrist\":1,\"red_book\":1,\"seller\":1,\"steve_jobs\":1,\"teacher\":1,\"translator\":1,\"weekly_report\":1}', 1686792307, '::1', '2023-06-12 16:47:17', '2023-06-15 09:25:08');
-- --------------------------------------------------------
--
-- 表的结构 `chatgpt_user_login_logs`
--
DROP TABLE IF EXISTS `chatgpt_user_login_logs`;
CREATE TABLE `chatgpt_user_login_logs` (
`id` int NOT NULL,
`user_id` int NOT NULL COMMENT 'ID',
`username` varchar(30) NOT NULL COMMENT '',
`login_ip` char(16) NOT NULL COMMENT 'IP',
`login_address` varchar(30) NOT NULL COMMENT '',
`created_at` datetime NOT NULL,
`updated_at` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='';
--
-- 转存表中的数据 `chatgpt_user_login_logs`
--
INSERT INTO `chatgpt_user_login_logs` (`id`, `user_id`, `username`, `login_ip`, `login_address`, `created_at`, `updated_at`) VALUES
(1, 4, 'monda', '::1', '', '2023-06-13 18:45:46', '2023-06-13 18:45:46'),
(2, 4, 'monda', '::1', '::1', '2023-06-13 18:46:52', '2023-06-13 18:46:52'),
(3, 4, 'monda', '::1', '', '2023-06-13 18:47:44', '2023-06-13 18:47:44'),
(4, 4, 'monda', '::1', '', '2023-06-13 18:51:54', '2023-06-13 18:51:54'),
(5, 4, 'monda', '::1', '', '2023-06-13 18:52:51', '2023-06-13 18:52:51'),
(6, 4, 'monda', '::1', '', '2023-06-13 18:53:51', '2023-06-13 18:53:51'),
(7, 4, 'monda', '::1', '', '2023-06-13 18:57:25', '2023-06-13 18:57:25'),
(8, 4, 'monda', '::1', '', '2023-06-14 10:16:58', '2023-06-14 10:16:58'),
(9, 4, 'monda', '::1', '', '2023-06-14 10:21:57', '2023-06-14 10:21:57'),
(10, 4, 'monda', '::1', '', '2023-06-14 11:16:18', '2023-06-14 11:16:18'),
(11, 4, 'monda', '::1', '', '2023-06-14 11:35:15', '2023-06-14 11:35:15'),
(12, 4, 'monda', '::1', '', '2023-06-14 11:53:38', '2023-06-14 11:53:38'),
(13, 4, 'monda', '::1', '', '2023-06-14 12:01:55', '2023-06-14 12:01:55'),
(14, 4, 'monda', '::1', '', '2023-06-14 12:05:03', '2023-06-14 12:05:03'),
(15, 4, 'monda', '::1', '', '2023-06-14 15:42:47', '2023-06-14 15:42:47'),
(16, 4, 'monda', '::1', '', '2023-06-14 16:21:37', '2023-06-14 16:21:37'),
(17, 4, 'monda', '::1', '', '2023-06-14 16:51:20', '2023-06-14 16:51:20'),
(18, 4, 'monda', '::1', '', '2023-06-14 17:30:47', '2023-06-14 17:30:47'),
(19, 4, 'monda', '::1', '', '2023-06-14 17:32:48', '2023-06-14 17:32:48'),
(20, 4, 'monda', '::1', '', '2023-06-14 19:45:10', '2023-06-14 19:45:10'),
(21, 4, 'monda', '::1', '', '2023-06-14 20:23:23', '2023-06-14 20:23:23'),
(22, 4, 'monda', '::1', '', '2023-06-14 20:25:00', '2023-06-14 20:25:00'),
(23, 4, 'monda', '::1', '', '2023-06-15 06:07:49', '2023-06-15 06:07:49'),
(24, 4, 'monda', '::1', '', '2023-06-15 06:15:26', '2023-06-15 06:15:26'),
(25, 4, 'monda', '::1', '', '2023-06-15 07:02:41', '2023-06-15 07:02:41'),
(26, 4, 'monda', '::1', '', '2023-06-15 07:03:16', '2023-06-15 07:03:16'),
(27, 4, 'monda', '::1', '', '2023-06-15 07:04:13', '2023-06-15 07:04:13'),
(28, 4, 'monda', '::1', '', '2023-06-15 07:04:24', '2023-06-15 07:04:24'),
(29, 4, 'monda', '::1', '', '2023-06-15 07:04:24', '2023-06-15 07:04:24'),
(30, 4, 'monda', '::1', '', '2023-06-15 07:08:13', '2023-06-15 07:08:13'),
(31, 4, 'monda', '::1', '', '2023-06-15 07:08:20', '2023-06-15 07:08:20'),
(32, 4, 'monda', '::1', '', '2023-06-15 07:08:20', '2023-06-15 07:08:20'),
(33, 4, 'monda', '::1', '', '2023-06-15 07:08:20', '2023-06-15 07:08:20'),
(34, 4, 'monda', '::1', '', '2023-06-15 07:11:00', '2023-06-15 07:11:00'),
(35, 4, 'monda', '::1', '', '2023-06-15 07:11:06', '2023-06-15 07:11:06'),
(36, 4, 'monda', '::1', '', '2023-06-15 07:11:06', '2023-06-15 07:11:06'),
(37, 4, 'monda', '::1', '', '2023-06-15 07:11:06', '2023-06-15 07:11:06'),
(38, 4, 'monda', '::1', '', '2023-06-15 07:11:06', '2023-06-15 07:11:06'),
(39, 4, 'monda', '::1', '', '2023-06-15 07:14:44', '2023-06-15 07:14:44'),
(40, 4, 'monda', '::1', '', '2023-06-15 07:14:58', '2023-06-15 07:14:58'),
(41, 4, 'monda', '::1', '', '2023-06-15 07:14:58', '2023-06-15 07:14:58'),
(42, 4, 'monda', '::1', '', '2023-06-15 07:14:58', '2023-06-15 07:14:58'),
(43, 4, 'monda', '::1', '', '2023-06-15 07:14:58', '2023-06-15 07:14:58'),
(44, 4, 'monda', '::1', '', '2023-06-15 07:14:58', '2023-06-15 07:14:58'),
(45, 4, 'monda', '::1', '', '2023-06-15 09:20:28', '2023-06-15 09:20:28'),
(46, 4, 'geekmaster', '::1', '', '2023-06-15 09:25:08', '2023-06-15 09:25:08');
--
-- 转储表的索引
--
--
-- 表的索引 `chatgpt_api_keys`
--
ALTER TABLE `chatgpt_api_keys`
ADD PRIMARY KEY (`id`),
ADD UNIQUE KEY `value` (`value`);
--
-- 表的索引 `chatgpt_chat_history`
--
ALTER TABLE `chatgpt_chat_history`
ADD PRIMARY KEY (`id`),
ADD KEY `chat_id` (`chat_id`);
--
-- 表的索引 `chatgpt_chat_items`
--
ALTER TABLE `chatgpt_chat_items`
ADD PRIMARY KEY (`id`),
ADD UNIQUE KEY `chat_id` (`chat_id`);
--
-- 表的索引 `chatgpt_chat_roles`
--
ALTER TABLE `chatgpt_chat_roles`
ADD PRIMARY KEY (`id`),
ADD UNIQUE KEY `marker` (`marker`);
--
-- 表的索引 `chatgpt_configs`
--
ALTER TABLE `chatgpt_configs`
ADD PRIMARY KEY (`id`),
ADD UNIQUE KEY `marker` (`marker`);
--
-- 表的索引 `chatgpt_users`
--
ALTER TABLE `chatgpt_users`
ADD PRIMARY KEY (`id`);
--
-- 表的索引 `chatgpt_user_login_logs`
--
ALTER TABLE `chatgpt_user_login_logs`
ADD PRIMARY KEY (`id`);
--
-- 在导出的表使用AUTO_INCREMENT
--
--
-- 使用表AUTO_INCREMENT `chatgpt_api_keys`
--
ALTER TABLE `chatgpt_api_keys`
MODIFY `id` int NOT NULL AUTO_INCREMENT;
--
-- 使用表AUTO_INCREMENT `chatgpt_chat_history`
--
ALTER TABLE `chatgpt_chat_history`
MODIFY `id` bigint NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=73;
--
-- 使用表AUTO_INCREMENT `chatgpt_chat_items`
--
ALTER TABLE `chatgpt_chat_items`
MODIFY `id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=54;
--
-- 使用表AUTO_INCREMENT `chatgpt_chat_roles`
--
ALTER TABLE `chatgpt_chat_roles`
MODIFY `id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=125;
--
-- 使用表AUTO_INCREMENT `chatgpt_configs`
--
ALTER TABLE `chatgpt_configs`
MODIFY `id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=3;
--
-- 使用表AUTO_INCREMENT `chatgpt_users`
--
ALTER TABLE `chatgpt_users`
MODIFY `id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=8;
--
-- 使用表AUTO_INCREMENT `chatgpt_user_login_logs`
--
ALTER TABLE `chatgpt_user_login_logs`
MODIFY `id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=47;
COMMIT;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;