Skip to content

Commit

Permalink
feat: Ubuntu 20.04 images with CUDA and Miniconda3
Browse files Browse the repository at this point in the history
  • Loading branch information
lehcode committed Apr 9, 2024
1 parent 9c19de4 commit a58cf65
Show file tree
Hide file tree
Showing 36 changed files with 690 additions and 9,175 deletions.
46 changes: 46 additions & 0 deletions .env
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# Exposed ports
LITELLM_PORT=11111
JUPYTER_PORT=37799
# Redis ports at host side
HOST_REDIS_SERVER_PORT=16379
HOST_REDIS_INSIGHT_PORT=13333
# Posgres variables
POSTGRES_USER=litellm
POSTGRES_PASSWORD=mysecretpassword
POSTGRES_DB=litellm_memory
POSTGRES_HOST_PORT=15432
POSTGRES_CONTAINER_PORT=5432
# Default Ollama model
LITELLM_DEFAULT_MODEL=mistral
# Default models
EMBEDDING_MODEL=llama2
# Directories
APP_DIR=/var/lib/opendevin
# Path to ollama models directory at the host machine
HOST_MODELS_DIR=/mnt/g/LLMs/ollama/models
# Devin workspace directory
WORKSPACE_DIR=/opt/workspace
# mitmproxy vуrsion
MITMPROXY_VERSION=10.2.4
# mitmproxy directory inside the container
MITMPROXY_DIR=/home/mitmproxy/.mitmproxy
# Toggle debug mode: empty or 'yes'
DEBUG=yes
# NodeJS version
NODE_VERSION=18.20.1
# NodeJS environment
NODE_ENV=development
# API Keys
OPENAI_API_KEY=sk-12345678
# Name of the container's Conda vitual environment
VENV_NAME=od_env
# Time zone is needed by some images to build
TIMEZONE=Europe/Kyiv
# MemGPT configuration file name inside container
MEMGPT_CONFIG_FILE=/etc/memgpt/memgpt.json
# Miniconda root directory
CONDA_DIR=/root/miniconda3
CONDA_CACHE_DIR=/root/anaconda/pkgs
PIP_CACHE_DIR=/root/.cache/pip
PGVECTOR_TEST_DB_URL=postgresql+pg8000://memgpt:memgpt@localhost:8888/memgpt

5 changes: 2 additions & 3 deletions .env.dist
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Exposed ports
LITELLM_PORT=11111
JUPYTER_PORT=37799
REDIS_SERVER_HOST_PORT=16379
REDIS_INSIGHT_HOST_PORT=13333
HOST_REDIS_SERVER_PORT=16379
HOST_REDIS_INSIGHT_PORT=13333
# Posgres variables
POSTGRES_USER=litellm
POSTGRES_PASSWORD=mysecretpassword
Expand Down Expand Up @@ -32,6 +32,5 @@ NODE_ENV=production
# API Keys
OPENAI_API_KEY=sk-12345678
# Nvidia image variables
CUDA_VERSION=12.4.0
CUDA_IMAGE_OS="ubuntu22.04"
VENV_NAME=od_env
4 changes: 1 addition & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ ipython_config.py
# This is especially recommended for binary packages to ensure reproducibility, and is more
# commonly ignored for libraries.
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
# poetry.lock
#poetry.lock

# pdm
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
Expand Down Expand Up @@ -127,7 +127,6 @@ venv/
ENV/
env.bak/
venv.bak/
*venv/

# Spyder project settings
.spyderproject
Expand Down Expand Up @@ -197,7 +196,6 @@ logs
.envrc
/workspace
/debug
cache

# configuration
config.toml
Expand Down
27 changes: 12 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@
*** Thanks again! Now go create something AMAZING! :D
-->



<!-- PROJECT SHIELDS -->
<!--
*** I'm using markdown "reference style" links for readability.
Expand Down Expand Up @@ -34,8 +36,9 @@
</div>




<!-- TABLE OF CONTENTS -->
<!--
<details>
<summary>πŸ—‚οΈ Table of Contents</summary>
<ol>
Expand All @@ -59,7 +62,6 @@
<li><a href="#-license">πŸ“œ License</a></li>
</ol>
</details>
-->

## 🎯 Mission

Expand Down Expand Up @@ -96,6 +98,13 @@ The OpenDevin project is born out of a desire to replicate, enhance, and innovat

OpenDevin is currently a work in progress, but you can already run the alpha version to see the end-to-end system in action. The project team is actively working on the following key milestones:

- **UI**: Developing a user-friendly interface, including a chat interface, a shell demonstrating commands, and a web browser.
- **Architecture**: Building a stable agent framework with a robust backend that can read, write, and run simple commands.
- **Agent Capabilities**: Enhancing the agent's abilities to generate bash scripts, run tests, and perform other software engineering tasks.
- **Evaluation**: Establishing a minimal evaluation pipeline that is consistent with Devin's evaluation criteria.

After completing the MVP, the team will focus on research in various areas, including foundation models, specialist capabilities, evaluation, and agent studies.

<p align="right" style="font-size: 14px; color: #555; margin-top: 20px;">
<a href="#readme-top" style="text-decoration: none; color: #007bff; font-weight: bold;">
↑ Back to Top ↑
Expand All @@ -110,6 +119,7 @@ Getting started with the OpenDevin project is incredibly easy. Follow these simp
* Linux, Mac OS, or [WSL on Windows](https://learn.microsoft.com/en-us/windows/wsl/install)
* [Docker](https://docs.docker.com/engine/install/)
* [Python](https://www.python.org/downloads/) >= 3.11
* [NodeJS](https://nodejs.org/en/download/package-manager) >= 18.17.1

### 2. Build and Setup The Environment

Expand Down Expand Up @@ -145,19 +155,6 @@ For a full list of the LM providers and models available, please consult the [li
docker compose up
```

### 5. Individual Server Startup

- **Start the Backend Server:** If you prefer, you can start the backend server independently to focus on backend-related tasks or configurations.
```bash
docker compose up devin-app
```

- **Start the Frontend Server:** Similarly, you can start the frontend server on its own to work on frontend-related components or interface enhancements.
```bash
docker compose up devin-ui
```


<p align="right" style="font-size: 14px; color: #555; margin-top: 20px;">
<a href="#readme-top" style="text-decoration: none; color: #007bff; font-weight: bold;">
↑ Back to Top ↑
Expand Down
Loading

0 comments on commit a58cf65

Please sign in to comment.