做3d人物模型素材下载网站,html5编辑器手机版下载,公司网站与推广,平湖网站开发目录
01 背景
福利#xff1a;文末有chat-gpt纯分享#xff0c;无魔法#xff0c;无限制
02 AI 可以帮助程序员做什么#xff1f; 2.1 技术知识总结 2.2 拆解任务 2.3 阅读代码/优化代码 2.4 代码生成 2.5 生成单测 2.6 更多 AI 应用/插件
AIPRM
Voice Control for Ch…
目录
01 背景
福利文末有chat-gpt纯分享无魔法无限制
02 AI 可以帮助程序员做什么 2.1 技术知识总结 2.2 拆解任务 2.3 阅读代码/优化代码 2.4 代码生成 2.5 生成单测 2.6 更多 AI 应用/插件
AIPRM
Voice Control for ChatGPT
ChatGPT Sidebar
著名应用工具使用体验Bing Copilot、ChatGPT、Google Bard
Google Bard (LaMDA)Google 近期发布的AI工具目前只支持英文。特点是能够给出多个回答而且响应速度很快。集成了 Google it点击之后会帮你生成一个最适合你的问题的 google 搜索关键词。这算是和 Bing Copilot 反其道而行之一个是将 chat 集成到搜索里一个是将搜索集成到了 chat 中。
03 Prompt 能力 3.1 Prompt 是什么 3.2 Better Prompt
开发者可以利用它的上下文能力帮助自己纠正语法以及提供更好的 prompt 的训练。
04总结 01 背景
福利文末有chat-gpt纯分享无魔法无限制
尤记得每个月「本月全球最流行编程语言」发布的时候都会在程序员届掀起腥风血雨。“Java 下降了一名怎么可能”、“JavaScript 又占据榜首门槛太低写个脚本就算用了吗?”、“C# 这种单平台语言也就是闭环生态内的产物了” 这类言论层出不穷大家也都乐此不疲已然是以前的流量密码。 然而这一切现在似乎已经悄悄变化了。大家开玩笑说现在使用的最多的编程语言已经是英语(自然语言)了。 现在 GPT 已经开启了人工智能狂潮。在社交圈里不聊上两句 ChatGPT感觉不只是要和时代脱节更是已经被开除 IT 籍了 笔者在 2022 年 12 月初开始体验 ChatGPT。一开始我向它提一些有趣的问题例如“告诉我 TCS 相关的知识”等等。相信绝大多数人一开始使用的时候都是如此那时候互联网上认为它的功效应该是代替知乎让 ChatGPT 作为问答知识类的平台。知乎已死的声音甚嚣尘上。 后来大家又发现它的很多回答都是胡编乱造的。例如你问它一些新上映的电影它即使不知道也会胡编乱造一通。大家又开始贬低它觉得只不过就是一个普通的聊天机器人还是尬聊型选手。 去年相关的论文的分享介绍比较少市面上的评价分析的角度还停留在认为 ChatGPT 只能针对已有知识进行总结或者是平移。 但是随着使用的人数越来越多大家才知道ChatGPT 与语言无关你用任何语言去提问它都可以很好的理解你的意思。 因为它使用的是语言模型而不是具体的某个语言库。如果还用搜索引擎的“关键词匹配”、“关键词命中”思路去思考人工智能就已经显得有些落后了。本篇在介绍 AI对话工具能如何帮助程序员工作干货满满之后将为你分享AI的正确打开方式——better prompt。 02 AI 可以帮助程序员做什么 2.1 技术知识总结 刚开始接触学习一门技术的时候难免需要去查看文档。现在的手册非常丰富。往往对于一个初学者来说需要接触的信息太多、排版五花八门学起来云里雾里。 这时候就可以借助 ChatGPT 的总结能力例如我想学习一下 K8S 的相关知识我发给它一个文档的地址让它帮我总结。 prompt: https://kubernetes.io/zh-cn/docs/concepts/overview/ 总结这篇文档。 可以看到它很好地总结了这篇中文的文档并且对每一个关键点进行了概括。用最少的语言让你能够搞懂你想要的知识点。 因为 ChatGPT 是有上下文的它知道你需要的内容是中文的总结所以在这里你继续发一篇英文的文档给它它也会用中文帮你总结。 prompt: 总结这篇文档https://kubernetes.io/docs/concepts/overview/components/ 。 目前 chatgpt 的免费版本数据库的截止时间是 2021 年也就是说如果问它比较新的内容它是无法总结的甚至是会随意编撰。例如这里询问一个关于电影《流浪地球 2》的问题让它总结一下 wikipedia 里的介绍。 prompt: 总结 https://zh.wikipedia.org/zh/%E6%B5%81%E6%B5%AA%E5%9C%B0%E7%90%832 因为这时候电影还没有上映所以之前的内容还都是错误的它的总结是不准确的。 当我们将整个网站的内容复制进来让 chatgpt 进行总结。但是这时候会发现文章太长了会收到报错。 这时候就要运用自己的想象力使用 prompt 来进行突破了。我们需要把文章进行段落拆分每一段都符合它的标准。 将内容拆分成 7 段发送完成之后它就会自动总结了。 这样才能得到了一篇文档的正确总结。 2.2 拆解任务 上文所描述的内容可以算是借助 AI 让程序猿日常生活效率提升。那么在工作当中AI 如何帮助我们提效 我们从需求端获取一个需求以后很多情况下我们的任务并不能够非常准确的估计时原因就是我们并没有将任务拆分清楚所以并不能够对每一项任务进行估计导致风险的发生。 这时候可以简要描述一下我们这次的需求点让 ChatGPT 帮我们进行任务拆解。 可以看到任务整体被拆成了一个个细小的任务。它可以很快的让我们将任务转换为 task或者是需求跟踪单。这既方便和产品经理进行沟通也便于我们自身排期。转换成 KANBAN 模式也便于了解当前进度。 如果对方仍有疑问可以继续询问拆解。比如我们想要询问第三步应该如何进一步实现。可以看到它甚至给了我们具体的 UI 交互。我们可以利用这样的提示对我们的交互以及实现提供一定的参考。 2.3 阅读代码/优化代码 开发者经常接手别人的代码。质量参差不齐还会夹在很多奇怪的命名。当我们阅读整体逻辑或者修改逻辑可能会因为自身阅读的问题造成理解偏差进一步引发 bug。 如果将这个方法交给 AI 去阅读呢可以看看效果。 prompt: 逐行解释下面的代码 代码内容, (在这里使用了一段在 github上面的开源代码进行展示, 这段代码是一段定时器相关的内容)。 可以看到 ChatGPT 正确的理解了我们的代码对代码进行了解释和说明。 但是这时候只是生成了一个整体的说明并没有对每一行分别进行解释。这时候继续和它对话 prompt: 可以在每一行代码上面加上注释便于我理解吗 这时候它会逐行的进行代码标注便于你对每一行进行理解。如果你接着对它提出一个粗浅的优化需求它也会照做。 prompt: 这段代码可以进行重构和优化吗逻辑有些繁琐。 你可以对某一个部分提出更细节的要求为它提出更好的优化方向。在这里我们提出了关于参数顺序耦合的问题可以看到 GPT 也理解到了我们的需求并且做出了对应的优化如下 prompt: children: (isCounting: boolean, durationTime: number, startCount: () void) React.ReactNode // 子组件接收三个参数返回一个React节点 这里面的参数太多了而且对顺序有强依赖该怎么优化这里 2.4 代码生成 开发者在工作中还有一种场景的工作量比较大需要复杂的逻辑思考。但是实际上最终的代码可能只需要几行就可以搞定。你在思考过程中觉得很痛苦想和身边的同事去沟通。也许你给他解释完这个逻辑以后他非但不能帮你思考反而将一人份痛苦变成两人份。 例如我们要进行数据转换是否也可以交给AI来做我们发送给 GPT 这样的 prompt将数据结构进行转换。数据源为: [{candidates: null,candidatesX: null,description: role---用户角色,label: 角色,name: role,optional: true,schema: null,type: String},
{candidates: null,candidatesX: null,description: Topics of the pulsar server to create---需要创建的主题,items: {schema: [{candidates: null,candidatesX: null,description: topic name---主题名称,label: 主题名称,name: name,schema: null,type: String},{candidates: null,candidatesX: null,default: 1,description: partition number---分区数,label: 分区数,name: partitions,schema: null,type: Integer,validator: 0}],type: Object},label: 主题列表,name: topics,optional: true,schema: null,type: List}
] 我想要得到的数据是 type 为 List 的数据并且数据结构为:
[
{type:List, name:topics, needValidates:[{name:name, type:String
},{name:partitions, type:Integer}] }
] GPT 会为我们得到正确的结果: 我们只需要输入目标数据结构转换后的数据结构无需指定语言。因为它会从你的上下文里理解到你是想要问什么实现方式。 还有执行脚本我们只需要描述清楚我们的需求它也会帮助我们进行完善。 此外它还可以进行进行解释说明 上面可以看到我们在这里使用了一次“自然语言编程”的操作流程。不论你是否会使用 python、bash 你都可以正常的描述你的需求。进行生成。 我们还可以进行代码转换例如你写了一段 js 代码你希望将这段代码转化为python以前我们会通过 Google 搜索看看有没有对应的转换器现在就只需要交给 gpt 来执行。提出你的诉求它会在 10s 内为你生成一段没有 bug包含异常处理的代码。这里我们不展开举例。 2.5 生成单测 我们刚刚那段数据转化的代码如果我们想要进行测试。以前我们可能会苦思冥想很多场景进行补充。现在只需要告诉 AI 帮我生成单测即可。 prompt: (代码内容) 为这段代码生成 unit test。 如果你觉得测试条件不够那就再问它让它再生成。 prompt: 数据源不够丰富多测试集中边界条件比如数据不存在数据类型无法转换数据类型不对等。 它还会给你解释这里都做了什么操作这些测试用例覆盖了不同的场景包括
当数据源中没有类型为 List 的字段时应该返回空数组当数据源中有类型为 List 的字段时应该返回正确的字段数组包括需要的验证。 2.6 更多 AI 应用/插件 AI 就像是一个基础应用, 在它上面还有着很多的可能。随着你用的越多解锁的技能也就越丰富。例如现在 GPT 系列甚至推出了自己的应用市场。下面我们来为各位简单介绍几款热门插件 AIPRM
它是 ChatGPT3.5 时代的应用商店。用户通过不同的 prompt对它进行训练达到自己的目的。 例如我们在文章最开始介绍的“长文总结”能力我们普通的和它进行交流那么字数限制就会成为瓶颈。但是如果我们转化了沟通技巧那么就可以突破这一限制。AIPRM 就是一个充满了奇思妙想的插件系统你可以在里面查找/发布各种你想要的 prompt。 Voice Control for ChatGPT
依托于这样的系统我们可以使用它锻炼英文(伪需求)。或者是直接用语音和它进行对话让它替自己写代码例如我们刚刚所有的脚本说明都可以让它直接语音转文字发出去。 它也很好的服务了一些视障人士因为它还会读出每一次 GPT 生成的内容。让每个人都拥有平等接触 AI的机会。 ChatGPT Sidebar
随着使用的人越来越多ChatGPT 的响应速度越来越慢。有时候只不过想问一个简单的问题却要等上很久。这时候就可以使用 ChatGPT Sidebar 插件。 它内置了 ChatGPT 的 API可以直接集成在你的搜索引擎里你的每一次搜索都会触发(也可以设置为手动)免注册使用方便。还可以让它提示你如何搜索相关的关键词。 在它的侧边栏里我们还可以进行其它的操作。 著名应用工具使用体验Bing Copilot、ChatGPT、Google Bard 那我们再回头看看几个影响力比较高的AI工具。笔者个人现常用的基础 AI 工具大概有 3 种分别是 Bing Copilot、ChatGPT、Google Bard。最被广泛使用的 ChatGPT(GPT3-5)我们先来看看它的自我介绍是什么。 ChatGPT使用频率最高的 AI。它有强大的上下文还可以拆分成为不同的 conversation便于它处理不同的对话。 例如一个控制台的项目可以单独做一个对话这样它聊的上下文都是围绕这个主题进行每次新的问答也无需补充上下文信息。 Bing Bing 在很早就使用了 GPT-4可是因为对话数实在是太少了(从 5 次扩充到了 15 次)每一次对话的内容长度也很有限(截止目前仍只有 2000 字) 而且不能保存对话上下文导致使用起来实在很不方便。好处是它是实时联网的所以作者主要用于搜索最新的资讯以及总结一些文章和文档的摘要以及辅助 ChatGPT 使用对比一下两遍生成的逻辑是否一致。优点就是搜索结果会给出详细的出处以及引用地址。 Google Bard (LaMDA)Google 近期发布的AI工具目前只支持英文。特点是能够给出多个回答而且响应速度很快。集成了 Google it点击之后会帮你生成一个最适合你的问题的 google 搜索关键词。这算是和 Bing Copilot 反其道而行之一个是将 chat 集成到搜索里一个是将搜索集成到了 chat 中。 03 Prompt 能力 3.1 Prompt 是什么 整体来说上述 AI 的强大之处有几点
总结/理解能力。它能够很好的总结你发给它的内容并且进行总结。其实这也就是一种理解能力。因为它明白了你说的话的意思。 具有强大的上下文关联能力。你不需要像使用搜索引擎一样每一次的操作都是独立的。你可以将整个对话都变成一个巨大的搜索通过多次对话来阐述自己想要的信息。甚至还能让它帮助你向它自己提问。 有丰富的拓展插件潜力。 这些能力相信各位读者上面的case中都能感知。在上面案例中为了更好使用AI、利用这些能力我们频繁使用了一个词叫做 prompt——这在 AI 时代是一个非常重要的内容。 想要用好各类 AI 效率工具最好的方法就是不断的提升自己的 prompt 能力。prompt 就是提示词表达语言的能力。 在以前的开发生涯中, 我们是“Google 工程师”、 “StackOverflow 工程师”, 被戏称为“面向搜索引擎开发”。 每次遇到未解之谜我们通常会去不断的更换搜索关键词。 这时候比拼的就是我们的语言表达能力了——我们需要转换自己的思维从工程师到产品经理或者是一个 Business Analysis 的角色。我们需要将接到手的任务进行拆解一步步的变为提示词。当你拆解到足够细的时候任务就自然而然可以依靠 AI 自动完成了。这个会在项目应用的章节进行具体讲解。 3.2 Better Prompt 开发者可以利用它的上下文能力帮助自己纠正语法以及提供更好的 prompt 的训练。 AI 是不挑语言的不管你用任何一种语言它都是利用数据模型进行分析并不是用单一的语言进行思考。也就是说结果的生成质量不会差异很大。真的是这样吗 实际上我们通过官网的介绍发现它对语言的理解是有差异的目前理解力最强的当然是英文了。我们使用英文进行 prompt既能锻炼自己的英文能力也能更好的表述自己的问题。可是受限于自身英文水平我们并不一定每一次都能清晰表达自己的观点这时候我们可以利用它帮我们提高这一点。我们故意打错一段话来测试一下。 prompt you need answer my question obey the format, format should be like this correct grammar is : insert correct grammar here ________________________________ (keep the diver line) you can also ask it like this: insert better prompt here ________________________________ then tell the answer about what i ask below the divier also keep the diver line. Correct grammar is should correct my questions grammar AI 的每一次训练得到的返回结果都是不一样的我们有可能会得到自己想要的但它也有可能没有完全理解我们的意思。当我们的诉求没被完全理解可以对它进行进一步的训练。 在它做对了以后我们对它进行表彰。然后再去尝试一下我们其它的问题。可以看到一切正常。 如果有时候它忘记了你需要再提醒它一次 format。它就会重新输出。 04总结 笔者使用 ChatGPT 等 AI 工具已经 4 个多月了。一开始只是进行简单的尝试并没有觉得有什么特别的。直到在浏览各类教程时才发现那些以前分享金融知识的人已经开始利用 GPT 进行代码创作来丰富自己的武器库比如进行图标分析、软件制作等等。实际上AI 并不是简单的问答而已它具有解决问题甚至是创造知识的能力。 当然我在使用的过程当中周围也有很多声音在质疑 AI 的能力。认为它并不能如想象的优秀。例如你直接跟它讲给我做个需求、给我写篇论文它都是无法完成的。 因为其实我们在错误地使用 AI。合理的使用应该是「我们做我们该做的事情AI 做 AI 该做的事情」。以前搜索引擎的时代我们也并不是直接在搜索框里输入 “给我答案” 吧用户要尽量描述清楚自己的问题。 现在对程序员的要求已然不是简单的书写代码了。因为 AI 能做甚至比你的代码质量还要高。我们需要将自己的思维进行转换从程序员变成拥有产品思维的程序员、拥有 BA 思维的程序员。要对自己手里的任务、方法、逻辑有更清晰的认知。让人类做人类该做的事情让 AI 做它擅长的事情。 当你把你想要的内容清晰的描述出来以后你会发现AI 不是来替代你的是来帮助你更好的工作的。以上是本次分享全部内容欢迎大家在评论区分享交流。如果觉得内容有用欢迎转发
充电君会在第一时间给你带来最新、最全面的解读别忘了三联一波哦 关注公众号资源充电吧 回复:Chat GPT 充电君发你免费畅享使用中文版哦 点击小卡片关注下回复IT
想要的资料全都有