11月7日凌晨的OpenAI第一次开发者大会,除了速度提升、服务使用费用的减少、开发者生态以外,最让我震撼的是,GPTS是ChatGPT的定制版本,是通过简单配置就可以完成一个使用ChatGPT、集成系统和数据服务的智能助手。比如OpenAI开发者体验主管演示的,当你想去一个城市旅游,那么旅游攻略、城市景点轨迹设计、航班登机、汇率计算等等都可以智能完成。感觉ChatGPT马上就会变成一个24x7完全智能的私人管家。
做点什么哪,一直很喜欢买彩票,要不让ChatGPT帮我推荐一下大乐透的号码吧。只是为了娱乐,提倡快乐彩票、理智购买。
第一步、我们使用ChatGPT-4来看看什么样的提示词可以得到我们想要的分析、推荐结果。ChatGPT是很有原则的,如果你直接让它预测彩票号码,它会非常委婉的拒绝。
好吧,那我就把大乐透的号码球产生的过程描述一下吧,并且提出一个简单的概率问题。
你是数据分析大师,我将35个完全相同的小球放在一个容器中,小球上标记处1到35不重复的数字,容器有一个圆形小洞,我每次旋转容器让一个小球掉出,再旋转容器让另外一个小球掉出,直到一共掉出5个小球算是一组,我会记录每次掉出的小球的数字
次数 | 掉出小球上面的数字 |
1 | 8, 11, 19, 22, 29 |
2 | 4, 6, 7, 9, 24 |
...... | ....... |
23 | 4, 5, 18, 20, 25 |
列出前10个出现概率最大的数字和概率值
上面加粗的字体就是我要使用的提示词,在提交给ChatGPT的时候出现了几种情况。
第一种情况,由于受到黑客攻击,ChatGPT的交互界面无法响应。可以到OpenAI官网来查看更新
第二种情况,ChatGPT的分析出现间断
当然它会提供解释和建议
第三种,也是最理想的情况就是系统可以完成分析工作,我们可以看到结果产生。
我把代码放在编译器中方便阅读
# Now we will input the complete data provided by the user to calculate the probabilities correctly.
# Data provided by the user
ball_drops_complete = [
[8, 11, 19, 22, 29],
[4, 6, 7, 9, 24],
# ... all the way to ...
[1, 5, 7, 12, 13]
]
# Calculate the total number of rounds
num_rounds = len(ball_drops_complete)
# Flatten the list of lists to get one big list of all the balls dropped
all_balls_dropped = [ball for round in ball_drops_complete for ball in round]
# Count the frequency of each ball number
ball_frequency = {ball: all_balls_dropped.count(ball) for ball in range(1, 36)}
# Calculate the probability for each ball number
# Since each round 5 balls are dropped, the total number of balls dropped is 5 times the number of rounds
total_balls_dropped = 5 * num_rounds
ball_probability = {ball: freq / total_balls_dropped for ball, freq in ball_frequency.items()}
# Sort the ball numbers by their probability and get the top 10
top_10_balls = sorted(ball_probability.items(), key=lambda item: item[1], reverse=True)[:10]
top_10_balls
除了代码,ChatGPT也生成了基于这个代码运行的结果
很奇怪的一点是,10个出现次数最多的数字是不对的,几率也是不对的。如果我用自己的环境跑完的结果如下就是正确的。
根据自己的经验,原因可能有几个
- ChatGPT最后的结果并不是用自己生成的代码生成出来的
- ChatGPT在跑数据的时候提示词中的数据信息有丢失
先写到这,后续会更新的是:
- 考虑数字组合出现的概率
- 尝试将这部分逻辑添加到GPTs中
如果需要代码和提示词请留言,欢迎多多拍砖