当前位置:首页 > 嵌入式 > 嵌入式分享
[导读]您是否使用人工智能开发您的嵌入式软件?虽然它可能还没有成为主流,但我看到很多团队都在疯狂地研究如何使用AI来提高性能和吞吐量。如果你不想落后,你也应该尝试。我将是第一个承认你所获得的并不总是正确的,但是我已经看到并经历了使用人工智能工具的巨大改进,这些工具还处于婴儿期。在这篇文章中,我将分享一些最佳实践,这些实践将帮助您改进提示,从而从AI模型中获得更好的结果。一个人工智能模型能够产生多少嵌入式软件会让你吃惊。

您是否使用人工智能开发您的嵌入式软件?虽然它可能还没有成为主流,但我看到很多团队都在疯狂地研究如何使用AI来提高性能和吞吐量。如果你不想落后,你也应该尝试。我将是第一个承认你所获得的并不总是正确的,但是我已经看到并经历了使用人工智能工具的巨大改进,这些工具还处于婴儿期。在这篇文章中,我将分享一些最佳实践,这些实践将帮助您改进提示,从而从AI模型中获得更好的结果。一个人工智能模型能够产生多少嵌入式软件会让你吃惊。

警告:不要毫无疑问地相信任何人工智能输出!确保遵循最佳实践,如执行代码评审和测试。

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

我经常发现,当有人想使用LLM生成代码时,他们会直接跳进来,问一些问题,比如"你能生成一个……"。毫无疑问,您将从模型中得到一个答案,而代码的风格将无法匹配您需要的内容。即使模型提供了正确的解决方案,您也必须重新编写代码。

我经常遵循的第一步是为模型提供我的风格偏好和示例。它不需要是一个长达90页的样式文档,但静态分析或格式化工具无法捕捉到的基本内容。我通常包括如何命名变量、函数等。我会排除像大括号应该去哪里这样的细节,因为可以使用像抓整洁这样的工具来清理代码。

最佳实践#2-使用迭代步骤

模糊地告诉人工智能模型产生一些"大"的东西是很有诱惑力的。比如要求它开发一个完整的码头者图像或代码模块。当你在没有提供太多细节的情况下对某些东西进行猛烈的打击时,你会得到很多垃圾。然而,我也发现,如果你给太多的信息,你也有可能得到垃圾!

诀窍是使用迭代步骤。例如,你可以遵循如下流程:

1. 把你的问题分成任务或步骤

2. 提供您的编码风格偏好

3. 将提示符与最初的任务细节结合起来

4. 分析反应

1)如果成功了,继续下一个任务

2)如果不成功,改进提示和重复

5. 对最终结果进行代码审查

6. 测试代码

7. 手工代码任何改进

最佳实践#3-使用AI优化现有代码

我发现人类不会编写有效执行的代码。我们倾向于编写逻辑上流动正确的代码,但不一定使用可用的编程语言或硬件。我最喜欢的提示之一是:

下面的代码是在[硬件架构]上运行的,您能改进它以更有效地执行吗?

我发现,即使是相对简单的函数,有时也可以改进。在一个非常有问题的情况下,模型能够提出降低CPU利用率近20%的建议!现在,没有任何黑暗魔法或特殊的技术。像我一样,一个有经验的开发人员可以看到该做些什么。我很想知道人工智能是否会得出类似的结论。是的,它在大约5秒钟内写出了代码,当时我需要几分钟。(我不能在5秒内写20行代码!)。

最佳做法#4-针对具体情况和具体情况定制提示

当使用AI生成代码时,输出质量直接与输入的质量挂钩。一个有效的策略是尽可能使提示尽可能具有特定性和上下文,而不使模型中的信息过载。这可以包括:

· 指定您需要解决的精确问题。而不是"生成一个排序列表的函数",使用"生成一个用快速排序排序一个整数数组的C函数"。"

· 提供代码运行的上下文,如硬件架构、操作系统和编译器版本。

· 包括内存使用或执行时间等限制。

例如,您可以制作如下提示符:

"该功能将在一个有限制的内存的8位单片机上运行。您是否可以优化下面的排序算法,以减少其内存足迹,而又不严重影响其运行时性能?"

这种方法有助于生成更准确和有用的代码,并随着时间的推移教给人工智能模型您的需求。

最佳做法#5-验证人工智能建议并将其与人类专业知识结合起来

大赦国际可以提供强有力的建议和见解,但这些不应取代人的专门知识。相反,使用人工智能作为工具来增强你的技能。例如:

· 具有现有解决方案和最佳实践的交叉引用A生成的代码。

· 根据行业标准和你自己的经验验证代码的逻辑和效率。

· 仔细整合AI代码建议,确保它们与您现有的代码库很好地融合,并坚持您的项目架构。

通过验证Ai生成的代码并进行深思熟虑的集成,您可以利用AI的速度和建议,同时保持成功的嵌入式软件开发所需的高标准。

结论

我不能说的太多,你真的不能相信人工智能今天的模型。就像计算机科学101一样,垃圾会给你提供垃圾。人工智能的问题是,有时候我们认为我们没有提供垃圾!关键是遵循最佳实践,为您提供更好的提示,以获得您正在寻找的结果。

人工智能不是银子弹。我可能已经让它带我去了一次徒劳的追逐,因为它提高了我的吞吐量。然而,有趣的是,它的进化速度有多快。在您知道之前,每个开发人员都将被迫使用它,如果他们想跟上。模型只会改进;你可以遵循的最佳实践越多,你的结果就越好。

20240803_66ae1f37eed99__使用AI帮助我们编写嵌入式软件的最佳做法

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭