草庐IT

【回眸】ChatGPT Plus(GPT4体验卡)

回眸&啤酒鸭 2023-05-05 原文

前言

没忍住诱惑,开了个GPT4.0的会员,给大家表演一波



开通成功

开始问问题

写一个CNN疲劳驾驶监测代码,要求{使用Python语言,使用包,能成功运行,需要调用电脑摄像头,要求GUI界面有一些参数显示和提醒疲劳次数等等}

后面还有个具体代码的显示框,我放到下面代码块里

import cv2
import numpy as np
import tkinter as tk
from tkinter import messagebox
from tensorflow.keras.models import load_model
from tensorflow.keras.preprocessing.image import img_to_array

# 初始化tkinter窗口
root = tk.Tk()
root.title("疲劳驾驶监测")
root.geometry("300x150")

# 加载预训练的CNN模型
model = load_model("path/to/your/pretrained_model.h5")

# 设置参数
cap = cv2.VideoCapture(0)
drowsy_count = 0

def detect_drowsiness():
    global drowsy_count
    ret, frame = cap.read()
    
    if not ret:
        messagebox.showerror("错误", "摄像头无法打开,请检查设备连接。")
        return

    gray_frame = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
    face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml')
    faces = face_cascade.detectMultiScale(gray_frame, scaleFactor=1.1, minNeighbors=5, minSize=(30, 30))

    for (x, y, w, h) in faces:
        face_gray = gray_frame[y:y+h, x:x+w]
        face_gray_resized = cv2.resize(face_gray, (48, 48))
        face_gray_resized = face_gray_resized.astype("float") / 255.0
        face_gray_resized = img_to_array(face_gray_resized)
        face_gray_resized = np.expand_dims(face_gray_resized, axis=0)
        
        # 预测结果
        pred = model.predict(face_gray_resized)[0]

        if pred[0] > pred[1]:
            drowsy_count += 1
            if drowsy_count >= 5:
                drowsy_count_label.config(text=f"疲劳次数: {drowsy_count}", fg="red")
                messagebox.showwarning("警告", "您已疲劳驾驶,请注意休息!")
        else:
            drowsy_count = 0
            drowsy_count_label.config(text=f"疲劳次数: {drowsy_count}", fg="black")

    root.after(1000, detect_drowsiness)

# 添加GUI元素
start_button = tk.Button(root, text="开始检测", command=detect_drowsiness)
start_button.pack(pady=10)

drowsy_count_label = tk.Label(root, text=f"疲劳次数: {drowsy_count}")
drowsy_count_label.pack(pady=10)

exit_button = tk.Button(root, text="退出", command=root.destroy)
exit_button.pack(pady=10)

root.mainloop()

# 释放资源
cap.release()
cv2.destroyAllWindows()

虽然代码挺简洁的,但结构都有,可以做个参考,但具体在安装包之后是否能运行成功还有待商榷

最后还给了个路径替换提示,是挺贴心的,但是可能会因为代理的不稳定导致中途会有一些字段的缺失,可以刷新后重新生成即可
使用感受就是感觉比3.5的更加完善、可信一点,GPT3.5会胡编乱造,没办法确定其真实性。
同样的问题问免费版的3.5

pip install opencv-python
pip install keras
pip install tensorflow
pip install pyqt5

import cv2
import numpy as np
from keras.models import load_model
from PyQt5.QtWidgets import QApplication, QMainWindow, QLabel
from PyQt5.QtCore import QTimer, Qt


class FatigueDetection(QMainWindow):
    def __init__(self):
        super().__init__()
        self.model = load_model('model.h5')  # 加载CNN模型
        self.cap = cv2.VideoCapture(0)  # 打开电脑摄像头
        self.timer = QTimer(self)  # 创建定时器
        self.timer.timeout.connect(self.detect)  # 定时器绑定检测函数
        self.timer.start(50)  # 开始定时器,每50毫秒检测一次
        self.is_drowsy = False  # 初始化状态为非疲劳
        self.drowsy_count = 0  # 记录疲劳次数
        self.initUI()  # 创建GUI界面

    def initUI(self):
        self.setGeometry(100, 100, 640, 480)
        self.setWindowTitle('Fatigue Detection')
        self.label = QLabel(self)
        self.label.setAlignment(Qt.AlignCenter)
        self.label.setGeometry(0, 0, 640, 480)
        self.count_label = QLabel(self)
        self.count_label.setGeometry(10, 10, 150, 50)
        self.count_label.setStyleSheet('font-size: 20px; color: red;')
        self.count_label.setText(f'Drowsy count: {self.drowsy_count}')

    def detect(self):
        ret, frame = self.cap.read()  # 读取摄像头帧
        if not ret:
            return
        gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)  # 转换为灰度图像
        faces = cv2.CascadeClassifier('haarcascade_frontalface_default.xml').detectMultiScale(gray, scaleFactor=1.3,
                                                                                             minNeighbors=5,
                                                                                             minSize=(50, 50))  # 使用人脸检测器检测人脸
        for (x, y, w, h) in faces:
            roi_gray = gray[y:y + h, x:x + w]
            roi_gray = cv2.resize(roi_gray, (24, 24))  # 将人脸ROI调整为24*24的大小
            roi_gray = roi_gray.astype('float') / 255.0  # 归一化像素值
            roi_gray = np.reshape(roi_gray, (1, 24, 24, 1))  # 转换为模型输入格式
            prediction = self.model.predict(roi_gray)[0][0]  # 使用模型预测疲劳状态
            if prediction > 0.5:  # 如果预测为疲劳
                self.is_drowsy = True
                cv2.rectangle(frame, (x, y), (x + w, y + h), (0, 0, 255), 2)  #

到这里突然中断,需要给出继续的指令

            break
        else:  # 如果预测为非疲劳
            self.is_drowsy = False
            cv2.rectangle(frame, (x, y), (x + w, y + h), (0, 255, 0), 2)

    if self.is_drowsy:
        self.drowsy_count += 1
        self.count_label.setText(f'Drowsy count: {self.drowsy_count}')  # 更新疲劳次数显示
        cv2.putText(frame, 'Drowsy!', (50, 50), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 0, 255), 2)  # 显示疲劳警告

    frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)  # 将BGR格式转换为RGB格式
    img = QImage(frame.data, frame.shape[1], frame.shape[0], QImage.Format_RGB888)  # 创建图像对象
    self.label.setPixmap(QPixmap.fromImage(img))  # 在GUI界面上显示图像

def closeEvent(self, event):
    self.cap.release()  # 释放摄像头
    event.accept()


代码块输出突然变成文本框输出了,说实话我是觉得不太满意的。
还给了一句提示:

在上面的代码中,CNN模型保存在名为model.h5的文件中,可以根据实际情况修改文件名和路径。GUI界面中包含了一个用于显示摄像头图像的标签,以及一个用于显示疲劳次数的标签。检测函数每50毫秒运行一次,首先读取一帧图像,然后使用人脸检测器检测人脸,并对每个检测到的人脸进行疲劳检测。如果预测为疲劳,则将状态设置为True,并在图像上显示警告信息和边界框,同时更新疲劳次数并在界面上显示。最后将图像转换为QImage格式,并在GUI界面上显示。程序运行时,需要使用python filename.py命令来运行,其中filename.py为保存代码的文件名。

虽然3.5输出的比4多,但从体验上来说,4的提问体验更好一些

第二个问题

请你扮演一位计算机物联网专业的学术教授,给我一些指导,我会把我的问题放到{}里,我的第一个问题是{如果我想阐述线上学习监测系统市场在中国的发展态势,我该具体引用哪里的数据来做支撑,请告诉我不少于五个这样的数据网站}

GPT4回答:
扮演一位计算机物联网专业的学术教授,我很高兴为您提供关于线上学习监测系统市场在中国发展态势的数据支撑。以下是五个可靠的数据来源网站,您可以从这些网站获取相关数据:

国家统计局(National Bureau of Statistics of China):
网址:http://www.stats.gov.cn/
国家统计局是中国官方的统计数据发布机构,您可以在这里找到关于中国在线教育市场及其发展的统计数据。

中国互联网络信息中心(China Internet Network Information Center, CNNIC):
网址:http://www.cnnic.cn/
CNNIC是中国的互联网信息中心,负责收集和发布与互联网相关的各种数据。您可以在此找到关于线上学习监测系统市场的一些数据。

iiMedia Research(艾媒咨询):
网址:http://www.iimedia.cn/
iiMedia Research是一家专注于互联网行业的研究机构,提供丰富的在线教育市场数据和分析报告。您可以从这里获取关于线上学习监测系统市场在中国的发展数据。

艾瑞咨询(iResearch):
网址:http://www.iresearch.com.cn/
艾瑞咨询是中国著名的互联网行业市场研究公司,提供在线教育市场的专业研究报告和数据分析。从这里,您可以获取线上学习监测系统市场在中国的相关数据。

Frost & Sullivan(弗若斯特沙利文):
网址:https://ww2.frost.com/zh-cn/
Frost & Sullivan是一家全球知名的市场研究和咨询公司,在线教育领域也有相关报告。您可以在这里找到关于线上学习监测系统市场在中国的发展数据。

在这些网站上,您可以找到关于线上学习监测系统市场在中国的发展数据。请确保在撰写论文时正确引用这些数据来源,以增加论文的可靠性。

从每个网页都能打开这一点来看就甩了3.5两条街。现在我们来看看3.5的表现
GPT3.5的回答如下:

作为计算机物联网专业的学术教授,我可以为您提供一些有用的数据网站,以支持您关于线上学习监测系统市场在中国的发展态势的研究和分析。以下是一些可能有用的数据网站,您可以根据自己的需要选择适合您的数据来源:

国家统计局(www.stats.gov.cn)- 该网站是中国官方统计机构,提供有关中国各个领域的数据和报告,包括教育、科技和互联网等方面的数据。

教育部教育信息化和网络中心(www.edu.cn)- 该网站是中国教育部的官方网站,提供有关教育信息化和在线学习等方面的数据和报告。

中国互联网信息中心(www.cnnic.net.cn)- 该网站是中国政府主管的互联网信息统计和研究机构,提供有关中国互联网和在线教育等方面的数据和报告。

智研咨询(www.askci.com)- 该网站是一家专业的市场调研和咨询公司,提供有关各种行业和市场的数据和报告,包括在线教育和学习监测系统市场的数据和分析。

iResearch(www.iresearch.com.cn)- 该网站是中国领先的市场调研和咨询公司之一,提供有关中国互联网和在线教育等方面的数据和分析报告。

以上是我为您推荐的一些有用的数据网站,您可以在这些网站上查找和收集关于线上学习监测系统市场在中国的发展态势的数据和分析报告,以支持您的研究和分析。当然,在使用这些数据时,您需要仔细阅读数据来源和报告的说明,并评估其可靠性和适用性。

注意,上述的网站不能直接打开,但GPT4给出的网站是都可以直接打开的。可以看到还是有些区别的,给出的网站有两个重复,有三个是不一样的。

再看看数学题的表现:
1块钱10个桃子,3个桃核换一个桃子,请问10块钱最多能吃几个桃子?

4.0回答

假设我们有10块钱,首先我们可以用这10块钱买到100个桃子,因为1块钱可以买到10个桃子。

然后,我们可以用这100个桃子的核换桃子。100个桃子共有100个桃核,那么可以换33个桃子(剩下1个桃核)。现在我们有33个新的桃子。

再次使用这33个桃子的核换桃子。33个桃子共有33个桃核,那么可以换11个桃子。现在我们有11个新的桃子。

最后,我们用这11个桃子的核换桃子。11个桃子共有11个桃核,加上之前剩下的1个桃核,共有12个桃核,那么可以换4个桃子。

总计,我们可以吃到100(原本买到的)+ 33(第一次换到的)+ 11(第二次换到的)+ 4(最后一次换到的)= 148个桃子。所以10块钱最多能吃到148个桃子。


可以看出这个答案还是有一些缺陷的,因为递归到最后,换了4个桃子还是可以再换一个桃子的,最后多出来两个桃核。
不过总体来说,做数学题方面比3.5靠谱多了

3.5的回答:

首先我们可以用10元钱去买100个桃子。然后,我们可以将其中的30个桃子核换成10个新的桃子,这样我们就有了110个桃子。然后,我们再将其中的33个桃子核换成11个新的桃子,这样我们就有了121个桃子。我们可以一直重复这个过程,直到我们无法再换到新的桃子为止。换句话说,我们需要求解一个不等式:

10 + (10 / 3) + (10 / 9) + … < 100

其中,第一项10表示我们花10元钱买了100个桃子,后面的每一项表示我们用3个桃核换一个新的桃子,然后再用这些新的桃子去换更多的桃子,直到无法再换为止。将这个不等式化简,我们可以得到:

10 * (1 - 1/3 + 1/9 - 1/27 + …) < 100 - 10/3

这是一个等比数列求和的问题,因此可以使用等比数列求和公式来计算:

S = a / (1 - r)

其中,a是第一项10,r是公比1/3。将这些值代入公式,我们可以得到:

S = 10 / (1 - 1/3) = 15

因此,用10元钱可以买到15个桃子,其中3个桃核可以换1个新的桃子,因此我们最多能吃到15 + 5 = 20个桃子。


3.5的回答就好像是用最正经的口吻回答着最离谱的答案。建议不要轻易尝试。

再试一下简单的鸡兔同笼问题
鸡和兔共49只,一共有100条腿,问鸡和兔各有多少只?
4.0回答:
设鸡有x只,兔有y只。根据题意,我们可以得到以下两个方程:

x + y = 49 (1)
2x + 4y = 100 (2)

我们可以从方程(1)解出x:

x = 49 - y

然后将这个结果代入方程(2):

2(49 - y) + 4y = 100

解这个方程,我们得到:

98 - 2y + 4y = 100

将方程化简,得:

2y = 2

除以2,得:

y = 1

将y的值代回x的表达式,我们得到:

x = 49 - 1 = 48

所以,鸡有48只,兔有1只。

3.5回答:
假设鸡的数量为 x,兔的数量为 y。因为题目中提到鸡和兔的数量之和是 49,所以可以得到方程式:

x + y = 49

另外,因为鸡有两条腿,兔有四条腿,所以它们的腿的总数可以表示为:

2x + 4y = 100

通过解这个方程组,可以得到鸡和兔的数量:

首先将第二个方程式除以 2,得到 x + 2y = 50。

将这个式子代入第一个方程式中,得到:

x + (x + 2y) = 49

化简得到 2x + 2y = 49,也就是 x + y = 24.5。

但是,鸡和兔的数量必须是整数,因此上述结果不符合题意。由于题目中要求鸡和兔的数量都是整数,因此只能存在以下两种情况:

鸡和兔的数量都是偶数。
鸡和兔的数量都是奇数。
由于鸡和兔的数量之和是 49,这意味着两者必须同奇偶。同时,如果鸡和兔的数量都是偶数,则它们的腿的总数也必须是偶数,而 100 是一个奇数,因此只能存在第二种情况。

因此,假设鸡的数量为偶数 2x,兔的数量为奇数 2y+1。代入方程式中:

2x + 4(2y+1) = 100

化简得到 x + 2y = 23.5。

由于鸡和兔的数量都必须是整数,因此只能让鸡的数量为 24,兔的数量为 25。因此,鸡有 24 只,兔有 25 只。

可以看出4.0算对了,3.5一如既往在胡说八道。

总结一下:

4.0比3.5优秀了很多,但说实话还有上升空间,期待后面的进化。我感觉4.0已经通过图灵测试了,也有一定的可能是我误会了。

结语

没有广告

有关【回眸】ChatGPT Plus(GPT4体验卡)的更多相关文章

  1. 西安华为OD面试体验 - 2

    西安华为OD面试体验开始投简历技术面试进展工作进展开始投简历去年一整年一直在考研和工作之间纠结,感觉自己的状态好像当时的疫情一样差劲。之前刚毕业的时候投了个大厂的简历,结果一面写算法的时候太拉跨了,虽然知道时dfs但是代码熟练度不够,放在平时给足时间自己可以调试通过,但是熟练度不够那面试当时就写不出来被刷了。说真的算法学到后期我感觉最重要的是熟练度和背板子(对于我这种普通玩家来说),面试题如果一上来短时间内想不出思路就完蛋了。然后由于当时找的工作不是很理想就又想考研了。但是考研是有风险的,我自我感觉自己可能冲不上那个学校,而找工作一个没成可以继续找嘛。本着抱着试试看的态度在boss上投了简历,

  2. 「想体验ChatGPT中文聊天?」那快进来,你用不上算我输 - 2

    ♥️作者:白日参商🤵‍♂️个人主页:白日参商主页♥️坚持分析平时学习到的项目以及学习到的软件开发知识,和大家一起努力呀!!!🎈🎈加油!加油!加油!加油🎈欢迎评论💬点赞👍🏻收藏📂加关注+!「想体验ChatGPT中文聊天?」那快进来,你用不上算我输项目场景:项目条件一、那就开始吧1、安装ChatGPT-Desktop2、OpenAPI设置二、使用实例恭喜你!!!配置成功了!!!API和URL都是博主免费提供给大家的!!!恭喜你!!!配置成功了!!!API和URL都是博主免费提供给大家的!!!🎈🎈加油!加油!加油!加油🎈欢迎评论💬点赞👍🏻收藏📂加关注+!项目场景:近几个月可以说ChatGPT是火得一

  3. 基于RTS超低延时直播优化强互动场景体验 - 2

    RTS在阿里云视频直播的基础上进行底层技术优化,通过集成阿里云播放器SDK,支持在千万级并发场景下节点间毫秒级延时直播的能力,弥补了传统直播存在3~6秒延时的问题,确保了超低延时、低卡顿、秒开流畅的直播观看体验。本文介绍了基于RTS超低延迟直播优化强互动场景体验的最佳实践方案,并以阿里云播放器Aliplayer为例,详细介绍RTS超低延迟拉流接入、自动降级、排障信息获取等逻辑的实现,助力企业打造互动直播行业的产品竞争力。适用场景该方案适用于对超低延迟直播有诉求的客户,尤其是业务中存在强互动场景直播的场景。强互动场景直播主要是指对主播和观众存在互动,或观众存在更高实时性观看、画面互动需求的情况,

  4. 评测:对接GPT-4的NewBing使用体验变化 - 2

    GPT-4是OpenAI发布的最新一代语言模型,于2023年3月14日正式发布,并通过API和ChatGPTPlus平台向用户开放。微软也证实,在GPT-4正式发布之前,就已经在部分版本的Bing中使用GPT-4技术。本文旨在对使用GPT-4技术的NewBing进行中立、专业的使用评测,探讨其使用体验的变化。界面与限额早于2月26日小编获得Newbing试用资格,届时Newbing初体验并不理想,限制多,例如对话只能持续5条自动终止,对话字符受限,生成效果不尽如人意。然而今日对接GPT-4全新bing额度扩充至15条,且对话字数扩容至2000字。Newbing提供了三种模式选项,即创造力、平衡

  5. 腾讯云区块链服务平台(TBaaS)长安链体验网络公测试用感受 - 2

    前阵InfoQ社区看到腾讯云腾讯云区块链服务平台(TBaaS)长安链体验活动,一顿操作猛如虎报了个名,体验完用一个字概括:强。非要再加几个字的话,总体感受下来装配模式灵活高效,配套工具完整辩解。话不多说开始主题本文目录结构分为区块链分类和TBaaS平台介绍、TBaaS平台上链教程三个部分一、区块链分类:大体上来说,区块链可分为公链,联盟链,私有链三种:公有链(PublicBlockchain)公有链是指任何人都能参与的区块链。公有链是去中心化程度最高的区块链,不受机构控制,整个账本对所有人公开透明。任何人都能在公有链上查询交易、发送交易、参与记账。加入公有链不需要任何人授权,可以自由加入或者离

  6. 生成式人工智能(AIGC)综述:ChatGPT从GPT-4到GPT-5可以一统AIGC? - 2

    原文题目:《ACompleteSurveyonGenerativeAI(AIGC):IsChatGPTfromGPT-4toGPT-5AllYouNeed?》文章链接:https://arxiv.org/abs/2303.11717https://arxiv.org/abs/2303.11717引言:随着ChatGPT的火热传播,生成式AI(AIGC,即AI生成的内容)因其分析和创造文本、图像等能力而在各地引起了轰动。在如此强烈的媒体关注下,我们几乎不可能错过从某个角度欣赏AIGC的机会。 “一个具有未来科幻感的机器人坐着,手握画笔正在创作一幅五颜六色的图画“由dalle2创作在AI从纯分析转

  7. 在MySQL中使用MD5加密体验 - 2

    什么是MD5?MD5信息摘要算法(英语:MD5Message-DigestAgorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hashvalue),用于确保信息传输完整一致。MD5由美国密码学家罗纳德·李维斯特(RonaldLinnRivest))设计,于1992年公开,用以取代MD4算法。这套算法的程序在RFC1321标准中被加以规范。1996年后该算法被证实存在弱点,可以被加以破解,对于需要高度安全性的数据,专家一般建议改用其他算法,如SHA-2。2004年,证实MD5算法无法防止碰撞(collision),因此不适用于安全性认证,如SSL公开密钥

  8. 【ChatGPT】基于tensorflow2实现transformer(GPT-3.5) - 2

    请记住,您是一位NLP领域的专家和优秀的算法工程师。使用带有tensorflow2.0subclassapi的python从头开始实现transformer模型。全部内容如下:构建transformer模型架构和依赖层;生成并预处理一些假样本数据,用于训练上面构建的模型;上面生成的样本数据的训练模型示例教程;上面生成的样本数据的预测模型示例教程;上面生成的示例数据的部署模型示例教程;最后,您所有的答案都以markdown格式呈现。You:Rememberyou’reanexpertandexcellentalgorithmengineerinNLParea.Implementtransform

  9. 法大大音视频双录新品,打造企业合规新体验 - 2

    “法大大音视频双录产品在保障线上签署安全合规的基础上,充分尊重‘客户的客户’的体验感。相比签约后再点击上传身份认证资料进行证据保全,我们更倾向在签约当下就获取签约主体的同意,将签署意愿认证及签约过程同步上传至司法链,进行数据存证,保证线上签约的合规闭环。整个流程用户只需点选一次,无多余操作。同时,我们的产品不仅可灵活适配法大大旗下产品,也可与客户其他业务系统快速对接,满足电子合同场景之外的取证和存证需求。”——张霖法大大证据中心副总经理2020年,《中国银保监会办公厅关于进一步做好疫情防控金融服务的通知》指出:要加强科技应用,创新金融基础服务方式。各银行保险机构要积极推广线上业务,在有效防控风

  10. javascript - 如何在没有 bundler 的情况下使用 Babel,但具有类似于 webpack 的开发体验? - 2

    我正在尝试使用ES6modules构建一个新项目没有捆绑。我还是想用babel-7将TypeScript和JSX翻译成JS。我发现很难弄清楚如何为它设置开发服务器。我找不到任何类似于webpack-dev-server的“babel-dev-server”(热模块重新加载、浏览器同步、文件观察器)。一种可能是使用browsersync作为静态服务器,例如dist并并行运行类似babelsrc--out-dirdist--watch的东西。但这不包括热重载,对我来说似乎有点笨拙。此外,如果您可以为JS文件提供哈希以更好地控制缓存,那么它对于构建和开发步骤仍然有用。或者我可以配置像webp

随机推荐