您利用人工智能开拓嵌入式软件了吗?虽然它可能还不是主流,但我看到很多团队都在积极研究如何利用人工智能来提高性能和吞吐量。
如果您不想掉队,也该当进行考试测验。
我会第一个承认,你所得到的并不总是精确的,但我已经看到并经历了利用仍处于起步阶段的人工智能工具所带来的巨大进步。
在这篇文章中,我将与大家分享一些最佳实践,它们该当能帮助你改进你的提示,从而从人工智能模型中得到更好的结果。
人工智能模型制作嵌入式软件的能力会让你大吃一惊。

警告: 不要轻信赖何人工智能输出结果!
确保遵照最佳实践,如实行代码审查和测试。

最佳实践1--从编码标准开始

我常常创造,当有人想利用 LLM 天生代码时,他们会直接跳入并开始问类似 "你能天生一个做......的函数吗 "这样的问题。
毫无疑问,你会从模型中得到答案,但代码的风格并不符合你的须要。
纵然模型供应了精确的办理方案,您也必须重新编写代码。

我常日采纳的第一步是向模型供应我的风格偏好和示例。
这不须要是一份长达九十页的风格文档,但要包括静态剖析或格式化工具无法捕捉到的基本内容。
我常日包括如何命名变量、函数等。
我会打消一些细节,比如大括号该当放在哪里,由于像 Clang Tidy 这样的工具可以用来清理代码。

编写嵌入式软件的 AI 提示最佳实践

最佳实践 2:利用迭代步骤

模糊地见告人工智能模型天生一些 "大 "东西是非常诱人的。
比如哀求它开拓全体 Docker 镜像或代码模块。
当你在不供应太多细节的情形下对某件事情大笔一挥时,你会得到很多垃圾信息。
不过,我也创造,如果你供应的信息太多,也同样可能得到垃圾信息!

诀窍在于利用迭代步骤。
例如,你可以遵照以下流程:

将问题分解成任务或步骤供应您的编码风格偏好编写包含初始任务细节的提示剖析回答如果成功,进入下一个任务如果不堪利,改进提示并重复对终极结果进行代码审查测试代码手工编写任何改进代码最佳实践 3 - 利用AI优化现有代码

我创造,人类编写的代码实行效率并不高。
我们方向于编写逻辑上精确流畅的代码,但并不一定会利用我们所节制的编程措辞或硬件。
我最喜好利用的提示之一是

“The following code is running on a [Hardware Architecture], can you improve it to execute more efficiently?

[Add code snippet]”

我创造,纵然是相对大略的功能,有时也可以改进。
有一次,对付一个问题很大的函数,模型提出的建议使 CPU 利用率降落了近 20%!
这并没有利用任何黑邪术或分外技能。
像我这样履历丰富的开拓职员,一眼就能看出该怎么做。
我很想知道人工智能是否也会得出类似的结论。
它确实得出了却论,而且只用了 5 秒钟就写出了代码,而我须要几分钟(我不可能在 5 秒钟内写出 20 行代码!
)。

最佳实践 4 - 根据详细情形和高下定亲制提示

利用人工智能天生代码时,输出质量与输入质量直接干系。
一种有效的策略是,在不给模型增加过多信息的情形下,为提示量身定制尽可能多的详细内容和高下文。
这可以包括:

明确须要办理的问题。
不要利用 "天生一个对列表排序的函数",而应利用 "天生一个利用 quicksort 对整数数组排序的 C 措辞函数"。
供应代码运行的环境,如硬件架构、操作系统和编译器版本。
包括内存利用或实行韶光等限定条件。

例如,你可以编写如下提示:

“The function will be running on an 8-bit MCU with limited RAM. Can you optimize the following sorting algorithm to reduce its memory footprint without significantly affecting its runtime performance?”

"该函数将在内存有限的 8 位 MCU 上运行。
你能否优化下面的排序算法,以减少其内存占用,同时又不明显影响其运行时性能?"

这种方法有助于天生更准确、更有用的代码,并让人工智能模型逐渐理解您的需求。

最佳实践 5 - 验证 AI 建议并将其与人类专业知识集成

人工智能可以供应强大的建媾和见地,但不应取代人类的专业知识。
相反,应将人工智能作为增强技能的工具。
例如

将人工智能天生的代码与现有办理方案和最佳实践进行交叉参考。
根据行业标准和自身履历验证代码的逻辑和效率。
仔细集成AI代码建议,确保它们与现有代码库完美领悟,并符合项目架构。

通过验证人工智能天生的代码并对其进行寻思熟虑的整合,您可以充分利用人工智能的速率和建议,同时保持成功的嵌入式软件开拓所需的高标准。

结论

如今,人工智能模型真的不能尽信。
就像《打算机科学 101》里说的那样,"垃圾进 "就会 "垃圾出"。
人工智能的问题在于,有时我们会认为我们没有给它供应垃圾!
关键是要遵照最佳实践,为你供应更好的提示,以得到你想要的结果。

人工智能不是灵丹灵药。
在提高吞吐量的同时,我可能也常常被它牵着鼻子走。
不过,人工智能的发展速率之快令人着迷。
在你意识到这一点之前,每个开拓职员都将被迫利用它,如果他们想跟上时期的话。
模型只会不断改进;你能遵照的最佳实践越多,你的结果就会越好。