ChatGPT 教程--生成代码

article/2024/9/7 19:30:11

ChatGPT 变生产力工具

chatGPT是一种基于人工智能技术的自然语言处理模型,它使用了深度学习算法,可以对人类语言进行理解和生成。chatGPT可以用于对话系统、智能客服、问答系统等场景,能够实现自然、流畅的对话。

chatGPT的核心技术是基于GPT(Generative Pre-trained Transformer)模型,它是一种预训练语言模型,可以通过大规模的语料库进行训练,从而学习到语言的规律和特征。在实际应用中,chatGPT可以通过微调等方式进行定制化,以适应不同的应用场景和用户需求。

chatGPT的优点包括:

  1. 自然流畅:chatGPT可以生成自然、流畅的语言,使得对话更加真实。
  2. 智能化:chatGPT可以理解用户的意图和语境,从而提供更加智能化的回答。
  3. 定制化:chatGPT可以通过微调等方式进行定制化,以适应不同的应用场景和用户需求。
  4. 高效性:chatGPT可以实现快速的响应和处理,提高用户体验。

提示:chatGPT生成代码秒便生产力工具,Ctrl+'C' / Ctrl+'V'变得更容易。chatGPT 链接 [www.laicj.cn](https://laicj.cn)。

文章目录

  • ChatGPT 变生产力工具
  • 1. 变生产力过程
    • 1.1 编写需求
    • 1.2 生成代码
    • 1.3 验证代码
  • Tips
  • 总结


1. 变生产力过程

利用chatGPT对自然语言解析和庞大的知识库,实际使用中需求代码。

Created with Raphaël 2.2.0 chatGPT 描述需求 验证结果? 生产力(代码) yes no

本篇文章使用网络搜索到chatGPT工具生成代码。

1.1 编写需求

运行环境:树莓派4B,Ubuntu20.04
数组包含4个连续GPIO,使用sysfs接口按照数组申请
主菜单包含申请GPIO选项和退出选项,选择gpio选项后进入子菜单;子菜单中包含控制GPIO高电平、低电平和退出选项,选择高电平选项控制GPIO高电平,选择低电平选项控制GPIO低电平,选择退出回到主菜单;主菜单可选择其他选项

1.2 生成代码

  • 本文执行环境为 Ubuntu20.04,选择 bash 脚本
  • 详细描述功能需求
  • 生成代码

genrator

以下是实现该功能的 Bash 代码:

#!/bin/bash# 定义GPIO数组
gpio_array=(17 18 19 20)# 申请GPIO
function request_gpio() {for gpio in ${gpio_array[@]}; doecho $gpio > /sys/class/gpio/exportdoneecho "GPIO已申请"
}# 控制GPIO高电平
function set_gpio_high() {echo "请输入要控制的GPIO编号(17-20):"read gpio_numif [[ $gpio_num -ge 17 && $gpio_num -le 20 ]]; thengpio_index=$(($gpio_num-17))echo "1" > /sys/class/gpio/gpio${gpio_array[$gpio_index]}/valueecho "GPIO${gpio_num}已设置为高电平"elseecho "输入的GPIO编号无效"fi
}# 控制GPIO低电平
function set_gpio_low() {echo "请输入要控制的GPIO编号(17-20):"read gpio_numif [[ $gpio_num -ge 17 && $gpio_num -le 20 ]]; thengpio_index=$(($gpio_num-17))echo "0" > /sys/class/gpio/gpio${gpio_array[$gpio_index]}/valueecho "GPIO${gpio_num}已设置为低电平"elseecho "输入的GPIO编号无效"fi
}# 释放GPIO
function release_gpio() {for gpio in ${gpio_array[@]}; doecho $gpio > /sys/class/gpio/unexportdoneecho "GPIO已释放"
}# 主菜单
function main_menu() {while true; doecho "请选择操作:"echo "1. 申请GPIO"echo "2. 控制GPIO"echo "3. 释放GPIO"echo "4. 退出"read choicecase $choice in1)request_gpio;;2)gpio_menu;;3)release_gpio;;4)exit 0;;*)echo "无效的选项";;esacdone
}# GPIO子菜单
function gpio_menu() {while true; doecho "请选择操作:"echo "1. 控制高电平"echo "2. 控制低电平"echo "3. 退出"read choicecase $choice in1)set_gpio_high;;2)set_gpio_low;;3)break;;*)echo "无效的选项";;esacdone
}# 运行主菜单
main_menu

在树莓派上运行该脚本,即可进入主菜单,选择申请GPIO选项后,程序会自动申请数组中定义的4个GPIO。选择控制GPIO选项后,进入子菜单,可以选择控制GPIO高电平、低电平或退出。选择退出后,回到主菜单,可以选择释放GPIO或退出程序。

1.3 验证代码

本文使用GPIO核对原理图后改为 GPIO2_A0-3,需要修改GPIO编号。
GPIO编号计算公式:32 x 组号 + 8 x 组别 + io号
以GPIO2_A1为例,GPIO2组号是2,A1组别是0(A为0 B为1 C为2 D为3) ,管脚偏移量是1
GPIO编号 = 32 x 2 + 8 x 0 + 1 = 65,然后计算出其它为 64 66 67。

#!/bin/bash^M
^M
# 定义GPIO数组^M
gpio_array=(64 65 66 67)^M
^M
# 申请GPIO^M
function request_gpio() {^Mfor gpio in ${gpio_array[@]}; do^Mecho $gpio > /sys/class/gpio/export^Mdone^Mecho "GPIO已申请"^M
}^M
  1. Windows环境下验证代码
    右击 --> 文本文档 --> 重名 --> test.sh -->粘贴刚复制代码
    –> 导入到树莓派 --> 将 dos格式的 test.sh转为 unix下的文档
    –> 增加执行权限 --> 验证执行结果
dos2unix test.sh
chmod +x test.sh
sh test.sh
  1. Linux环境下验证代码
    编辑test.sh -->粘贴刚复制代码–> 增加执行权限 --> 验证执行结果
gedit test.sh
# 粘贴后保存
chmod +x test.sh

执行开启测试,本文使用Linux环境,可直接编辑直接执行。

. ./test.sh
arm@Ubuntu20:~$ ./test.sh 
请选择操作:
1. 申请GPIO
2. 控制GPIO
3. 释放GPIO
4. 退出
1
./test.sh: line 9: /sys/class/gpio/export: Permission denied
./test.sh: line 9: /sys/class/gpio/export: Permission denied
./test.sh: line 9: /sys/class/gpio/export: Permission denied
./test.sh: line 9: /sys/class/gpio/export: Permission denied
GPIO已申请
请选择操作:
1. 申请GPIO
2. 控制GPIO
3. 释放GPIO
4. 退出

核验执行结果并不是预想,对比需求描述与生成结果。发现描述有误,修改描述重新生成,喜提再来一次。

#!/bin/bash# 定义GPIO数组
gpio_array=(64 65 66 67)# 导出GPIO
for gpio in ${gpio_array[@]}; doecho $gpio > /sys/class/gpio/export
done# 设置GPIO为输出模式
for gpio in ${gpio_array[@]}; doecho out > /sys/class/gpio/gpio$gpio/direction
done# 定义菜单选项
menu_options=("GPIO ${gpio_array[0]}" "GPIO ${gpio_array[1]}" "GPIO ${gpio_array[2]}" "GPIO ${gpio_array[3]}" "退出")# 定义控制选项
control_options=("高电平" "低电平" "退出")# 定义函数:控制GPIO电平
function control_gpio() {gpio=$1control=$2if [ $control == "高电平" ]; thenecho 1 > /sys/class/gpio/gpio$gpio/valueelif [ $control == "低电平" ]; thenecho 0 > /sys/class/gpio/gpio$gpio/valuefi
}# 主循环
while true; do# 显示菜单echo "请选择要控制的GPIO:"for i in ${!menu_options[@]}; doecho "$i. ${menu_options[$i]}"done# 读取用户输入read -p "请输入选项编号:" choice# 处理用户输入if [ $choice -ge 0 ] && [ $choice -lt ${#menu_options[@]} ]; thenif [ $choice -eq $((${#menu_options[@]} - 1)) ]; then# 退出breakelse# 进入控制子菜单gpio=${gpio_array[$choice]}while true; do# 显示控制子菜单echo "请选择要进行的操作:"for i in ${!control_options[@]}; doecho "$i. ${control_options[$i]}"done# 读取用户输入read -p "请输入选项编号:" control_choice# 处理用户输入if [ $control_choice -ge 0 ] && [ $control_choice -lt ${#control_options[@]} ]; thenif [ $control_choice -eq $((${#control_options[@]} - 1)) ]; then# 退出控制子菜单breakelse# 控制GPIO电平control=${control_options[$control_choice]}control_gpio $gpio $controlfielseecho "无效的选项编号,请重新输入!"fidonefielseecho "无效的选项编号,请重新输入!"fi
done# 取消导出GPIO
for gpio in ${gpio_array[@]}; doecho $gpio > /sys/class/gpio/unexport
done

该脚本使用sysfs接口控制GPIO,首先将需要使用的GPIO导出并设置为输出模式,然后进入主循环,显示菜单并读取用户输入,根据用户选择进入控制子菜单或退出程序。在控制子菜单中,显示控制选项并读取用户输入,根据用户选择控制对应GPIO的高低电平。最后取消导出GPIO。

测试后仍然没达到要求,再来一编。

Tips

  1. Windows下编辑文本文档为 dos环境在每行末尾会增加^M,执行时会引起报错;须手动清除再执行。
  2. Linux 执行时要确认执行文件路径
    . + /path/file 为绝对路径
    sh + path/file 为相对路劲

总结

科技改变生活。


http://chatgpt.dhexx.cn/article/12vKeCGY.shtml

相关文章

chatGPT代码写的有点好啊,程序员要失业了?

AI神器ChatGPT 火了。 能直接生成代码、会自动修复bug、在线问诊、模仿莎士比亚风格写作……各种话题都能hold住,它就是OpenAI刚刚推出的——ChatGPT。 有脑洞大开的网友甚至用它来设计游戏:先用ChatGPT生成游戏设定,再用Midjourney出图&am…

ChatGPT实现代码生成

代码生成 就代码生成而言,ChatGPT 是一款卓越的工具,它为开发者提供强大的功能。ChatGPT 可以运用其出色的自然语言处理技术,深入理解和解释开发者的需求,快速生成适合的代码片段。对于那些繁琐的任务或者重复的代码,…

Chatgpt:原理、公式和代码,从基础走近chatgpt

原理 简单理解,ChatGPT的原理就是极其强大的语言模型作为打底(GPT系列),加上为“CHAT”而训练,平滑的多语种交互,造就了今天的chatGPT。下面的解释顺序为,语言模型,OpenAI&#xff…

chatgpt-4生成代码,看这一篇就够了

chatgpt-4生成代码,看这一篇就够了 cursor示例pythondbscan 聚类voronoi 图像分割手写数字识别圆柱绕流 matlab表白程序常微分方程常微分方程组2048小游戏 C/C正则表达式匹配删除有序数组中的重复项n 皇后问题 总结 今天发现一个OpenAI的partnership基于gpt-4开发的…

50行不到的代码,实现自己的ChatGPT服务

效果图 废话不多说直接上代码 代码1:后端纯净代码 import openai import time# 定义 OpenAI API key openai.api_key "请在此输入你的key" # 定义模型 ID model_engine "text-davinci-003" # 定义对话历史记录 conversation_history []# …

火遍全球的ChatGPT技术简介与主干网络代码

如果说当下最火的AI技术和话题是什么,恐怕很难绕开ChatGPT。各大厂商都在表示未来要跟进ChatGPT技术,开发在自然语言处理智能系统,可见其影响力。本篇博客追个热度,来简单的介绍下ChatGPT到底是一项什么技术,究竟如何完…

ChatGPT评出中国排名前的30大学及全球排名,原因很好玩

中国排名前50的大学在中国国内及在全世界的排名,还有原因 以下是中国排名前50位的大学及其在全球的排名和原因: 清华大学 (17):清华大学是中国著名的高水平研究型综合性大学,其在工程学、计算机科学和自然科学等领域具有很高的研究…

【chatGPT演示】

首发网站 天风的人工智能小站 前言:chatGPT 一、注册 https://chat.openai.com/auth/login 1、点击右边注册sign up 2、可以使用自己的邮箱或者谷歌邮箱注册 验证邮箱输入姓名 3、现在到了最关键的一步 因为openAI不对中国开放所以,必须要购买一个外…

聊一聊ChatGPT

最近突然ChatGPT火了,这一款人工智能聊天机器人程序的月活用户已突破1亿,成为史上增长最快的消费者应用。各大IT企业也纷纷宣布拥抱ChatGPT,包括微软、谷歌等。中国国内的百度、科大讯飞也在准备推出国内版的类似ChatGPT的人工智能语音应用。…

chatgpt如何自动生成角色prompt模板

chatgpt如何自动生成角色prompt模板 作者:虚坏叔叔 博客:https://xuhss.com 早餐店不会开到晚上,想吃的人早就来了!😄 一、角色prompt模板 下面是套图的chatgpt模板,你可以手动的进行填写。将角色的描述填…

报道称,中国互联网巨头将推出自己的 ChatGPT 版本

中国互联网巨头百度计划推出自己的 ChatGPT版本。 周日的一份报告称,该公司将于 3 月推出其人工智能聊天机器人 一位自称了解此事的人士告诉彭博社 。 消息人士称,该工具尚未命名,一开始将并入百度的主要搜索服务。 有关的 ChatGPT&#xff1…

ChatGPT自然语言处理的新里程碑

ChatGPT中文网是一个面向中国用户的聊天机器人网站,旨在为国内用户提供一个自然的环境、有趣、实用的聊天体验。它使用最新的自然语言处理技术来帮助用户更好地理解他们的聊天对话,还可以帮助用户解决日常生活中的问题,提供有趣的谈话内容以及…

ChatGPT:短期被高估

ChatGPT有多热 ChatGPT有多热,我们可以通过百度指数看一下。 伴随着ChatGPT席卷而来,国内诸多业内人士热议,包括求加入。典型的是前美团联合创始人王慧文。在前两天,他就曾在朋友圈中发布“人工智能宣言”,表示以5000万…

【花雕学AI】4月5日,ChatGPT中国财经背景分析:昨天沪指重返3300点,这说明了什么?

在这里插入图片描述 附录: 一、ChatGPT是一个可以和你聊天的人工智能程序,它可以用文字回答你的问题,也可以根据你的提示写出文章、歌词、代码等内容。ChatGPT是由一个叫OpenAI的机构开发的,它使用了一种叫做GPT的技术&…

国产ChatGPT Al大模型排行榜(TOP 30)

关注、星标公众号,精彩内容每日送达 来源:网络素材 1) AI不会臣服于人类的工具 2)AI具备了思想而不被人类理解 3)AI是具备有生命特征的生命 4)中国智慧的抽象算法比西方大数据算法维度要高,八卦…

ChatGPT的未来发展

文章目录 1.什么是ChatGPT2.ChatGPT的基础技术3.ChatGPT工作原理4.ChatGPT应用场景5.ChatGPT局限性6.ChatGPT的未来发展 ✍创作者:全栈弄潮儿 🏡 个人主页: 全栈弄潮儿的个人主页 🏙️ 个人社区,欢迎你的加入&#xff…

ChatGPT团队9位华人揭秘:3清华、1北大、1华科

Datawhale分享 分析:ChatGPT团队,来源:AIGC开放社区 Aminer和智谱研究发布了《ChatGPT团队背景研究》报告,深度揭示了这款火爆全球应用的背后团队的总体人员架构。 调查发现,ChatGPT团队只有87人,其显著特…

ChatGPT 从入门到精通

ChatGPT 从入门到精通 适用人群: 互联网一线对ChatGPT感兴趣的划时代先驱者们 内容来源: 内容均出自网络 创建时间: 2023年2月9日 最近更新: 2023年3月29日(每天中午十二点准时更新) 文档内容:分享的内容包括但不限于赚钱引流、实际落地、最新资讯、未来发展、等多个模块。 文…

聊聊中国ChatGPT的应用场景!

01中国版ChatGPT技术原理 首先,ChatGPT是由大量的文本数据进行训练得到的。这些数据包括文章、书籍、新闻报道等,通过对这些数据的学习,ChatGPT可以自动地学会语言的语法、词汇和惯用语等知识。 其次,ChatGPT采用了一种被称为“…

人工智能里程碑ChatGPT之最全详解图解

人工智能里程碑ChatGPT之最全详解图解 1. ChatGPT的前世今生1.1 ChatGPT演化路线1.2技术推进路线 2.ChatGPT主要功能及应用领域2.1 主要功能2.2 应用领域 3.1ChatGPT原理3.1 ChatGPT基石之Transformer3.1.1Transformer结构图3.1.2 Transformer结构图 * 关于Transformer的详细原…