Conversation history made specific to specific operations (generating code in accordance with a grammar, validating code, regenerating with feedback, etc.) helps to reduce token usage and improve response quality by keeping logical threads topical across agents.
Better logging / traceability
With more context specific operations from a multi-agent architecture, traceability is made easier - especially in situations where agents may use the same plugins.
Model flexibility
It is much easier to configure different models for different agents, than specifying different models for plugins. This could allow for fine-tuned models for specific tasks, or simply cheaper models to be used for graceful service degredation.
Greater extensibility and community support
A multi-agent architecture is easy to extend and plug into. Because a demonstration of this pattern is increasingly being requested, this project could better serve community requests by demonstrating the pattern.
Agent candidates
Code generator
The code generator uses RAG to optionally implement zero, one, and few-shot prompting techniques with language definitions, examples of positive use-cases, and examples of negative use cases.
Code validator
The code validator uses lexers/parsers to generate errors unless successful. It implements recursive chain of feedback to isolate the validation thread for a single piece of generated code - until the code is valid, or an exit criteria is satisfied.
Code Custodian
The code custodian cleans the code, formats it, and annotates it (if configured to do so). Linting and Sanitization should be in scope.
Code Sentinel
The sentinel implements security checks to make sure the generated code isn't malicious - and attempts to implement Responsible AI practices.
Code Trainer
* trains ml pipelines for custodian, validator, generator, etc.
* Uses different chunking strategies based on known grammars for top level (first-class) objects of the language.
Architecture migration considerations
Reducing context window
Conversation history made specific to specific operations (generating code in accordance with a grammar, validating code, regenerating with feedback, etc.) helps to reduce token usage and improve response quality by keeping logical threads topical across agents.
Better logging / traceability
With more context specific operations from a multi-agent architecture, traceability is made easier - especially in situations where agents may use the same plugins.
Model flexibility
It is much easier to configure different models for different agents, than specifying different models for plugins. This could allow for fine-tuned models for specific tasks, or simply cheaper models to be used for graceful service degredation.
Greater extensibility and community support
A multi-agent architecture is easy to extend and plug into. Because a demonstration of this pattern is increasingly being requested, this project could better serve community requests by demonstrating the pattern.
Agent candidates
Code generator
The code generator uses RAG to optionally implement zero, one, and few-shot prompting techniques with language definitions, examples of positive use-cases, and examples of negative use cases.
Code validator
The code validator uses lexers/parsers to generate errors unless successful. It implements recursive chain of feedback to isolate the validation thread for a single piece of generated code - until the code is valid, or an exit criteria is satisfied.
Code Custodian
The code custodian cleans the code, formats it, and annotates it (if configured to do so). Linting and Sanitization should be in scope.
Code Sentinel
The sentinel implements security checks to make sure the generated code isn't malicious - and attempts to implement Responsible AI practices.
Code Trainer