LLM-based and Retrieval-Augmented Control Code Generation

Control code is designed and implemented for industrial automation applications that manage power plants, petrochemical processes, or steel production. Popular large language models (LLM) can synthesize low-level control code in the Structured Text programming notation according to the standard IEC...

Full description

Saved in:
Bibliographic Details
Published in2024 IEEE/ACM International Workshop on Large Language Models for Code (LLM4Code) pp. 22 - 29
Main Authors Koziolek, Heiko, Gruner, Sten, Hark, Rhaban, Ashiwal, Virendra, Linsbauer, Sofia, Eskandani, Nafise
Format Conference Proceeding
LanguageEnglish
Published ACM 20.04.2024
Subjects
Online AccessGet full text
DOI10.1145/3643795.3648384

Cover

More Information
Summary:Control code is designed and implemented for industrial automation applications that manage power plants, petrochemical processes, or steel production. Popular large language models (LLM) can synthesize low-level control code in the Structured Text programming notation according to the standard IEC 61131-3, but are not aware of proprietary control code function block libraries, which are often used in practice. To automate control logic implementation tasks, we proposed a retrieval-augmented control code generation method that can integrate such function blocks into the generated code. With this method control engineers can benefit from the code generation capabilities of LLMs, re-use proprietary and well-tested function blocks, and speed up typical programming tasks significantly. We have evaluated the method using a prototypical implementation based on GPT-4, LangChain, Open-PLC, and the open-source OSCAT function block library. In several spot sample tests, we successfully generated IEC 61131-3 ST code that integrated the desired function blocks, could be compiled, and validated through simulations.CCS CONCEPTS* Software and its engineering Automatic programming; Command and control languages; * Applied computing → Computer-aided design; * Computing methodologies → Natural language processing.
DOI:10.1145/3643795.3648384