OpenHands(旧OpenDevin)をwsl2上で動作をします。LLMはollamaを利用します。
OpenHands用のdocker composeを準備
docker コマンドでもいいのですが、メモ代わりにcompose.yamlを作成して起動します。
docker-compose.yaml
version: "3.9"
services:
openhands-app:
image: docker.all-hands.dev/all-hands-ai/openhands:0.25
container_name: openhands-app
environment:
SANDBOX_RUNTIME_CONTAINER_IMAGE: "docker.all-hands.dev/all-hands-ai/runtime:0.25-nikolaik"
LOG_ALL_EVENTS: "true"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ~/.openhands-state:/.openhands-state
ports:
- "3000:3000"
extra_hosts:
- "host.docker.internal:host-gateway"
stdin_open: true
tty: true
pull_policy: always
起動:
docker compose up -d
Ollamaも起動
ollamaは同じwsl2で起動。
LLM setteings
詳細を開いて設定を行う。
CustomModel : ollama/model name here.
BaseURL: http://host.docker.internal:11434
API Key: dummy

結果
ToDoを作成するサンプルタスクを実行させました。

この程度は無事にできました。複雑なことをさせるには、今回、利用したGPU、RTX 3060で動かせるLLMでは限界があります。エラーやループでなかなか進みませんでした。4090クラスだと結構頑張れるモデルがありそうです。