PHP源码_最新Ai对话系统网站源码 ChatGPT+搭建教程+前后端

基于ChatGPT开发的一个人工智能技术驱动的自然语言处理工具,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,真正像人类一样来聊天交流,甚至能完成撰写邮件、视频脚本、文案、翻译、代码,写论文等任务。


支持对接gpt,阿里云,腾讯云

后端环境:PHP7.4+MySQL5.6

前端:uniapp

运行截图

源码贡献

https://githubs.xyz/boot?app=44

数据库部份表

DROP TABLE IF EXISTS `admin`;
CREATE TABLE `admin` (
  `id` int(1) NOT NULL AUTO_INCREMENT,   -- 数据库表ID
  `user` varchar(250) NOT NULL,  -- 账号
  `pwd` varchar(250) NOT NULL,  -- 密码
  `text` varchar(60) NOT NULL,  -- 备注
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
INSERT INTO `admin`(`id`, `user`, `pwd`, `text`) VALUES
('1', 'admin', '614d78d7e1054e72de646f7a03daa9c9', '默认账号');


DROP TABLE IF EXISTS `config`;
CREATE TABLE `config` (
  `k` varchar(20) NOT NULL ,		-- 配置
  `v` text NOT NULL ,		-- 值
  PRIMARY KEY (`k`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
INSERT INTO `config`(`k`, `v`) VALUES
('app_conf', '[]'),  -- app配置(json)[APP接口通信密钥,公告,是否开启新设备自动注册,是否开启接口]
('pay_conf', '[]'),  -- 支付配置(json)
('web_conf', '[]');  -- 功能配置(json)

DROP TABLE IF EXISTS `dh`;
CREATE TABLE `dh` (
  `id` int NOT NULL AUTO_INCREMENT,		-- 数据库表ID
  `type` varchar(20) NOT NULL,					-- 对话类型(hh:绘画,dh:对话)
  `user` varchar(250) NOT NULL,					-- 对话发起者账号
  `key` int(6) NOT NULL,					-- 对话所使用的密钥的ID
  `jkid` varchar(250) NOT NULL,					-- 云对话ID
  `date` datetime NOT NULL,					-- 对话开始时间
  `enddate` datetime NOT NULL,					-- 对话结束时间(当用户清除对话后即对话结束,或者1小时后没有发送新信息也为结束)
  `ycs` int NOT NULL,					-- 已经对话的次数
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS `keys`;
CREATE TABLE `keys` (
  `id` int NOT NULL AUTO_INCREMENT,		-- 数据库表ID
  `type` varchar(204) NOT NULL,					-- 密钥类型
  `sid` varchar(250) NOT NULL,					-- 密钥sid(仅限腾讯云)
  `key` varchar(250) NOT NULL,					-- 密钥
  `num` int(10) NOT NULL,					-- 使用次数
  `date` datetime NOT NULL,					-- 添加时间
  `text` text NOT NULL,					-- 备注
  `qk` varchar(10) NOT NULL,					-- 情况(开启或者关闭)
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;


DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,				-- 数据库表ID
  `user` varchar(50) NOT NULL,						-- 用户账号(唯一识别码,自动生成)
  `name` varchar(12) NOT NULL,						-- 用户名
  `imel` varchar(250) NOT NULL,						-- 用户设备imel码
  `jb` float(20) NOT NULL,						-- 金币余额
  `zs` float(20) NOT NULL,						-- 钻石数量(钻石可以提现)
  `date` datetime NOT NULL,						-- 注册时间
  `dhcs` int(10) NOT NULL,						-- 持有对话次数
  `yqz` varchar(50) NOT NULL,						-- 邀请者(对方账号)
  `ip` varchar(20) NOT NULL,						-- IP
  `qk` varchar(10) NOT NULL,						-- 设备情况
  `bz` text(200) NOT NULL,						-- 备注
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;


DROP TABLE IF EXISTS `msg`;
CREATE TABLE `msg` (
  `id` int NOT NULL AUTO_INCREMENT,		-- 数据库表ID
  `dhid` int NOT NULL,					-- 本地数据库的对话ID
  `msg` text NOT NULL,					-- 用户发起内容
  `fhmsg` text NOT NULL,					-- 云返回内容
  `json` text NOT NULL,					-- 返回数据的JSON信息
  `date` datetime NOT NULL,					-- 对话发起时间
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;


DROP TABLE IF EXISTS `tx`;               -- 钻石提现
CREATE TABLE `tx` (
  `id` int(11) NOT NULL AUTO_INCREMENT,		-- 数据库表ID
  `user` varchar(60) NOT NULL,				-- 提现的账户
  `zs` text NOT NULL,				-- 钻石数据(JSON)
  `type` varchar(8) NOT NULL,				-- 提现为啥
  `date` datetime NOT NULL,				-- 操作时间
  `img` varchar(100) NOT NULL,				-- 收款码图片名称
  `qk` varchar(10) NOT NULL,				-- 处理情况
  `ip` varchar(30) NOT NULL,					    -- 发起者的IP
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS `wz`;
CREATE TABLE `wz` (
  `id` int NOT NULL AUTO_INCREMENT,		-- 数据库表ID
  `user` varchar(60) NOT NULL,					-- 发给谁的(all为全部)
  `title` varchar(250) NOT NULL,					-- 邮件标题
  `text` text NOT NULL,					-- 邮件内容
  `useradd` varchar(12) NOT NULL,					--  谁发布的
  `date` datetime NOT NULL,					-- 添加时间
  `homedate` date NOT NULL,					-- 邮件有效期开始时间
  `enddate` date NOT NULL,					-- 邮件有效期到期时间
  `fjtype` varchar(12) NOT NULL,					-- 附件类型(null:无,dhcs:对话次数,zs:'钻石')
  `fjnum` float NOT NULL,					-- 附件数量
  `fjlq` text NOT NULL,					-- 领取的用户
  `ydus` text NOT NULL,					-- 已读用户
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS `jfmx`;
CREATE TABLE `jfmx` (
  `id` int NOT NULL AUTO_INCREMENT,		-- 数据库表ID
  `user` varchar(250) NOT NULL,					-- 被操作用户
  `type` varchar(6) NOT NULL,					-- 代币类型
  `jf` text NOT NULL,					-- 积分原来有多少,操作了多少(+-),操作完成后多少
  `text` text NOT NULL,					-- 备注
  `date` datetime NOT NULL,					-- 操作时间
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS `dd`;
CREATE TABLE `dd` (
  `id` int NOT NULL AUTO_INCREMENT,		-- 数据库表ID
  `ddh` varchar(250) NOT NULL,					-- 订单号
  `user` int NOT NULL,					-- 谁发起的(发起者ID)
  `je` float NOT NULL,					-- 充值金额
  `data` text NOT NULL,					-- 操作的数据(JSON)
  `pay` varchar(22) NOT NULL,					-- 支付方式
  `qk` varchar(20) NOT NULL,					-- 状态
  `text` text NOT NULL,					-- 备注
  `date` datetime NOT NULL,					-- 操作时间
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS `sc`;          -- 商城(废弃功能)
CREATE TABLE `sc` (
  `id` int NOT NULL AUTO_INCREMENT,		-- 数据库表ID
  `dhcs` int(6) NOT NULL,					--  对话次数
  `jg` float NOT NULL,					-- 价格(金币)
  `qk` varchar(20) NOT NULL,					-- 状态
  `max` varchar(20) NOT NULL,					-- 最多被购买次数
  `gmcs` varchar(20) NOT NULL,					-- 被购买次数
  `date` datetime NOT NULL,					-- 添加时间
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS `dhm`;          -- 兑换码
CREATE TABLE `dhm` (
  `id` int NOT NULL AUTO_INCREMENT,		-- 数据库表ID
  `dhcs` varchar(250) NOT NULL,					--  给予积分/对话次数
  `dhm` varchar(100) NOT NULL,					-- 兑换码内容
  `date` datetime NOT NULL,					-- 添加时间
  `syz` text NOT NULL,					-- 使用者信息(json)
  `adduser` varchar(50) NOT NULL,					-- 添加者
  `type` varchar(4) NOT NULL,					-- 类型(兑换后给予积分或者对话次数)
  `qk` varchar(250) NOT NULL,					-- 情况
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

源码贡献

https://githubs.xyz/boot?app=44

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/586275.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【MySQL精炼宝库】深度解析索引 | 事务

目录 一、索引 1.1 索引(index)概念: 1.2 索引的作用: 1.3 索引的缺点: 1.4 索引的使用场景: 1.5 索引的使用: 1.6 面试题:索引底层的数据结构(核心内容): 1.7 索引列查询(主…

【opencv4.8.1 源码编译】windows10 OpenCV 4.8.1源码编译并实现 CUDA 12加速

Windows 下使用 CMake3.29.2 Visual Studio 2022 编译 OpenCV 4.8.1 及其扩展模块cuda12.0teslaT4显卡 记录自己在编译时踩过的坑,避免下次再犯或者给有需要的人。 在实际使用中,如果是对处理时间要求比较高的场景,使用OpenCV处理图片数据很…

Flask教程2:flask高级视图

文章目录 add_url_rule类视图的引入装饰器的自定义与使用蓝图的使用url_prefix设置蓝图前缀 add_url_rule 欲实现url与视图函数的绑定,除了使用路由装饰器app.route,我们还可以通过add_url_rule(rule,endpointNone,view_funcNone)方法,其中&…

Flutter笔记:Widgets Easier组件库(1)使用各式边框

Flutter笔记 Widgets Easier组件库(1):使用边框 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite:http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress o…

【stomp 实战】Spring websocket 用户订阅和会话的管理源码分析

通过Spring websocket 用户校验和业务会话绑定我们学会了如何将业务会话绑定到spring websocket会话上。通过这一节,我们来分析一下会话和订阅的实现 用户会话的数据结构 SessionInfo 用户会话 用户会话定义如下: private static final class Sessio…

利用Argo数据分别计算温度、盐度和温盐所造成的比容海平面变化

本文所用到的温盐数据集:IPRC(美国夏威夷大学国际太平洋研究中心) Argo data products | Argo (ucsd.edu)https://argo.ucsd.edu/data/argo-data-products/ 理论知识(相关计算公式): 代码和工具包准备&…

python 中的数据结构

python 中的数据结构 1.1 序列 序列时有索引的数组 举例实现: a["北京","上海","广州","深圳","重庆","成都"] print(a[2]) print(a[-1] " " a[-2]) print(a[1:3]) # 运行结果 "&…

Vulnhub-DIGITALWORLD.LOCAL: VENGEANCE渗透

文章目录 前言1、靶机ip配置2、渗透目标3、渗透概括 开始实战一、信息获取二、smb下载线索三、制作字典四、爆破压缩包密码五、线索分析六、提权!!! Vulnhub靶机:DIGITALWORLD.LOCAL: VENGEANCE ( digitalworld.local: VENGEANCE …

chrome和drive安装包路径

Chrome for Testing availability (googlechromelabs.github.io) 下载Stable下面的包哈

【Leetcode每日一题】 分治 - 排序数组(难度⭐⭐)(69)

1. 题目解析 题目链接:912. 排序数组 这个问题的理解其实相当简单,只需看一下示例,基本就能明白其含义了。 2.算法原理 归并排序(Merge Sort)是一种采用“分而治之”(Divide and Conquer)策略…

LLM之RAG实战(三十八)| RAG分块策略之语义分块

在RAG应用中,分块是非常重要的一个环节,常见的分块方法有如下几种: Fixed size chunkingRecursive ChunkingDocument Specific ChunkingSemantic Chunking a)Fixed size chunking:这是最常见、最直接的分块方法。我们…

C/C++基础语法练习 - 计算阶乘(新手推荐阅读✨)

题目链接:https://www.starrycoding.com/problem/160 题目描述 给定一个整数 n n n,输出阶乘 n ! n! n!。 输入格式 一个整数 n ( 1 ≤ n ≤ 20 ) n(1 \le n \le 20) n(1≤n≤20)。 输出格式 一个整数 n ! n! n!。 输入样例1 16输出样例1 20922…

树的中心 树形dp

#include<bits/stdc.h> using namespace std; int n; const int N 100005; // 无向边 int ne[N * 2], e[N * 2], idx; int h[N]; int vis[N];int ans 0x7fffffff;void add(int a, int b) {e[idx] b, ne[idx] h[a], h[a] idx; }int dfs(int u) { // 作为根节点vis[u]…

机器学习:基于Sklearn,使用随机森林分类器RandomForestClassifier检测信用卡欺诈

前言 系列专栏&#xff1a;机器学习&#xff1a;高级应用与实践【项目实战100】【2024】✨︎ 在本专栏中不仅包含一些适合初学者的最新机器学习项目&#xff0c;每个项目都处理一组不同的问题&#xff0c;包括监督和无监督学习、分类、回归和聚类&#xff0c;而且涉及创建深度学…

分享一份物联网 SAAS 平台架构设计

一、架构图**** 二、Nginx**** 用于做服务的反向代理。 三、网关**** PaaS平台所有服务统一入口&#xff0c;包含token鉴权功能。 四、开放平台**** 对第三方平台开放的服务入口。 五、MQTT**** MQTT用于设备消息通信、内部服务消息通信。 六、Netty**** Socket通信设…

IoTDB 入门教程①——时序数据库为什么选IoTDB ?

文章目录 一、前文二、性能排行第一三、完全开源四、数据文件TsFile五、乱序数据高写入六、其他七、参考 一、前文 IoTDB入门教程——导读 关注博主的同学都知道&#xff0c;博主在物联网领域深耕多年。 时序数据库&#xff0c;博主已经用过很多&#xff0c;从最早的InfluxDB&a…

正点原子[第二期]Linux之ARM(MX6U)裸机篇学习笔记-9.1-LED灯(模仿STM32驱动开发实验)

前言&#xff1a; 本文是根据哔哩哔哩网站上“正点原子[第二期]Linux之ARM&#xff08;MX6U&#xff09;裸机篇”视频的学习笔记&#xff0c;在这里会记录下正点原子 I.MX6ULL 开发板的配套视频教程所作的实验和学习笔记内容。本文大量引用了正点原子教学视频和链接中的内容。…

IDEA:Server‘s certificate is not trusted(服务器的证书不受信任)

IDEA&#xff1a;Server‘s certificate is not trusted&#xff08;服务器的证书不受信任&#xff09; 打开idea&#xff0c;发现一个莫名其妙的证书弹出来&#xff0c;还关不掉发现组织名是 Doctorcom LTD.百度了下 不知道是什么东西 这也不是下面这种破解了idea的情况 30069…

Ajax.

目录 1. 服务器相关的基础概念 1.1 服务器 1.2 客户端 1.3 服务器对外提供的资源 1.4 数据也是资源 1.5 资源与 URL 地址 1.6 什么是 Ajax 2. Ajax 的基础用法 2.1 POST 请求 2.2 GET 请求 2.3 DELETE 请求 2.4 PUT 请求 2.5 PATCH 请求 3. axios 3.1 axios 的基…

IoTDB 入门教程 问题篇①——内存不足导致datanode服务无法启动

文章目录 一、前文二、问题三、分析四、继续分析五、解决问题 一、前文 IoTDB入门教程——导读 二、问题 执行启动命令&#xff0c;但是datanode服务却无法启动&#xff0c;查询不到6667端口 bash sbin/start-standalone.sh 进而导致数据库连接也同样失败 [rootiZ2ze30dygwd6…