Flow Engineering
Flow engineering is a procedure that guides a model’s (LLM) problem-solving process by splitting it into well-defined steps.
Implementing a careful pipeline that generates additional data to guide how code is generated and improve the testing process can be more effective than trying to train a large language model from scratch.
E.g. AlphaCodium (code generating bot)
Steps:
- A programming question is fed to an underlying LMM, and it’s asked to summarise the problem.
- AlphaCodium defines things like inputs and outputs.
- The model generates code that aligns with the specifications just described.
- AlphaCodium generates many test cases from the specification, and runs through possible solutions to check if the code is working as expected
- The model keeps generating different solutions until they pass all the tests, or it fails
This is split into a pre-processing phase, where the system analyzes the problem in natural language, and a code-iteration stage, where it runs possible solutions against public and AI-generated tests
References
#engineering #programming #code #artificial_intelligence #procedure #codium #computer_science #tests #learning #few_shot #coding #llm #ai #one_shot #flow #ml