Prompt 即代码:设计和管理 AI 编程的最佳实践

您所在的位置:网站首页 编码规范要求 Prompt 即代码:设计和管理 AI 编程的最佳实践

Prompt 即代码:设计和管理 AI 编程的最佳实践

2023-04-01 14:26| 来源: 网络整理| 查看: 265

在条件不充分的情况,你可以轻松让 AI 生成一个页面、一个函数,但是他无法达到你想要的结果。所以在,Unit Mesh 架构下,一部分程序员成为了 AI 代码验证师 + AI 代码修复师,它将持续非常很长一段时间。

问题 2:编程只是在编码?

当前的 AI 编程只是取代你的转译过程:需求细分、转换需求成代码等。你可以看看你的提交历史:一天提交了几行代码,又是哪个时间提交的。有可能你算下来了,白天都在开会,只有晚上写代码。我记得知乎有一个相关的问题,大部分人的回答都是平均 几十行、几百行。当然按行数是不科学的,成长期的项目的行数是远大于维护期的。

所以,如果你的编码时间很长,而架构设计、需求讨论等的时间很短,可能得考虑一下职业生涯,强化你的设计、拆解能力。毕竟,一旦效率提高的,还是有些程序员会失业的。

问题 3:人人都会写好的 Prompt?

身处于各类可访问 ChatGPT 的微信群中,遇到很多问题的时候,我经常会抛出一句:”问 ChatGPT 啊“。很多人并不会真正意识到 ChatGPT 是一个工具,唯一的乐趣可能就是:”请帮我生成一个 KFC v50 的故事“。

这也是我们创建 ClickPrompt、ChatFlow、PromptPatterns 等项目的初衷,大部分人需要先意识到 AI 能做什么。然后,才是如何写好 Prompt,我们要摸摸我们的 Copilot 的脾气,然后再一起干活。诸如于:

函数名直接生成代码。 函数名 + 处理步骤生成代码。

每种模式的背后,都很有意思。

Prompt 即代码:一个新的规范 —— Prompt 编写规范

在进一步展开 Prompt 即代码之前,我们需要先了解一下如何写好 Prompt。如下是,我之前放在 ClickPrompt 上面的一部分 GitHub Copilot 示例。

从我的理解来说,一个好的 Prompt 规范应该包括以下内容:

看上去有没有像极你平时写的伪代码,作为一个伪代码工程师的你,是不是发现生产力可能爆炸了。

Prompt 即代码:不同形态下的 AI 编程

再重复一下定义:

Prompt 即代码是一种基于多种输入模态的编程 范式,它通过结合文本、图像、语音等多种输入方式来提供更丰富的上下文信息,帮助程序员更好地表达自己的意图,并生成相应的代码实现。Prompt 即代码将 prompt 作为代码的一部分,以及作为标准接口来定义生成的代码,同时提供注释和文档信息以支持可读性和可维护性。通过使用 prompt 即代码,程序员可以提高编码效率,同时生成更准确、更可靠的代码实现。

Prompt 即代码是一种基于多种输入模态的编程 范式,它通过结合文本、图像、语音等多种输入方式来提供更丰富的上下文信息,帮助程序员更好地表达自己的意图,并生成相应的代码实现。Prompt 即代码将 prompt 作为代码的一部分,以及作为标准接口来定义生成的代码,同时提供注释和文档信息以支持可读性和可维护性。通过使用 prompt 即代码,程序员可以提高编码效率,同时生成更准确、更可靠的代码实现。

当谈到 Prompt 即代码时,我们通常会将其定义为一种编程范式,它将自然语言或其他形式的输入作为代码生成的起点。Prompt 即代码则让程序员通过提供高度概括的自然语言描述或其他形式的输入来描述他们想要的功能,然后由 AI 系统自动生成代码。

所以,在这里我们分为两种方式:标准的 Prompt 即代码、多模态的 Prompt 即代码。

标准的 Prompt 即代码:文本形式

文本 Prompt 即代码是指使用自然语言或其他方式描述需求或问题,通过 AI 模型自动生成对应的代码。Prompt 作为代码的一部分或者核心,通过描述期望的输入和输出,以及需要执行的操作来生成代码。

文本 Prompt 即代码是指使用自然语言或其他方式描述需求或问题,通过 AI 模型自动生成对应的代码。Prompt 作为代码的一部分或者核心,通过描述期望的输入和输出,以及需要执行的操作来生成代码。

尽管现有的 AI 工具都是多模态的,然而自然语言是作为中间语言存在的。所以,我想将文本形式的 prompt 称为 标准的 Prompt 即代码,它可以方便地融入现有的编程体系。

Prompt 即注释 。Prompt 作为注释与代码并存,在这种情况下,Prompt 与代码共存于同一个文件中。通常,Prompt 以注释的形式出现在代码中,以提供必要的上下文信息和生成代码的指令。这种方式适合于需要经常手动修改生成的代码的场景。 Prompt 即接口 。在这种情况下,Prompt 作为一个标准的接口,代码则是实现这个接口的生成代码。这种方式适用于对生成的代码进行自动化测试和部署的场景,因为接口定义的一致性可以更好地保证代码的正确性。 Prompt 即代码 。在这种情况下,版本管理工具中不再存储代码,而是存储 Prompt。生成的代码则可以根据 Prompt 来生成,Prompt 作为代码的一部分。这种方式适合于需要频繁更新代码和对代码进行版本控制的场景。

而,事实上,在我第一次将注释加入到 ClickPrompt 中的时候,我犹豫了很久。我们的过去的编程习惯,并不允许将思考过程作为注释到其中。

既然,它已经作为代码的一部分加入进来 ,我们还需要进一步考虑的点是:尽可能地去修改 prompt 重新生成代码,减少直接修改 prompt。多模态 Prompt 即代码

PS: 感谢 ChatGPT 帮我考虑了这一部分。

多模态 Prompt 即代码是指在训练 AI 模型时,同时利用多种不同的输入模式(如文本、图像和语音)来提供更丰富的上下文,以帮助模型更好地理解程序员的意图并生成相应的代码。通过使用多模态 Prompt,AI 模型可以获得更多的信息,并在生成代码时更准确地反映程序员的意图。

多模态 Prompt 即代码是指在训练 AI 模型时,同时利用多种不同的输入模式(如文本、图像和语音)来提供更丰富的上下文,以帮助模型更好地理解程序员的意图并生成相应的代码。通过使用多模态 Prompt,AI 模型可以获得更多的信息,并在生成代码时更准确地反映程序员的意图。

例如,一个基于多模态 Prompt 训练的 AI 模型,可以同时考虑程序员在文本上下文中输入的代码片段,代码所处的项目信息、数据结构信息,以及程序员所提供的图像信息,如示意图、流程图等,从而生成更准确、更完整的代码。

PS:不过,这种技术需要大量的数据和计算资源,同时需要对不同的输入模式进行处理和整合,因此在实际应用中还需要进一步研究和优化。

Prompt 即代码:交互方式的变化

过去的几个月里,每天层出不穷的 AI 新工具,都在让我们感受人类的智商上限和 AI 的下限。与现在的编程方式相比,未来几个月势必会出现新的、或者已经出现新的交互方式。

诸如于:

交互式 Prompt :在编写代码的过程中,模型可以提示程序员输入,从而帮助模型更好地理解程序员的意图,并生成更准确的代码。例如,Unit Mesh 采用的架构模式,便是由人类和 AI 共同完成的,并由 Unit Server 自动化部署。 面向场景的 Prompt :通过提供与特定场景相关的信息和上下文,可以帮助模型更好地理解程序员的意图并生成相应的代码。例如,面向 Web 开发的 Prompt 可能包括与 HTML、CSS 和 Java 相关的信息和上下文。 等等。

Prompt 即代码的交互方式将会越来越多样化和智能化,以更好地满足程序员在不同领域和场景下的需求。

小结

PS:最后,让 ChatGPT 3.5 总结一下本文的后半部分(毕竟 4K Unit)。

这篇文章介绍了 Prompt 即代码的写作方法,多模态输入的利用,以及 AI 模型生成代码的方式。好的 Prompt 规范包括功能定义、任务分解、输入输出格式、测试和调试、避免歧义、编码标准等要素。文本形式的 Prompt 可以使用自然语言或其他方式描述需求或问题,并通过 AI 模型自动生成对应的代码。最后,根据具体应用场景选择不同的 Prompt 与代码的结合方式。

这篇文章介绍了 Prompt 即代码的写作方法,多模态输入的利用,以及 AI 模型生成代码的方式。好的 Prompt 规范包括功能定义、任务分解、输入输出格式、测试和调试、避免歧义、编码标准等要素。文本形式的 Prompt 可以使用自然语言或其他方式描述需求或问题,并通过 AI 模型自动生成对应的代码。最后,根据具体应用场景选择不同的 Prompt 与代码的结合方式。

PS:我的 Copilot,写得不行不行的。返回搜狐,查看更多



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3