ChatGPT优化Python代码的小技巧

使用 chatGPT 优化代码并降低运行时的云成本
许多开发人员说“过早的优化是万恶之源”。

这句话的来源归功于Donald Knuth。在他的书《计算机编程的艺术》中,他写道:

“真正的问题是,程序员在错误的时间和错误的地方花费了太多时间来担心效率;过早的优化是编程中万恶之源。”

这句话起源于软件开发的早期阶段,当时为了优化目的而重写代码会消耗开发人员的大量时间,但预计只会产生非常有限(如果有的话)的成本节省。

在当今时代,随着生成的 AI 产品变得越来越容易获得,重写代码成为一项可以非常轻松地完成的任务,借助诸如 chatGPT 之类的工具。

在这个简单的示例中,我将演示如何在不到一分钟的时间内优化一个小的 python 脚本,开发人员方面的工作量最少,同时创造显着减少运行时间的潜力,从而以以下形式产生更具影响力的效果降低云运营成本。

我采用了一个简单的脚本来读取 HTTP 访问日志文件,作为脚本的参数,然后打印日志中每个 HTTP 响应状态代码的出现次数。

我从一个非常简单的 chatGPT 提问开始:
在这里插入图片描述
这是 chatGPT 生成的脚本:

import sys
from collections import defaultdictdef count_status_codes(log_file):status_counts = defaultdict(int)with open(log_file, 'r') as f:for line in f:# Extract the HTTP response status code from each linestatus_code = line.split()[-2]status_counts[status_code] += 1return status_countsif __name__ == '__main__':if len(sys.argv) != 2:print('Usage: python script.py log_file')sys.exit(1)log_file = sys.argv[1]status_counts = count_status_codes(log_file)for status_code, count in status_counts.items():print(f'{status_code}: {count}')

运行原始脚本和 chatGPT 生成的脚本后,我注意到一个小差异——我没有要求输出以 JSON 格式生成,所以 chatGPT 只生成了一个简单的文本输出:
在这里插入图片描述
没过多久,chatGPT 就更新了脚本以创建 JSON 格式的输出。我问了以下问题:
在这里插入图片描述
在 chatGPT 更新后,脚本如下所示:

import sys
import json
from collections import defaultdictdef count_status_codes(log_file):status_counts = defaultdict(int)with open(log_file, 'r') as f:for line in f:# Extract the HTTP response status code from each linestatus_code = line.split()[-2]status_counts[status_code] += 1return status_countsif __name__ == '__main__':if len(sys.argv) != 2:print('Usage: python script.py log_file')sys.exit(1)log_file = sys.argv[1]status_counts = count_status_codes(log_file)print(json.dumps(dict(status_counts), indent=4))

这次更新后,两个脚本的输出看起来是一样的:
在这里插入图片描述
现在是时候向两个脚本添加一些测量并再次运行它们了。我使用时间模块来测量脚本的运行时间,添加以下代码:

import time
## All other imports and function definitions here
start_time = time.time()
main()
print("--- %s seconds ---" % (time.time() - start_time))

差异惊人:
在这里插入图片描述
我们在这里看到的是一个脚本,其功能与原始脚本完全相同,但从运行时的角度来看,性能提高了近 100 倍!

显然,这个例子并没有涵盖所有可能的边缘情况。例如,如果每个日志条目中的值以非常规顺序写入日志,则此处由 chatGPT 生成的代码不支持所需的功能,而原始脚本确实解决了这种情况。必须在生成的 AI 创建代码后对其进行审查,并确保原始功能没有受到任何损害。

如本例所示,其含义是压倒性的。我可以想象各种类似的函数和代码片段在生产系统中作为 AWS Lambda 函数(或类似资源)运行,每天在大规模操作中被触发数百万次。

总而言之,我相信像 chatGPT 这样的生成式人工智能工具可以帮助我们减轻对过早优化代码的恐惧,并在大规模生产系统中节省大量时间和云运营成本。

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

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

相关文章

为什么有很多国家以及地区要限制chatGPT的发展

作为GPT-3.5 Turbo,我可以尝试为您解答这个问题。虽然我无法提供现实世界的观点,但我可以尝试为您提供一些可能的原因。 限制ChatGPT发展的国家和地区可能有各种原因。以下是其中一些可能的原因: 1.数据隐私和安全: 人们担心使用…

ChatGPT大封号,注册功能关闭!亚洲成重灾区,网友自救喊话:不要登录,不要登录...

明敏 萧箫 发自 凹非寺量子位 | 公众号 QbitAI “不要登录ChatGPT!” “暂时远离人工智能和ChatGPT概念板块高位股!” 就在这两天,一些关于ChatGPT的疾呼突然在各种社交平台和群聊刷屏了。 而看到这些消息的用户更是感到前所未有的惶恐。 因为…

免登录在线查询OpenAI ChatGPT API key余额

本文目录: 一、问题来源二、几个查询余额的方案1、后台直接查询2、隐藏的接口【现在不好用了】3、最新的方案 三、在线网页查询 一、问题来源 ChatGPT不断强大,用得人多。目前为止OpenAI还是会给新注册的用户送5美金,因此大部分应用还是直接…

使用chatgpt来提高你的编程能力,简直如虎添翼

下面大家跟着我的问题,可以跟着我一起向 chatgpt老师学习,相信我的问题可能你也会感兴趣。 在Java中,boolean类型的数组默认初始化为false。也就是说,如果你创建了一个boolean类型的数组,但是没有初始化它,…

基于ChatGPT的新一代辅助编程神器——Cursor

Cursor 编辑器 Cursor 这是一款与OpenAI合作并且基于GPT3的新一代辅助编程神器。它支持多种文件类型,支持格式化文本,支持多种主题,支持多语言语法高亮,支持快捷键设置,支持代码折叠、括号匹配、自动缩进等功能等功能…

ChatGPT办公自动化实战

ChatGPT从入门到精通,一站式掌握办公自动化/爬虫/数据分析和可视化图表制作 全面AI时代就在转角 道路已经铺好了 “局外人”or“先行者” 就在此刻 等你决定 让ChatGPT帮你高效实现职场办公!行动起来吧 。。。。。 还有更多。。。。,可以沟通…

ChatGPT搞砸了~,如何使用VBA导出Word文档中的图片

今年大火的ChatGPT似乎无所不能,但是它的确不是万能的,咱们来试试。 提供的代码根本无法运行,继续问,换了个代码,非常不幸的是–还是不能用。 Word VBA中并没有内置的方法可以直接导出图片,ChatGPT没有…

chatgpt赋能python:Python读取PNG文件

Python读取PNG文件 在图像处理和机器学习中,常常需要读取图像文件进行进一步处理和分析。其中,PNG是一种常见的图像格式。Python作为一种简单易学且功能强大的编程语言,也可以帮助我们轻松地读取PNG文件。在本文中,我们将介绍Pyt…

chatgpt赋能python:Python自动获取图片数据的方法

Python自动获取图片数据的方法 随着信息时代的到来,图像数据已经越来越重要。我们如何从互联网上获取大量的图片数据呢?Python提供了简单而直接的方法。本文将介绍如何使用Python自动获取图片数据,充分利用Python的编程能力,开展…

Chatgpt3可以看到图像?!

有一篇英语作文要写,但是我又比较懒,所以找gpt帮帮俺菜菜啦。但是比较不一样的是,这是一篇图表作文,那我自然需要上传表格,虽然gpt4已经出来了,但是作为一个不怎么使用gpt 的人,我还是选择不用充…

chatgpt赋能python:Python如何读取照片

Python如何读取照片 介绍 Python是一种高级编程语言,其简单易用、可扩展性强等特点,使其在数据分析、机器学习等领域得到了广泛应用。而在图像处理领域,Python同样也有着较为优异的表现。本文将介绍Python读取照片的方法,并探讨…

ChatGPT访问互联网,不神秘了

我测试了一下,它其实调用了微软必应的api,搜索了关键词而已 比如我问它:https://twitter.com/elonmusk 马斯克最近在忙什么 它的回答是: 近期,马斯克在做的一些事情包括: 在2023年的特斯拉年度股东大会…

ChatGPT API 低价上线,网友:用上 import openai,能开一家创业公司!

整理 | 屠敏 出品 | CSDN(ID:CSDNnews) 无须质疑,ChatGPT 正处于 AIGC 赛道中妥妥的 C 位。截 2022 年 12 月,ChatGPT 的月活跃用户估计超过 1 亿人。它不仅被大学教授用来作为新型教育课程的创新工具,也被…

阿里版ChatGPT已进入测试!中文聊天截图曝光,达摩院出品

来源:量子位 | 微信公众号ID:QbitAI 谷歌硬刚ChatGPT消息一出,科技圈全坐不住了。 就在前两天,阿里百度网易京东一众公司全宣布要推出类ChatGPT新产品,战况那叫一个激烈。 阿里内测中的达摩院版ChatGPT,也被…

阿里版 ChatGPT已进入测试!中文聊天截图曝光,达摩院出品

上一篇:ChatGPT修bug横扫全场,准确率达78%!程序员喜忧参半 谷歌硬刚ChatGPT消息一出,科技圈全坐不住了。 就在昨晚,阿里百度网易京东一众公司全宣布要推出类ChatGPT新产品,战况那叫一个激烈。 阿里内测中的…

WPS AI(海外版)使用体验分享

最近很幸运的通过了WPS AI海外版的内测waitlist,这里和大家分享一下使用的体验和评价。 申请与安装 WPS AI分为国内版和海外版两种,其中根据WPS自己的介绍,国内版本的模型由MinMax公司提供,海外版则是直接使用OpenAI的接口。 国…

深度学习 Deep learning

AI 前言最新AI产品 前馈神经网络Feed Forward Neural Networks模型model——感知器PerceptronXOR Problem 感知器作为通用函数近似器通用逼近定理Universal Approximation Theorem Softmax 函数one-hot encoding"Softmax loss" 损失函数 Loss functions二分类问题的交…

DNSPod十问孙子荀:电竞大神+AI专家,鹅厂程序员的双面人生

本期嘉宾 孙子荀 腾讯游戏数据科学总监 孙子荀,腾讯游戏数据科学总监。一直从事AI和数据科学技术在业务上的研究、落地工作,当前在腾讯游戏负责内容与UA生态相关的科学度量、决策优化以及产品化的工作。2011年在百度从事HPC并行化算法研究,…

结合AI学习设计模式

目录 一、设计模式概述 1.什么是设计模式 2.设计模式的类别 3.归纳 二、AI工具 1.ChatGPT 2.ChatGPT 中文训练指南 三、解读设计模式 1.应用 2.具体案例 3.代码实现 4.思路补充 一、设计模式概述 1.什么是设计模式 设计模式是指在软件开发中可以用来解决常见问题…

Interactive Natural Language Processing

本文是对《Interactive Natural Language Processing》的翻译。 交互式自然语言处理 摘要1 引言2 交互式对象2.1 人在环2.2 KB在环2.3 模型或工具在环2.4 环境在环 3 交互界面3.1 自然语言3.2 形式语言3.3 编辑3.4 机器语言3.5 共享内存 4 交互方法4.1 预训练语言模型4.2 提示…