OADS - OpenAI Autogen Development Studio
OADS, or OpenAI Autogen Development Studio, is an exciting project aimed at generating games and programs using the power of OpenAI agents. Built on top of Microsoft's Autogen framework, it is an innovative tool designed for those interested in the automatic generation of complex software solutions.
Why this project?
The motivation behind OADS is the ambition to address the challenges in generating complex and ambitious programs. While there are several impressive projects in this domain, OADS seeks to push the boundaries even further by finding effective ways to automate the production of intricate applications.
Getting Started
OADS is structured to be user-friendly for developers familiar with OpenAI's ecosystem. However, before diving in, users need to prepare by meeting a few prerequisites and setting up the environment properly.
Pre-requisites
To begin using OADS, one must possess either an OpenAI API key or an Azure OpenAI API key. Although GPT-3.5
could suffice for smaller tasks, those aiming to create more sophisticated applications should utilize GPT-4
or even GPT-4-32k
. Consideration of costs is crucial as token usage can escalate, which might make it as expensive as real developer costs.
Anaconda
OADS recommends setting up the environment using Anaconda, a popular package management system, to ensure proper installation and configuration.
-
Installation: Establish a Python environment with the necessary dependencies using Anaconda and Poetry, a tool for dependency management.
conda create -n autogen python=3.10 conda activate autogen pip install poetry poetry install cp env.sample.jsonc env.jsonc
-
Configuration: Edit the
env.json
file to input the API keys and modify settings according to your need. -
Run: Simply use the
make run
command to generate the program's source code in the./project
directory, with options to clean usingmake clean
.
Open Source LLMs
The project leverages open-source Language Learning Models (LLMs), although it is crucial to note that some features may not fully function with these models at the moment.
Run Text Generation Web UI
OADS is designed to work seamlessly with various open-source LLMs supported by the Text Generation Web UI. By enabling the openai
extension in the web UI, users can utilize an OpenAI-like API for their own models. This flexibility allows users to deploy their models on platforms like RunPod for optimal performance.
Setup OADS
This involves setting up model configurations, which may include custom deployments, and ensuring that endpoints adhere to OpenAI API specifications. Users can specify models and endpoints in a configuration file, toggling between local and remote server setups.
{
"models": [
{
"model": "Open-Orca/LlongOrca-13B-16k",
"api_base": "http://localhost:5001",
"api_key": "sk-111111111111111111111111111111111111111111111111",
"api_type": "open_ai"
}
]
}
In conclusion, OADS is a potent tool designed to explore the frontier of automatic program generation. With its robust environment setup and integration with powerful AI models, it offers an exciting pathway for developers aiming to leverage AI in creating sophisticated software solutions.