作者:腾讯CSIG云制作1研发工作室Tech Lead

html代码生成器_代码自动生成器_代码生成器

背景

特别记得每个月《全球最流行语言成为本月》发布时,程序员之间都会掀起一场血战,“Java下降了一位,怎么可能”、“占据了榜首”再说了,门槛太低了,写个脚本就算用了?”、“C#这种单平台语言,也是闭环生态的产物。” 演讲不休,大家都乐在其中,已经是以前的流量密码了。

然而,这一切现在似乎已经悄然发生了变化,现在我跟大家开玩笑说,使用最多的编程语言已经是英语(自然语言)了。

现在GPT已经开启了人工智能的狂潮。 在社交圈子里,如果不说几句话,你就会觉得自己不仅与时代脱节,而且已经被IT界驱逐了。

我是2023年12月初开始体验的,一开始就向它问了一些有趣的问题,比如“你了解腾讯云吗”、“介绍一下TCS”等等,相信大多数人都会这个第一次使用时就是这种情况。 当时,互联网认为它的功能应该是取代知乎,作为知识问答平台。 知乎死亡之声甚嚣尘上。

后来大家才发现,它的很多答案都是编出来的。 例如,如果你向它询问一些新电影,即使它不知道,它也会弥补很多。 人们又开始贬低它,认为它只是一个普通的A聊天机器人,或者是一个聊天玩家。

当时我确实看了相关论文,介绍的人比较少,分析的角度还停留在“中文互联网内容比较少”、“英文内容话题较多、培训比较广泛” ,而且效果更好”等等。我觉得只能针对已有的知识进行总结,或者翻译一下。

但随着使用它的人越来越多,大家都知道它与语言无关。 如果你用任何语言问一个问题,它都能很好地理解你的意思。 因为它使用的是语言模型,而不是特定的A语言库。 如果还用搜索引擎的“关键词匹配”、“关键词命中”的思路来思考人工智能,就显得有点落后了。

在这篇文章中,我想和大家分享一下我这4个月来的使用经历,以及它在我的工作中所发挥的作用。

介绍

我手边常用的AI工具大概有3种,分别是Bing、Bard。

使用最广泛(GPT3-5)。 我们先来看看它的自我介绍是什么。

(GPT-3.5)

最常用的人工智能具有强大的上下文,并且可以分为不同的上下文,以便它可以处理不同的对话。

例如,控制台项目可以有一个单独的对话,这样它的聊天上下文就围绕这个主题,不需要为每个新问题和答案添加上下文信息

代码生成器_代码自动生成器_html代码生成器

必应 (GPT-4)

虽然 Bing 很早就使用了 GPT-4,但是由于会话数量太少(从 5 个扩展到 15 个),每个会话的长度也非常有限(到目前为止只有 2000 个单词),无法保存对话上下文。 优点是实时连接互联网,所以我主要用它来搜索最新的信息和总结一些文章和文档,以及辅助使用。 比较两遍生成的逻辑是否一致? 优点是搜索结果会给出详细来源和参考地址。

代码自动生成器_代码生成器_html代码生成器

吟游诗人 (LaMDA)

最近发布,目前仅支持英文。 使用起来并没有什么特别的用途。 特点是可以给出多个答案,而且响应速度快。 它是集成的。 点击后,它会帮助你生成最适合你问题的搜索。 关键词与Bing相反。 一种是将聊天集成到搜索中,另一种是将搜索集成到聊天中。

代码自动生成器_html代码生成器_代码生成器

基本应用总结:

当我们第一次了解一项技术时,不可避免地需要查看文档。 但现在的手册已经非常丰富了,往往对于初学者来说,需要接触的排名太多,而且布局五花八门。 使人在雾中云中学习。

这时候我们就可以利用总结能力了。 比如我想学习K8S相关知识,我就发给它一个文档的地址,让它帮我总结一下。 :总结本文件

代码自动生成器_html代码生成器_代码生成器

可以看到,它对这篇中文文档的总结非常好,并且概括了每个关键点,用最少的语言让你明白你想要的知识点。

因为它有上下文,它知道你需要的是中文摘要,所以这里你继续发英文文档给它,它也会用中文给你摘要。 :总结本文件

代码生成器_代码自动生成器_html代码生成器

我们都知道,目前的免费版本数据库的截止日期是2023年,这意味着如果我询问其比较新的内容,它无法进行总结,甚至会随意编译。 比如我这里问的是电影《浏览地球2》的问题,让它总结一下里面的介绍:%E6%B5%81%E6%B5%AA%E5%9C%B0%E7%90%832

代码生成器_代码自动生成器_html代码生成器

由于此时电影尚未上映,之前的内容仍然是错误的,其摘要也不准确。

这时候我们也可以复制整个网站的内容来进行总结。 但是这个时候我们会发现文章太长了,而且会收到错误报告。

html代码生成器_代码自动生成器_代码生成器

这个时候我们就得发挥我们的想象力,利用它去突破。 我们需要将文章分成段落,并且每个段落都符合其标准。

代码自动生成器_代码生成器_html代码生成器

我们将内容分成7段,发送完成后会自动汇总

html代码生成器_代码自动生成器_代码生成器

这样,我们就得到了一份文档的正确摘要。

看我这里经常用一个词,叫,这是AI时代非常重要的内容。

如果我们想用好这三种效率工具,最好的办法就是不断提高我们的能力,这就是提示文字和语言表达的能力。

在之前的开发生涯中,我们是“工程师”、“工程师”,被戏称为“面向搜索引擎的开发”。 每次遇到未解之谜,我们通常都会不断更换搜索关键词,鄙视链大概是这样的:

用的看不起百度用的

用过的看不起用CSDN的

用英文关键词的人看不起用中文的人

但在人工智能时代,我们需要改变思维。 我们可以使用自然语言(英语/中文/……)进行大量描述。 例如,Bing提供了2000字的描述机会,以及数万字的描述机会。

这时候比拼的就是我们的语言表达能力。 我们需要转变思维,从工程师变成产品经理,或者一个角色。 我们需要把收到的任务拆解,一步步变成提示语。 当你拆解得足够多时,任务就可以由AI自动完成。 这一点,我们将在项目应用章节详细讲解。

项目申请

上述内容可以看作是提高我们的效率或者是对我们的日常生活有帮助。

那么在我们的日常工作中,AI如何帮助我们提高效率呢?

拆解任务

当我们从需求方获得需求后,很多时候我们的任务并不能非常准确地预估。 原因是我们没有明确地划分任务,所以我们无法对每个任务进行估计,从而导致风险的发生。

这时候我们就可以简单描述一下我们这次的需求,让我们帮我们拆解任务。

html代码生成器_代码生成器_代码自动生成器

可以看到,我们的任务已经被拆分成了小任务,这样可以快速的让我们将任务转化为任务,或者需求跟踪表,方便和产品经理的沟通,也方便我们自己的调度。 转换程模式也方便了解当前进度。

如果对解决方案还有疑问,可以继续拆解询问。 比如我们想问第三步应该如何进一步实施。 我们可以看到它甚至为我们提供了特定的 UI 交互。 我们可以将这样的提示运用到我们的交互中,为实现提供一定的参考。

代码生成器_html代码生成器_代码自动生成器

阅读代码/优化代码

我们经常会接手别人的代码,质量参差不齐,还会出现很多奇怪的名字。 这时候如果我们去读整个逻辑或者修改逻辑,可能会因为自己的阅读问题而无法准确理解。 该方法的含义会导致错误。

这时候如果我们把这个方法交给AI去读取,就可以看到效果了。 这里我使用的是:逐行解释下面的代码+代码内容,(这里我使用了我上面展示的一段开源代码,这一段代码是一段定时器相关的内容)

可以看到我们已经正确理解了我们的代码,解释并解释了代码。

代码自动生成器_代码生成器_html代码生成器

但此时我们只是生成了一个整体的描述,并没有单独解释每一行。 这时候我们继续跟它对话,用:我可以给每一行代码加个注释吗,让我更容易理解。

代码生成器_代码自动生成器_html代码生成器

这时它会逐行标记代码,以便你能够理解每一行。

如果你随后向它提出一个粗略的优化请求,它就会这样做。

代码自动生成器_代码生成器_html代码生成器

您可以对某个部分提出更详细的要求,从而为其提出更好的优化方向。 这里我们提出了参数顺序耦合的问题,可以看到GPT也理解了我们的需求,并做了相应的优化。

代码生成器_html代码生成器_代码自动生成器

代码生成

我们工作中也有这样一个场景,工作量比较大,需要复杂的逻辑思维,但最终的代码可能只需要几行就可以完成。 你在思考过程中感到非常痛苦,想要与周围的同事进行交流。 你给他解释了这个逻辑之后,他不但没有帮你思考,反而会把一个人的一份痛苦变成两份。

例如,我们要执行数据转换。

我们将其发送到GPT来转换数据结构

数据源为:
[
    {
        "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 将为我们带来正确的结果:

代码自动生成器_html代码生成器_代码生成器

我们只需要输入目标数据结构和转换后的数据结构,无需指定语言。 因为它会从您的上下文中了解您想要询问的实现方式。

还有执行脚本,我们只需要把自己的需求描述清楚,也能帮助我们改进。

代码生成器_html代码生成器_代码自动生成器

也会解释

html代码生成器_代码自动生成器_代码生成器

可以看到,我们这里使用了一个“自然语言编程”的操作流程。 不管你会不会使用bash,你都可以正常描述你的需求并生成它们。

我们还可以进行代码转换。 比如你写了一段js代码,你想把这段代码转换成. 以前我们会搜索是否有对应的转换器。 现在我们只需要把它交给gpt来执行即可。 提出您的请求,它会在10s内为您生成一段无bug且异常处理的代码。

生成单个测试

如果我们要测试我们刚刚做的数据转换的代码,我们可能要考虑很多场景来补充。

现在只要告诉gpt帮我生成单元测试即可,:(代码内容)为这段代码生成单元测试

代码生成器_代码自动生成器_html代码生成器

如果你觉得测试条件不够,那就再问一遍,让它重新生成。

html代码生成器_代码自动生成器_代码生成器

它还会向您解释这里做了什么

*这些测试用例覆盖了不同的场景,包括:
当数据源中没有类型为 List 的字段时,应该返回空数组。
当数据源中有类型为 List 的字段时,应该返回正确的字段数组,包括需要的验证*

拓展应用

正如我们刚才所说,这个AI有几个优点

总结/理解能力,能够很好的总结你发来的内容,并做出总结。 其实这也是一种领悟能力。 因为它明白你说的话的意思。 有了强上下文,你就不需要像使用搜索引擎一样,每个操作都是独立的。 你可以把整个对话变成一次巨大的搜索,通过多次对话解释你想要的信息。 你甚至可以让它帮你问自己问题。丰富的扩展插件,AI就像一个基础应用,上面有很多可能性。 使用得越多,可以解锁的技能就越多。 比如目前基于GPT4的甚至推出了自己的应用市场。

在这里,我们可以利用它的上下文功能来帮助自己纠正语法并提供更好的训练。

虽然AI不选择语言,即你使用中文/英文,任何语言,但它使用数据模型进行分析,而不是用单一语言进行思考,这意味着结果的质量不会有很大差异。

但通过官网的介绍,我们发现它对语言的理解存在差异。 目前理解最强的当然是英语了。 我们使用英语,这不仅可以锻炼我们的英语能力,还可以更好地表达自己。 问题。 然而,受限于我们自己的英语水平,我们可能无法每次都清楚地表达自己的观点。 这个时候我们就可以利用这个来帮助我们提高。

像这样使用提示:

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 question's grammar

我们故意打了一个错误的段落(为了我们自己的尊重)来测试它。

代码生成器_代码自动生成器_html代码生成器

因为AI每次训练返回的结果都不一样,我们可能得到了我们想要的东西,但它可能并不能完全理解我们的意思。 这个时候我们就可以看到它并没有完全理解我们的意思。 我们可以进一步训练它。

html代码生成器_代码自动生成器_代码生成器

做对后,我们会表扬它。 然后尝试我们的其他问题。 可以看到一切正常。

html代码生成器_代码自动生成器_代码生成器

如果它有时忘记了,你只需要再次提醒它即可。 就会重新输出。

插件系统AIPRM

它是0.5时代的应用商店,每个人都用不同的方法来训练它来实现自己的目标。

比如我们在文章开头介绍的“长文摘要”能力,如果我们正常地和它沟通的话,字数限制就会成为瓶颈,但是如果我们改造一下沟通技巧,那么我们就可以突破这个限制。

AIPRM是一个充满奇思妙想的插件系统,在这里你可以找到/发布各种你想要的东西。

代码生成器_代码自动生成器_html代码生成器

为之发声

因为有这样一个系统,我们可以用它来练习英语(伪需求)。 或者我们可以直接通过语音与它对话,让它自己编写代码。 例如,我们刚才所做的所有脚本指令都可以直接从语音转换为文本发送出去。

其实这个插件也很好的服务了一些视障人士,因为它每次也会读出GPT生成的内容。 让每个人都能平等地享受人工智能。

代码生成器_html代码生成器_代码自动生成器

由于该服务尚未在中国大陆提供,如果您想使用该服务,您需要有海外朋友或自行出国留学。 但并不是每个人都有这样的条件和机会。 而且响应速度随着使用的人越来越多而提高,你的GPT经常过期吗?

有时候只是想问一个简单的问题,却要等很久。

这时候就可以使用插件了。

它有内置的API,可以直接集成到您的搜索引擎中,每次搜索都会触发(也可以设置为手动),免注册,易于使用。 您还可以让它提示您如何搜索相关关键字。

代码自动生成器_代码生成器_html代码生成器

在它的侧边栏中,我们还可以进行其他操作

代码生成器_代码自动生成器_html代码生成器

总结

我已经使用这种 AI 工具 4 个月了。 起初我只是做了一个简单的尝试,并没有觉得有什么特别的。 直到我在浏览财经视频时,我发现那些以前分享财经知识的人已经开始使用GPT创建代码来丰富其武器库、图标分析、软件制作等。这让我震惊,也让我明白AI不仅仅是一个简单的问答,具有解决问题和创造知识的能力。

当然,在使用的过程中,我周围也有很多质疑AI能力的声音。 他们认为事情并没有想象中的那么好。 比如你直接跟它对话,给我一个需求,给我写一篇论文,它就无法完成。

因为事实上我们正在错误地使用AI,而合理的使用它应该是我们做我们应该做的事情,AI也应该做AI应该做的事情。 在搜索引擎时代,我们不是直接在搜索框中输入“给我回答”吧?我们也需要尽可能清楚地描述自己的问题。

现在对程序员的要求已经不是简单的写代码了,因为AI可以做到,甚至比你的代码质量还要高(不信你可以试试X)。

对我们的要求就变成了我们需要转变思维,从程序员,变成有产品思维的程序员、有BA思维的程序员。 对任务、方法、逻辑,有更清晰的认知。 让人类做人类该做的事,让人工智能做它擅长的事。

当你清楚地描述你想要什么时,你会发现AI不是来取代你的,而是帮助你更好地工作。

好了,今天的主题就讲到这里吧,不管如何,能帮到你我就很开心了,如果您觉得这篇文章写得不错,欢迎点赞和分享给身边的朋友。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注