When the Code Autopilot Breaks: Why LLMs Falter in Embedded Machine Learning

📄 arXiv: 2509.10946v1 📥 PDF

作者: Roberto Morabito, Guanghan Wu

分类: cs.SE, cs.AI

发布日期: 2025-09-13

备注: This paper has been accepted for publication in Computer (IEEE). Upon publication, the copyright will be transferred to IEEE


💡 一句话要点

研究LLM在嵌入式机器学习代码生成中的失效模式与原因

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 大型语言模型 嵌入式机器学习 代码生成 失效模式分析 自动驾驶框架

📋 核心要点

  1. 现有嵌入式机器学习工作流程依赖人工编写代码,效率低且易出错,而LLM自动代码生成面临失效模式难以检测的问题。
  2. 论文构建自动驾驶框架,编排数据预处理、模型转换和设备端推理代码生成,系统研究LLM在嵌入式ML流水线中的失效模式。
  3. 研究揭示了提示格式、模型行为和结构假设对成功率和失效特征的影响,并提出了失效类别分类法,分析了常见根本原因。

📝 摘要(中文)

大型语言模型(LLM)越来越多地被用于自动化嵌入式机器学习工作流程中的软件生成,但其输出常常会静默失败或表现出不可预测的行为。本文基于一个自动驾驶框架,对LLM驱动的ML流水线中的失效模式进行了实证研究,该框架协调数据预处理、模型转换和设备端推理代码生成。研究表明,提示格式、模型行为和结构假设会以标准验证流水线难以检测的方式影响成功率和失效特征。我们的分析揭示了一系列容易出错的行为,包括格式引起的误解和编译后破坏下游的运行时破坏性代码。我们推导出失效类别分类法,并分析了多个LLM中的错误,突出了常见的根本原因和系统脆弱性。虽然研究基于特定设备,但揭示了基于LLM的代码生成中更广泛的挑战。最后,我们讨论了提高LLM驱动的嵌入式ML系统可靠性和可追溯性的方向。

🔬 方法详解

问题定义:论文旨在解决LLM在嵌入式机器学习代码生成中存在的可靠性问题。现有方法依赖人工编写代码,效率低下且容易出错。虽然LLM可以自动化代码生成,但其生成的代码经常出现静默失败或不可预测的行为,并且标准验证流程难以检测这些问题。因此,如何理解和解决LLM在嵌入式ML应用中的失效模式是本文要解决的关键问题。

核心思路:论文的核心思路是通过构建一个自动驾驶框架,模拟完整的嵌入式ML流水线,并系统地研究LLM在不同阶段的失效模式。通过控制提示格式、模型选择和结构假设等因素,分析这些因素对成功率和失效特征的影响。同时,对失效案例进行分类,找出常见的根本原因和系统脆弱性。

技术框架:论文构建的自动驾驶框架包含以下主要模块:1) 数据预处理:负责将原始数据转换为LLM可以理解的格式。2) 模型转换:将训练好的机器学习模型转换为适合嵌入式设备部署的格式。3) 代码生成:使用LLM生成设备端推理代码。4) 验证:对生成的代码进行编译和测试,评估其正确性和性能。整个流程自动化执行,可以方便地进行大规模实验和分析。

关键创新:论文的关键创新在于对LLM在嵌入式ML代码生成中的失效模式进行了系统性的实证研究。通过构建自动驾驶框架,可以模拟真实的嵌入式ML应用场景,并对LLM的输出进行全面的评估。此外,论文还提出了失效类别分类法,可以帮助开发者更好地理解和诊断LLM生成代码中的问题。

关键设计:论文的关键设计包括:1) 提示工程:设计不同的提示格式,研究其对LLM输出的影响。2) 模型选择:选择不同的LLM进行实验,比较它们的性能和失效特征。3) 结构假设:研究不同的结构假设对LLM生成代码的影响。4) 验证指标:设计全面的验证指标,包括编译成功率、运行时错误率和性能指标。

📊 实验亮点

研究发现,提示格式、模型行为和结构假设对LLM在嵌入式ML代码生成中的成功率和失效特征有显著影响。例如,特定的提示格式可能导致LLM产生格式错误的输出,而某些LLM模型更容易产生运行时错误。研究还发现,标准验证流水线难以检测到某些类型的失效,例如运行时破坏性代码。通过对失效案例进行分类,研究揭示了常见的根本原因和系统脆弱性。

🎯 应用场景

该研究成果可应用于各种嵌入式机器学习领域,例如智能传感器、物联网设备、边缘计算等。通过提高LLM生成代码的可靠性,可以加速嵌入式ML应用的开发和部署,降低开发成本,并提高产品性能。未来的研究可以探索更有效的提示工程方法、更可靠的验证技术,以及更强大的LLM模型,以进一步提升LLM在嵌入式ML领域的应用价值。

📄 摘要(原文)

Large Language Models (LLMs) are increasingly used to automate software generation in embedded machine learning workflows, yet their outputs often fail silently or behave unpredictably. This article presents an empirical investigation of failure modes in LLM-powered ML pipelines, based on an autopilot framework that orchestrates data preprocessing, model conversion, and on-device inference code generation. We show how prompt format, model behavior, and structural assumptions influence both success rates and failure characteristics, often in ways that standard validation pipelines fail to detect. Our analysis reveals a diverse set of error-prone behaviors, including format-induced misinterpretations and runtime-disruptive code that compiles but breaks downstream. We derive a taxonomy of failure categories and analyze errors across multiple LLMs, highlighting common root causes and systemic fragilities. Though grounded in specific devices, our study reveals broader challenges in LLM-based code generation. We conclude by discussing directions for improving reliability and traceability in LLM-powered embedded ML systems.