Getting started with the OpenDevin project is incredibly easy. Follow these simple steps to set up and run OpenDevin on your system:
- Linux, Mac OS, or WSL on Windows
- Docker
- Python >= 3.11
- NodeJS >= 18.17.1
- Build the Project: Begin by building the project, which includes setting up the environment and installing dependencies. This step ensures that OpenDevin is ready to run smoothly on your system.
make build
OpenDevin supports a diverse array of Language Models (LMs) through the powerful litellm library. By default, we've chosen the mighty GPT-4 from OpenAI as our go-to model, but the world is your oyster! You can unleash the potential of Anthropic's suave Claude, the enigmatic Llama, or any other LM that piques your interest.
To configure the LM of your choice, follow these steps:
-
Using the Makefile: The Effortless Approach With a single command, you can have a smooth LM setup for your OpenDevin experience. Simply run:
make setup-config
This command will prompt you to enter the LLM API key and model name, ensuring that OpenDevin is tailored to your specific needs.
-
Manual Config: The Artisanal Touch If you're feeling particularly adventurous, you can manually update the
config.toml
file located in the project's root directory. Here, you'll find thellm_api_key
andllm_model_name
fields, where you can set the LM of your choosing.
Note on Alternative Models: Some alternative models may prove more challenging to tame than others. Fear not, brave adventurer! We shall soon unveil LLM-specific documentation to guide you on your quest. And if you've already mastered the art of wielding a model other than OpenAI's GPT, we encourage you to share your setup instructions with us.
For a full list of the LM providers and models available, please consult the litellm documentation.
- Run the Application: Once the setup is complete, launching OpenDevin is as simple as running a single command. This command starts both the backend and frontend servers seamlessly, allowing you to interact with OpenDevin without any hassle.
make run
-
Start the Backend Server: If you prefer, you can start the backend server independently to focus on backend-related tasks or configurations.
make start-backend
-
Start the Frontend Server: Similarly, you can start the frontend server on its own to work on frontend-related components or interface enhancements.
make start-frontend