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,					    -- 发起者的IPPRIMARY 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

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【KTips】在Kotlin中实现一个十分简单的自循环状态机

在平日的编码生活中,你有没有遇到过需要通过状态机来实现的逻辑呢?一个状态的轮转、事件订阅的通讯处理等。 状态机的实现方式千变万化,这里我会为你介绍一个简单的自循环状态机实现。 简单介绍 在开始之前,我先说明一下这个所谓…

C# Web控件与数据感应之 CheckBoxList 类

目录 关于数据感应 CheckBoxList 类 范例运行环境 数据源表设计 角色字典表 用户角色表 AutoValueDBList 方法 原理 设计 实现 调用示例 初始化数据 启动查询模式 使用保存模式 小结 关于数据感应 数据感应也即数据捆绑,是一种动态的,We…

PostgreSQL的扩展pgpool

PostgreSQL的扩展pgpool pgpool-II(通常简称为 pgpool)是一个流行的 PostgreSQL 中间件,广泛用于连接池、负载均衡、自动故障转移等场景。作为一种高级数据库解决方案,pgpool 能够在多个 PostgreSQL 服务器之间分配数据库查询&am…

base64解码时报错“decode base64: invalid input“

现象 用base64 -d 去还原base64编码后的文件时报错decode base64: invalid input 例如: $ base64 test.zip | base64 -d > test2.zip base64: invalid input $ ll test* -rw-r--r-- 1 user grp 152 19 11:41 test.zip -rw-r--r-- 1 user grp 57 19 11:42 test2.zip解决办…

【Docker学习】docker version查看版本信息

就像很多应用一样,docker也使用version来查看版本信息。但因为docker包含有不少独立组件,version的作用范围会更广一些。 用法1: docker --version 描述: 输出安装的Docker CLI 的版本号。关于Docker CLI,请访问。 实操…

项目管理-项目范围管理2/2

项目管理:每天进步一点点~ 活到老,学到老 ヾ(◍∇◍)ノ゙ 何时学习都不晚,加油 项目范围管理,过程 6个,包括“规收定 创确控”: 规划范围管理收集需求定义范围创建WBS确认范围控制…

【YOLOv8报错】ModuleNotFoundError: No module named ‘lap‘

文章目录 【问题描述】【解决方式】【参考链接】 【问题描述】 使用YOLOv8进行追踪运行代码时报错:ModuleNotFoundError: No module named lap 【解决方式】 执行以下命令 pip install lapx【参考链接】 https://github.com/ultralytics/ultralytics/issues/177…

怎么证明E[E(X|Y,Z)Y]= E(X|Y)

性质8的证明 物理意义

Python词频统计

在Python中进行词频统计是一项基础的文本分析任务,通常涉及以下步骤: 文本预处理:包括去除标点符号、转换为小写、去除停用词等。分词:将文本分割成单词或词汇。统计词频:对分词后的结果进行计数。 以下是一个简单的…

webpack基础---常用loader

webpack 命令式和配置文件 html-webpack-plugin 配置项:{ templete: filename: inject: } 清除上次打包的文件,output: { clear: true } mode选项: none development prodution souce-map:可以精准定位代码行数 { devt…

【Android学习】简易计算器的实现

1.项目基础目录 新增dimens.xml 用于控制全部按钮的尺寸。图片资源放在drawable中。 另外 themes.xml中原来的 <style name"Theme.Learn" parent"Theme.MaterialComponents.DayNight.DarkActionBar">变为了&#xff0c;加上后可针对button中增加图片…

发卡授权盗u系统源码ZHU

2024最新UI发卡盗U/支持多语言/更新UI界面/支持多个主流钱包去除后门板&#xff0c; 搭建系统TGaqxm01&#xff0c;最好是部署智能合约后用合约地址来授权包含转账支付页面盗U授权源码。 完美提U&#xff0c;教程包含如何提u 。功能完美。 1.Php静态 2.目录puicta 3.扩sal 4.s…

机车 - 什么是点火正时

摩托车发动机点火正时简介 当摩托车发动机在压缩行程将要结束时&#xff0c;发动机的火花塞会准时的点火&#xff0c;使混合气燃烧&#xff0c;产生强大膨胀压力&#xff0c;推动活塞下行作功产生动力。但是这个从燃烧到产生最大膨胀压力需要一定的时间。这就需要活塞在到达上死…

416. 分割等和子集

两维dp class Solution {public boolean canPartition(int[] nums) {int n nums.length;int sum 0;for(int i0;i<n;i){sumnums[i];}if(sum%2 ! 0)return false;int target sum/2;boolean[][] dp new boolean[n][target1];// 初始化&#xff0c;初始化dp表格的第一行元素…

Spring Boot中使用Redis和Lua脚本实现延时队列

码到三十五 &#xff1a; 个人主页 延时队列是一种常见的需求。延时队列允许我们延迟处理某些任务&#xff0c;这在处理需要等待一段时间后才能执行的操作时特别有用&#xff0c;如发送提醒、定时任务等。文中&#xff0c;将介绍如何在Spring Boot环境下使用Redis和Lua脚本来实…

C#三人飞行棋

C#三人飞行棋 #region 1控制台设置int w 50, h 30; ConsoleInit(w, h); #endregion#region 2 场景选择实例//声明一个表示场景标识的变量 E_SceneType nowSceneType new E_SceneType(); while (true) {switch (nowSceneType){case E_SceneType.Begion://开始场景逻辑Consol…

吴恩达机器学习笔记 三十七 电影推荐系统 使用特征 成本函数 协同过滤算法

以电影评分系统为例&#xff0c;令 r(i, j) 来表示用户 j 已经对电影 i 评分&#xff0c; y&#xff08;i, j&#xff09;表示评分具体是多少。 假如每部电影有自己的特征&#xff0c;那么用户 j 对电影 i 的评分预测为 w(j) * x(i) b(j) r(i, j) &#xff1a;一个用户 j 是否…

global IoT SIM解决方案

有任何关于GSMA\IOT\eSIM\RSP\业务应用场景相关的问题&#xff0c;欢迎W: xiangcunge59 一起讨论, 共同进步 (加的时候请注明: 来自CSDN-iot). Onomondo提供的全球IoT SIM卡解决方案具有以下特点和优势&#xff1a; 1. **单一全球配置文件**&#xff1a;Onomondo的SIM卡拥…

【C++风云录】破解聊天机器人开发:寻找最适合你的工具

重量级面面观&#xff1a;六大顶级聊天机器人开发工具的对比 前言 在本文中&#xff0c;我们将深入探讨六种不同的C集成聊天机器人开发工具&#xff0c;包括Botkit, DialogueFlow, Rasa, Wit.ai, IBM Watson Assistant和 Microsoft Bot Framework。每个工具都将从选择原因&am…

Flink checkpoint 源码分析- Checkpoint barrier 传递源码分析

背景 在上一篇的博客里&#xff0c;大致介绍了flink checkpoint中的触发的大体流程&#xff0c;现在介绍一下触发之后下游的算子是如何做snapshot。 上一篇的文章: Flink checkpoint 源码分析- Flink Checkpoint 触发流程分析-CSDN博客 代码分析 1. 在SubtaskCheckpointCoo…