AutoGen-Coder is an innovative application based on the AutoGen framework by Microsoft, designed to streamline the software development life cycle (SDLC) through multi-agent conversations. This tool automates the process of generating code and deployment templates from requirement or architecture documents.
- Multi-Agent Conversation: Engages users in a conversational manner, involving expert and critic personas at each stage of the SDLC.
- Comprehensive SDLC Stages: Includes Plan, Design, Develop, Integrate, and Deploy stages, each equipped with specific roles and functions.
- Automated Code and Template Generation: Transforms requirement and architecture documents into executable code and deployment templates.
- To install dependencies, run the following command:
pip install -r requirements.txt
- Create "notebook" directory
- Create a file OAI_CONFIG_LIST (you can add additional models as required)
[
{
"model": "gpt-3.5-turbo",
"api_key": "<KEY>"
},
{
"model": "gpt-3.5-turbo-16k",
"api_key": "<KEY>"
}
]
- In each SDLC/*.py file can modify
self.config_list = autogen.config_list_from_json(
"notebook/OAI_CONFIG_LIST",
filter_dict={
"model": ["gpt-3.5-turbo-16k"]
},
)
-
Setup your AWS access
-
Run the python script to start the model.
-
Enter
exit
to continue when the model prompts for feedback.
AutoGen-Coder is operated through a series of commands, corresponding to different stages of the SDLC:
-
Plan and Design Phase:
- Engages Chief Product Officer and Product Manager for the Plan phase.
- Involves Chief Technology Officer and Software Architect for the Design phase.
main.py --config awslambda --workspace /path/to/dir --project-name name --task "develop a simple HelloWorld API"
main.py --config awslambda --workspace /path/to/dir --project-name name --requirement-doc /path/to/word.docx
-
Direct Architecture Implementation:
- This command expects a technical document and details the resources to be deployed.
- Skips the Plan and Design stages.
main.py --config awslambda --workspace /path/to/dir --project-name name --architecture-doc /path/to/architecture.md