mirror of
https://github.com/All-Hands-AI/OpenHands.git
synced 2026-04-29 03:00:45 -04:00
Compare commits
1 Commits
feature/pa
...
test-loggi
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
68ac7844ce |
19
.github/.codecov.yml
vendored
Normal file
19
.github/.codecov.yml
vendored
Normal file
@@ -0,0 +1,19 @@
|
||||
codecov:
|
||||
notify:
|
||||
wait_for_ci: true
|
||||
# our project is large, so 6 builds are typically uploaded. this waits till 5/6
|
||||
# See https://docs.codecov.com/docs/notifications#section-preventing-notifications-until-after-n-builds
|
||||
after_n_builds: 5
|
||||
|
||||
coverage:
|
||||
status:
|
||||
patch:
|
||||
default:
|
||||
threshold: 100% # allow patch coverage to be lower than project coverage by any amount
|
||||
project:
|
||||
default:
|
||||
threshold: 5% # allow project coverage to drop at most 5%
|
||||
|
||||
comment: false
|
||||
github_checks:
|
||||
annotations: false
|
||||
11
.github/CODEOWNERS
vendored
11
.github/CODEOWNERS
vendored
@@ -1,11 +0,0 @@
|
||||
# CODEOWNERS file for OpenHands repository
|
||||
# See https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners
|
||||
|
||||
# Frontend code owners
|
||||
/frontend/ @rbren @amanape
|
||||
|
||||
# Evaluation code owners
|
||||
/evaluation/ @xingyaoww @neubig
|
||||
|
||||
# Documentation code owners
|
||||
/docs/ @mamoodi
|
||||
3
.github/scripts/check_version_consistency.py
vendored
3
.github/scripts/check_version_consistency.py
vendored
@@ -2,9 +2,10 @@
|
||||
import os
|
||||
import re
|
||||
import sys
|
||||
from typing import Set, Tuple
|
||||
|
||||
|
||||
def find_version_references(directory: str) -> tuple[set[str], set[str]]:
|
||||
def find_version_references(directory: str) -> Tuple[Set[str], Set[str]]:
|
||||
openhands_versions = set()
|
||||
runtime_versions = set()
|
||||
|
||||
|
||||
4
.github/workflows/fe-unit-tests.yml
vendored
4
.github/workflows/fe-unit-tests.yml
vendored
@@ -42,3 +42,7 @@ jobs:
|
||||
- name: Run tests and collect coverage
|
||||
working-directory: ./frontend
|
||||
run: npm run test:coverage
|
||||
- name: Upload coverage to Codecov
|
||||
uses: codecov/codecov-action@v5
|
||||
env:
|
||||
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
||||
|
||||
12
.github/workflows/ghcr-build.yml
vendored
12
.github/workflows/ghcr-build.yml
vendored
@@ -312,7 +312,11 @@ jobs:
|
||||
SANDBOX_RUNTIME_CONTAINER_IMAGE=$image_name \
|
||||
TEST_IN_CI=true \
|
||||
RUN_AS_OPENHANDS=false \
|
||||
poetry run pytest -n 7 -raRs --reruns 2 --reruns-delay 5 -s ./tests/runtime --ignore=tests/runtime/test_browsergym_envs.py --durations=10
|
||||
poetry run pytest -n 7 -raRs --reruns 2 --reruns-delay 5 --cov=openhands --cov-report=xml -s ./tests/runtime --ignore=tests/runtime/test_browsergym_envs.py --durations=10
|
||||
- name: Upload coverage to Codecov
|
||||
uses: codecov/codecov-action@v5
|
||||
env:
|
||||
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
||||
|
||||
# Run unit tests with the Docker runtime Docker images as openhands user
|
||||
test_runtime_oh:
|
||||
@@ -377,7 +381,11 @@ jobs:
|
||||
SANDBOX_RUNTIME_CONTAINER_IMAGE=$image_name \
|
||||
TEST_IN_CI=true \
|
||||
RUN_AS_OPENHANDS=true \
|
||||
poetry run pytest -n 7 -raRs --reruns 2 --reruns-delay 5 -s ./tests/runtime --ignore=tests/runtime/test_browsergym_envs.py --durations=10
|
||||
poetry run pytest -n 7 -raRs --reruns 2 --reruns-delay 5 --cov=openhands --cov-report=xml -s ./tests/runtime --ignore=tests/runtime/test_browsergym_envs.py --durations=10
|
||||
- name: Upload coverage to Codecov
|
||||
uses: codecov/codecov-action@v5
|
||||
env:
|
||||
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
||||
|
||||
# The two following jobs (named identically) are to check whether all the runtime tests have passed as the
|
||||
# "All Runtime Tests Passed" is a required job for PRs to merge
|
||||
|
||||
9
.github/workflows/openhands-resolver.yml
vendored
9
.github/workflows/openhands-resolver.yml
vendored
@@ -83,7 +83,7 @@ jobs:
|
||||
(github.event.review.author_association == 'OWNER' || github.event.review.author_association == 'COLLABORATOR' || github.event.review.author_association == 'MEMBER')
|
||||
)
|
||||
)
|
||||
runs-on: "${{ inputs.runner || 'ubuntu-latest' }}"
|
||||
runs-on: "${{ inputs.runner }}"
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
@@ -92,9 +92,6 @@ jobs:
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: "3.12"
|
||||
- name: Upgrade pip
|
||||
run: |
|
||||
python -m pip install --upgrade pip
|
||||
|
||||
- name: Get latest versions and create requirements.txt
|
||||
run: |
|
||||
@@ -232,11 +229,11 @@ jobs:
|
||||
// Perform package installation
|
||||
if (isExperimentalLabel || isIssueCommentExperimental || isReviewCommentExperimental) {
|
||||
console.log("Installing experimental OpenHands...");
|
||||
|
||||
await exec.exec("python -m pip install --upgrade pip");
|
||||
await exec.exec("pip install git+https://github.com/all-hands-ai/openhands.git");
|
||||
} else {
|
||||
console.log("Installing from requirements.txt...");
|
||||
|
||||
await exec.exec("python -m pip install --upgrade pip");
|
||||
await exec.exec("pip install -r /tmp/requirements.txt");
|
||||
}
|
||||
|
||||
|
||||
6
.github/workflows/py-unit-tests.yml
vendored
6
.github/workflows/py-unit-tests.yml
vendored
@@ -48,7 +48,11 @@ jobs:
|
||||
- name: Build Environment
|
||||
run: make build
|
||||
- name: Run Tests
|
||||
run: poetry run pytest --forked -n auto -svv ./tests/unit
|
||||
run: poetry run pytest --forked -n auto --cov=openhands --cov-report=xml -svv ./tests/unit
|
||||
- name: Upload coverage to Codecov
|
||||
uses: codecov/codecov-action@v5
|
||||
env:
|
||||
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
||||
|
||||
# Run specific Windows python tests
|
||||
test-on-windows:
|
||||
|
||||
14
.github/workflows/run-eval.yml
vendored
14
.github/workflows/run-eval.yml
vendored
@@ -9,7 +9,7 @@ on:
|
||||
jobs:
|
||||
trigger-job:
|
||||
name: Trigger remote eval job
|
||||
if: ${{ github.event.label.name == 'run-eval-1' || github.event.label.name == 'run-eval-2' || github.event.label.name == 'run-eval-50' || github.event.label.name == 'run-eval-100' }}
|
||||
if: ${{ github.event.label.name == 'run-eval-xs' || github.event.label.name == 'run-eval-s' || github.event.label.name == 'run-eval-m' }}
|
||||
runs-on: blacksmith-4vcpu-ubuntu-2204
|
||||
|
||||
steps:
|
||||
@@ -26,14 +26,12 @@ jobs:
|
||||
echo "Repository URL: $REPO_URL"
|
||||
echo "PR Branch: $PR_BRANCH"
|
||||
|
||||
if [[ "${{ github.event.label.name }}" == "run-eval-1" ]]; then
|
||||
if [[ "${{ github.event.label.name }}" == "run-eval-xs" ]]; then
|
||||
EVAL_INSTANCES="1"
|
||||
elif [[ "${{ github.event.label.name }}" == "run-eval-2" ]]; then
|
||||
EVAL_INSTANCES="2"
|
||||
elif [[ "${{ github.event.label.name }}" == "run-eval-50" ]]; then
|
||||
EVAL_INSTANCES="50"
|
||||
elif [[ "${{ github.event.label.name }}" == "run-eval-100" ]]; then
|
||||
EVAL_INSTANCES="100"
|
||||
elif [[ "${{ github.event.label.name }}" == "run-eval-s" ]]; then
|
||||
EVAL_INSTANCES="5"
|
||||
elif [[ "${{ github.event.label.name }}" == "run-eval-m" ]]; then
|
||||
EVAL_INSTANCES="30"
|
||||
fi
|
||||
|
||||
curl -X POST \
|
||||
|
||||
@@ -1,3 +1,8 @@
|
||||
---
|
||||
name: repo
|
||||
type: repo
|
||||
agent: CodeActAgent
|
||||
---
|
||||
This repository contains the code for OpenHands, an automated AI software engineer. It has a Python backend
|
||||
(in the `openhands` directory) and React frontend (in the `frontend` directory).
|
||||
|
||||
@@ -9,7 +14,7 @@ IMPORTANT: Before making any changes to the codebase, ALWAYS run `make install-p
|
||||
|
||||
Before pushing any changes, you MUST ensure that any lint errors or simple test errors have been fixed.
|
||||
|
||||
* If you've made changes to the backend, you should run `pre-commit run --config ./dev_config/python/.pre-commit-config.yaml` (this will run on staged files).
|
||||
* If you've made changes to the backend, you should run `pre-commit run --all-files --config ./dev_config/python/.pre-commit-config.yaml`
|
||||
* If you've made changes to the frontend, you should run `cd frontend && npm run lint:fix && npm run build ; cd ..`
|
||||
|
||||
The pre-commit hooks MUST pass successfully before pushing any changes to the repository. This is a mandatory requirement to maintain code quality and consistency.
|
||||
|
||||
0
.openhands/pre-commit.sh
Executable file → Normal file
0
.openhands/pre-commit.sh
Executable file → Normal file
@@ -1,8 +1,8 @@
|
||||
# Development Guide
|
||||
|
||||
This guide is for people working on OpenHands and editing the source code.
|
||||
If you wish to contribute your changes, check out the [CONTRIBUTING.md](https://github.com/All-Hands-AI/OpenHands/blob/main/CONTRIBUTING.md) on how to clone and setup the project
|
||||
initially before moving on. Otherwise, you can clone the OpenHands project directly.
|
||||
If you wish to contribute your changes, check out the [CONTRIBUTING.md](https://github.com/All-Hands-AI/OpenHands/blob/main/CONTRIBUTING.md) on how to clone and setup the project initially before moving on.
|
||||
Otherwise, you can clone the OpenHands project directly.
|
||||
|
||||
## Start the Server for Development
|
||||
|
||||
@@ -14,15 +14,14 @@ initially before moving on. Otherwise, you can clone the OpenHands project direc
|
||||
- [NodeJS](https://nodejs.org/en/download/package-manager) >= 22.x
|
||||
- [Poetry](https://python-poetry.org/docs/#installing-with-the-official-installer) >= 1.8
|
||||
- OS-specific dependencies:
|
||||
- Ubuntu: build-essential => `sudo apt-get install build-essential python3.12-dev`
|
||||
- Ubuntu: build-essential => `sudo apt-get install build-essential`
|
||||
- WSL: netcat => `sudo apt-get install netcat`
|
||||
|
||||
Make sure you have all these dependencies installed before moving on to `make build`.
|
||||
|
||||
#### Develop without sudo access
|
||||
|
||||
If you want to develop without system admin/sudo access to upgrade/install `Python` and/or `NodeJs`, you can use
|
||||
`conda` or `mamba` to manage the packages for you:
|
||||
If you want to develop without system admin/sudo access to upgrade/install `Python` and/or `NodeJs`, you can use `conda` or `mamba` to manage the packages for you:
|
||||
|
||||
```bash
|
||||
# Download and install Mamba (a faster version of conda)
|
||||
@@ -37,8 +36,7 @@ mamba install conda-forge::poetry
|
||||
|
||||
### 2. Build and Setup The Environment
|
||||
|
||||
Begin by building the project which includes setting up the environment and installing dependencies. This step ensures
|
||||
that OpenHands is ready to run on your system:
|
||||
Begin by building the project which includes setting up the environment and installing dependencies. This step ensures that OpenHands is ready to run on your system:
|
||||
|
||||
```bash
|
||||
make build
|
||||
@@ -47,6 +45,8 @@ make build
|
||||
### 3. Configuring the Language Model
|
||||
|
||||
OpenHands supports a diverse array of Language Models (LMs) through the powerful [litellm](https://docs.litellm.ai) library.
|
||||
By default, we've chosen Claude Sonnet 3.5 as our go-to model, but the world is your oyster! You can unleash the
|
||||
potential of any other LM that piques your interest.
|
||||
|
||||
To configure the LM of your choice, run:
|
||||
|
||||
@@ -54,12 +54,9 @@ To configure the LM of your choice, run:
|
||||
make setup-config
|
||||
```
|
||||
|
||||
This command will prompt you to enter the LLM API key, model name, and other variables ensuring that OpenHands is
|
||||
tailored to your specific needs. Note that the model name will apply only when you run headless. If you use the UI,
|
||||
please set the model in the UI.
|
||||
This command will prompt you to enter the LLM API key, model name, and other variables ensuring that OpenHands is tailored to your specific needs. Note that the model name will apply only when you run headless. If you use the UI, please set the model in the UI.
|
||||
|
||||
Note: If you have previously run OpenHands using the docker command, you may have already set some environmental
|
||||
variables in your terminal. The final configurations are set from highest to lowest priority:
|
||||
Note: If you have previously run OpenHands using the docker command, you may have already set some environmental variables in your terminal. The final configurations are set from highest to lowest priority:
|
||||
Environment variables > config.toml variables > default variables
|
||||
|
||||
**Note on Alternative Models:**
|
||||
@@ -77,15 +74,13 @@ make run
|
||||
|
||||
#### Option B: 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.
|
||||
- **Start the Backend Server:** If you prefer, you can start the backend server independently to focus on backend-related tasks or configurations.
|
||||
|
||||
```bash
|
||||
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.
|
||||
- **Start the Frontend Server:** Similarly, you can start the frontend server on its own to work on frontend-related components or interface enhancements.
|
||||
```bash
|
||||
make start-frontend
|
||||
```
|
||||
@@ -120,10 +115,10 @@ poetry run pytest ./tests/unit/test_*.py
|
||||
|
||||
### 9. Use existing Docker image
|
||||
|
||||
To reduce build time (e.g., if no changes were made to the client-runtime component), you can use an existing Docker
|
||||
container image by setting the SANDBOX_RUNTIME_CONTAINER_IMAGE environment variable to the desired Docker image.
|
||||
To reduce build time (e.g., if no changes were made to the client-runtime component), you can use an existing Docker container image by
|
||||
setting the SANDBOX_RUNTIME_CONTAINER_IMAGE environment variable to the desired Docker image.
|
||||
|
||||
Example: `export SANDBOX_RUNTIME_CONTAINER_IMAGE=ghcr.io/all-hands-ai/runtime:0.38-nikolaik`
|
||||
Example: `export SANDBOX_RUNTIME_CONTAINER_IMAGE=ghcr.io/all-hands-ai/runtime:0.37-nikolaik`
|
||||
|
||||
## Develop inside Docker container
|
||||
|
||||
|
||||
@@ -3,12 +3,17 @@ These are the procedures and guidelines on how issues are triaged in this repo b
|
||||
|
||||
## General
|
||||
* All issues must be tagged with **enhancement**, **bug** or **troubleshooting/help**.
|
||||
* Issues may be tagged with what it relates to (**agent quality**, **resolver**, **CLI**, etc.).
|
||||
* Issues may be tagged with what it relates to (**agent quality**, **frontend**, **resolver**, etc.).
|
||||
|
||||
## Severity
|
||||
* **Low**: Minor issues or affecting single user.
|
||||
* **Medium**: Affecting multiple users.
|
||||
* **High**: High visibility issues or affecting many users.
|
||||
* **Critical**: Affecting all users or potential security issues.
|
||||
|
||||
## Effort
|
||||
* Issues may be estimated with effort required (**small effort**, **medium effort**, **large effort**).
|
||||
|
||||
## Difficulty
|
||||
* Issues with low implementation difficulty may be tagged with **good first issue**.
|
||||
|
||||
|
||||
17
Makefile
17
Makefile
@@ -154,20 +154,21 @@ install-python-dependencies:
|
||||
fi
|
||||
@if [ "${INSTALL_PLAYWRIGHT}" != "false" ] && [ "${INSTALL_PLAYWRIGHT}" != "0" ]; then \
|
||||
if [ -f "/etc/manjaro-release" ]; then \
|
||||
echo "$(BLUE)Detected Manjaro Linux. Installing Patchright dependencies...$(RESET)"; \
|
||||
poetry run patchright install chromium; \
|
||||
echo "$(BLUE)Detected Manjaro Linux. Installing Playwright dependencies...$(RESET)"; \
|
||||
poetry run pip install playwright; \
|
||||
poetry run playwright install chromium; \
|
||||
else \
|
||||
if [ ! -f cache/patchright_chromium_is_installed.txt ]; then \
|
||||
echo "Installing patchright chromium..."; \
|
||||
poetry run patchright install chromium; \
|
||||
if [ ! -f cache/playwright_chromium_is_installed.txt ]; then \
|
||||
echo "Running playwright install --with-deps chromium..."; \
|
||||
poetry run playwright install --with-deps chromium; \
|
||||
mkdir -p cache; \
|
||||
touch cache/patchright_chromium_is_installed.txt; \
|
||||
touch cache/playwright_chromium_is_installed.txt; \
|
||||
else \
|
||||
echo "Setup already done. Skipping patchright installation."; \
|
||||
echo "Setup already done. Skipping playwright installation."; \
|
||||
fi \
|
||||
fi \
|
||||
else \
|
||||
echo "Skipping Patchright installation (INSTALL_PLAYWRIGHT=${INSTALL_PLAYWRIGHT})."; \
|
||||
echo "Skipping Playwright installation (INSTALL_PLAYWRIGHT=${INSTALL_PLAYWRIGHT})."; \
|
||||
fi
|
||||
@echo "$(GREEN)Python dependencies installed successfully.$(RESET)"
|
||||
|
||||
|
||||
13
README.md
13
README.md
@@ -51,17 +51,17 @@ system requirements and more information.
|
||||
|
||||
|
||||
```bash
|
||||
docker pull docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik
|
||||
docker pull docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik
|
||||
|
||||
docker run -it --rm --pull=always \
|
||||
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik \
|
||||
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik \
|
||||
-e LOG_ALL_EVENTS=true \
|
||||
-v /var/run/docker.sock:/var/run/docker.sock \
|
||||
-v ~/.openhands-state:/.openhands-state \
|
||||
-p 3000:3000 \
|
||||
--add-host host.docker.internal:host-gateway \
|
||||
--name openhands-app \
|
||||
docker.all-hands.dev/all-hands-ai/openhands:0.38
|
||||
docker.all-hands.dev/all-hands-ai/openhands:0.37
|
||||
```
|
||||
|
||||
You'll find OpenHands running at [http://localhost:3000](http://localhost:3000)!
|
||||
@@ -99,6 +99,13 @@ check out our [documentation](https://docs.all-hands.dev/modules/usage/getting-s
|
||||
There you'll find resources on how to use different LLM providers,
|
||||
troubleshooting resources, and advanced configuration options.
|
||||
|
||||
### Custom Scripts
|
||||
|
||||
OpenHands supports custom scripts that run at different points in the runtime lifecycle:
|
||||
|
||||
- **setup.sh**: Place this script in the `.openhands` directory of your repository to run custom setup commands when the runtime initializes.
|
||||
- **pre-commit.sh**: Place this script in the `.openhands` directory to add a custom git pre-commit hook that runs before each commit. This can be used to enforce code quality standards, run tests, or perform other checks before allowing commits.
|
||||
|
||||
## 🤝 How to Join the Community
|
||||
|
||||
OpenHands is a community-driven project, and we welcome contributions from everyone. We do most of our communication
|
||||
|
||||
@@ -255,11 +255,6 @@ enable_history_truncation = true
|
||||
# useful when an agent doesn't demand high quality but uses a lot of tokens
|
||||
llm_config = 'gpt3'
|
||||
|
||||
[agent.CustomAgent]
|
||||
# Example: use a custom agent from a different package
|
||||
# This will be automatically be registered as a new agent named "CustomAgent"
|
||||
classpath = "my_package.my_module.MyCustomAgent"
|
||||
|
||||
#################################### Sandbox ###################################
|
||||
# Configuration for the sandbox
|
||||
##############################################################################
|
||||
|
||||
@@ -11,7 +11,7 @@ services:
|
||||
- BACKEND_HOST=${BACKEND_HOST:-"0.0.0.0"}
|
||||
- SANDBOX_API_HOSTNAME=host.docker.internal
|
||||
#
|
||||
- SANDBOX_RUNTIME_CONTAINER_IMAGE=${SANDBOX_RUNTIME_CONTAINER_IMAGE:-ghcr.io/all-hands-ai/runtime:0.38-nikolaik}
|
||||
- SANDBOX_RUNTIME_CONTAINER_IMAGE=${SANDBOX_RUNTIME_CONTAINER_IMAGE:-ghcr.io/all-hands-ai/runtime:0.37-nikolaik}
|
||||
- SANDBOX_USER_ID=${SANDBOX_USER_ID:-1234}
|
||||
- WORKSPACE_MOUNT_PATH=${WORKSPACE_BASE:-$PWD/workspace}
|
||||
ports:
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
repos:
|
||||
- repo: https://github.com/pre-commit/pre-commit-hooks
|
||||
rev: v5.0.0
|
||||
rev: v4.5.0
|
||||
hooks:
|
||||
- id: trailing-whitespace
|
||||
exclude: docs/modules/python
|
||||
@@ -10,17 +10,17 @@ repos:
|
||||
- id: debug-statements
|
||||
|
||||
- repo: https://github.com/tox-dev/pyproject-fmt
|
||||
rev: v2.5.1
|
||||
rev: 1.7.0
|
||||
hooks:
|
||||
- id: pyproject-fmt
|
||||
- repo: https://github.com/abravalheri/validate-pyproject
|
||||
rev: v0.24.1
|
||||
rev: v0.16
|
||||
hooks:
|
||||
- id: validate-pyproject
|
||||
|
||||
- repo: https://github.com/astral-sh/ruff-pre-commit
|
||||
# Ruff version.
|
||||
rev: v0.11.8
|
||||
rev: v0.4.1
|
||||
hooks:
|
||||
# Run the linter.
|
||||
- id: ruff
|
||||
@@ -33,7 +33,7 @@ repos:
|
||||
types_or: [python, pyi, jupyter]
|
||||
|
||||
- repo: https://github.com/pre-commit/mirrors-mypy
|
||||
rev: v1.15.0
|
||||
rev: v1.9.0
|
||||
hooks:
|
||||
- id: mypy
|
||||
additional_dependencies:
|
||||
|
||||
@@ -20,12 +20,6 @@ ignore = [
|
||||
"B010",
|
||||
"B904",
|
||||
"B018",
|
||||
# Temporarily ignore ASYNC rules until they can be properly fixed in a separate PR
|
||||
"ASYNC110",
|
||||
"ASYNC220",
|
||||
"ASYNC221",
|
||||
"ASYNC230",
|
||||
"ASYNC251",
|
||||
]
|
||||
|
||||
[lint.flake8-quotes]
|
||||
|
||||
@@ -7,7 +7,7 @@ services:
|
||||
image: openhands:latest
|
||||
container_name: openhands-app-${DATE:-}
|
||||
environment:
|
||||
- SANDBOX_RUNTIME_CONTAINER_IMAGE=${SANDBOX_RUNTIME_CONTAINER_IMAGE:-docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik}
|
||||
- SANDBOX_RUNTIME_CONTAINER_IMAGE=${SANDBOX_RUNTIME_CONTAINER_IMAGE:-docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik}
|
||||
#- SANDBOX_USER_ID=${SANDBOX_USER_ID:-1234} # enable this only if you want a specific non-root sandbox user but you will have to manually adjust permissions of openhands-state for this user
|
||||
- WORKSPACE_MOUNT_PATH=${WORKSPACE_BASE:-$PWD/workspace}
|
||||
ports:
|
||||
|
||||
@@ -4,32 +4,37 @@ This website is built using [Docusaurus](https://docusaurus.io/).
|
||||
|
||||
When published, the content will be published at https://docs.all-hands.dev/.
|
||||
|
||||
### Local Development
|
||||
### Installation
|
||||
|
||||
```bash
|
||||
$ cd docs
|
||||
$ npm install
|
||||
$ npm run start
|
||||
$ yarn
|
||||
```
|
||||
|
||||
This command starts a local development server and opens up a browser window.
|
||||
Most changes are reflected live without having to restart the server.
|
||||
### Local Development
|
||||
|
||||
```
|
||||
$ yarn start # for the default English version
|
||||
```
|
||||
|
||||
This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
|
||||
|
||||
Alternatively, you can pass a `--locale` argument to render a specific language in dev mode as in:
|
||||
|
||||
```
|
||||
$ npm run start --locale pt-BR # for the Brazilian Portuguese version
|
||||
$ npm run start --locale fr # for the French version
|
||||
$ npm run start --locale zh-Hans # for the Chinese Han (simplified variant) version
|
||||
$ yarn start --locale pt-BR # for the Brazilian Portuguese version
|
||||
$ yarn start --locale fr # for the French version
|
||||
$ yarn start --locale zh-Hans # for the Chinese Han (simplified variant) version
|
||||
```
|
||||
|
||||
### Build
|
||||
|
||||
```
|
||||
$ npm run build
|
||||
$ yarn build
|
||||
```
|
||||
|
||||
This command generates static content into the `build` directory and can be served using any static contents hosting service.
|
||||
|
||||
It compiles all languages.
|
||||
|
||||
### Deployment
|
||||
|
||||
@@ -22,4 +22,4 @@ Veuillez noter que la sélection de ces technologies est en cours, et des techno
|
||||
|
||||
## Licence
|
||||
|
||||
Distribué sous la [Licence](https://github.com/All-Hands-AI/OpenHands/blob/main/LICENSE) MIT.
|
||||
Distribué sous la [Licence](https://github.com/All-Hands-AI/OpenHands/blob/main/LICENSE) MIT.
|
||||
@@ -20,4 +20,4 @@ L'idée conceptuelle est illustrée ci-dessous. À chaque tour, l'agent peut :
|
||||
|
||||
https://github.com/All-Hands-AI/OpenHands/assets/38853559/f592a192-e86c-4f48-ad31-d69282d5f6ac
|
||||
|
||||
_Exemple de CodeActAgent avec `gpt-4-turbo-2024-04-09` réalisant une tâche de science des données (régression linéaire)_.
|
||||
_Exemple de CodeActAgent avec `gpt-4-turbo-2024-04-09` réalisant une tâche de science des données (régression linéaire)_.
|
||||
@@ -51,4 +51,4 @@ _**Avertissement** : L'architecture backend est en cours de développement et pe
|
||||
6. Exporter le diagramme en fichiers PNG et SVG et remplacer les diagrammes existants dans le répertoire `docs/architecture`. Cela peut être fait avec (par exemple [PlantText](https://www.planttext.com/))
|
||||
|
||||
</div>
|
||||
</details>
|
||||
</details>
|
||||
@@ -125,4 +125,4 @@ Aspects clés du système de plugins :
|
||||
2. Enregistrement du plugin : Les plugins disponibles sont enregistrés dans un dictionnaire `ALL_PLUGINS`
|
||||
3. Spécification du plugin : Les plugins sont associés à `Agent.sandbox_plugins: list[PluginRequirement]`. Les utilisateurs peuvent spécifier quels plugins charger lors de l'initialisation du runtime
|
||||
4. Initialisation : Les plugins sont initialisés de manière asynchrone au démarrage du client runtime
|
||||
5. Utilisation : Le client runtime peut utiliser les plugins initialisés pour étendre ses capacités (par exemple, le JupyterPlugin pour exécuter des cellules IPython)
|
||||
5. Utilisation : Le client runtime peut utiliser les plugins initialisés pour étendre ses capacités (par exemple, le JupyterPlugin pour exécuter des cellules IPython)
|
||||
@@ -69,7 +69,7 @@ data = {
|
||||
response = requests.post(url, headers=headers, json=data)
|
||||
conversation = response.json()
|
||||
|
||||
print(f"Conversation Link: https://app.all-hands.dev/conversations/{conversation['conversation_id']}")
|
||||
print(f"Conversation Link: https://app.all-hands.dev/conversations/{conversation['id']}")
|
||||
print(f"Status: {conversation['status']}")
|
||||
```
|
||||
</details>
|
||||
@@ -174,4 +174,4 @@ La réponse est formatée comme suit :
|
||||
|
||||
L'API a une limite de 10 conversations simultanées par compte. Si vous avez besoin d'une limite plus élevée pour votre cas d'utilisation, veuillez nous contacter à [contact@all-hands.dev](mailto:contact@all-hands.dev).
|
||||
|
||||
Si vous dépassez cette limite, l'API renverra une réponse 429 Too Many Requests.
|
||||
Si vous dépassez cette limite, l'API renverra une réponse 429 Too Many Requests.
|
||||
@@ -4,12 +4,12 @@ Le Résolveur GitHub automatise les corrections de code et fournit une assistanc
|
||||
|
||||
## Configuration
|
||||
|
||||
Le Résolveur GitHub Cloud est disponible automatiquement lorsque vous
|
||||
Le Résolveur GitHub Cloud est disponible automatiquement lorsque vous
|
||||
[accordez l'accès au dépôt OpenHands Cloud](./openhands-cloud#adding-repository-access).
|
||||
|
||||
## Utilisation
|
||||
|
||||
Après avoir accordé l'accès au dépôt OpenHands Cloud, vous pouvez utiliser le Résolveur GitHub Cloud sur les problèmes et les pull requests
|
||||
Après avoir accordé l'accès au dépôt OpenHands Cloud, vous pouvez utiliser le Résolveur GitHub Cloud sur les problèmes et les pull requests
|
||||
du dépôt.
|
||||
|
||||
### Problèmes (Issues)
|
||||
@@ -30,4 +30,4 @@ Pour qu'OpenHands travaille sur des pull requests, utilisez `@openhands` dans le
|
||||
|
||||
OpenHands va :
|
||||
1. Commenter la PR pour vous informer qu'il y travaille.
|
||||
2. Effectuer la tâche.
|
||||
2. Effectuer la tâche.
|
||||
@@ -62,4 +62,4 @@ Lorsque vous utilisez votre compte GitLab, OpenHands aura automatiquement accès
|
||||
|
||||
- Liste des conversations – Affiche uniquement les 10 conversations les plus récentes initiées au cours des 10 derniers jours.
|
||||
- Espaces de travail – Les espaces de travail de conversation sont conservés pendant 14 jours.
|
||||
- Environnements d'exécution – Les environnements d'exécution restent actifs ("chauds") pendant 30 minutes. Après cette période, la reprise d'une conversation peut prendre 1 à 2 minutes.
|
||||
- Environnements d'exécution – Les environnements d'exécution restent actifs ("chauds") pendant 30 minutes. Après cette période, la reprise d'une conversation peut prendre 1 à 2 minutes.
|
||||
@@ -392,4 +392,4 @@ Pour les utiliser avec la commande docker, passez `-e SANDBOX_<option>`. Exemple
|
||||
|
||||
Les options de configuration de sécurité sont définies dans la section `[security]` du fichier `config.toml`.
|
||||
|
||||
Pour les utiliser avec la commande docker, passez `-e SECURITY
|
||||
Pour les utiliser avec la commande docker, passez `-e SECURITY
|
||||
@@ -20,4 +20,4 @@ export MY_ENV_VAR="my value"
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y lsof
|
||||
cd frontend && npm install ; cd ..
|
||||
```
|
||||
```
|
||||
@@ -35,4 +35,4 @@ Pour les données sur les serveurs d'All Hands AI, nous sommes heureux de les su
|
||||
|
||||
**Une Seule Donnée :** Si vous souhaitez qu'une donnée soit supprimée, nous ajouterons prochainement un mécanisme pour supprimer des éléments de données en utilisant le lien et le mot de passe qui s'affichent sur l'interface lorsque vous soumettez des données.
|
||||
|
||||
**Toutes les Données :** Si vous souhaitez que toutes vos données soient supprimées, ou si vous ne disposez pas de l'identifiant et du mot de passe que vous avez reçus lors de la soumission des données, veuillez contacter `contact@all-hands.dev` depuis l'adresse e-mail que vous avez enregistrée lors de la soumission initiale des données.
|
||||
**Toutes les Données :** Si vous souhaitez que toutes vos données soient supprimées, ou si vous ne disposez pas de l'identifiant et du mot de passe que vous avez reçus lors de la soumission des données, veuillez contacter `contact@all-hands.dev` depuis l'adresse e-mail que vous avez enregistrée lors de la soumission initiale des données.
|
||||
@@ -1,10 +1,10 @@
|
||||
# Premiers pas avec OpenHands
|
||||
|
||||
Vous avez [exécuté OpenHands](./installation) et vous avez
|
||||
Vous avez [exécuté OpenHands](./installation) et vous avez
|
||||
[configuré votre LLM](./installation#setup). Et maintenant ?
|
||||
|
||||
OpenHands peut vous aider pour diverses tâches d'ingénierie. Cependant, la technologie est encore nouvelle, et nous sommes loin d'avoir
|
||||
des agents capables de gérer des tâches complexes de manière autonome. Il est important de comprendre ce que l'agent fait bien et où il
|
||||
OpenHands peut vous aider pour diverses tâches d'ingénierie. Cependant, la technologie est encore nouvelle, et nous sommes loin d'avoir
|
||||
des agents capables de gérer des tâches complexes de manière autonome. Il est important de comprendre ce que l'agent fait bien et où il
|
||||
a besoin de soutien.
|
||||
|
||||
## Hello World
|
||||
@@ -96,4 +96,4 @@ Gardez ces conseils à l'esprit :
|
||||
* Fournissez beaucoup de contexte.
|
||||
* Committez et poussez fréquemment.
|
||||
|
||||
Consultez [Meilleures pratiques de prompt](./prompting/prompting-best-practices) pour plus de conseils sur la façon de tirer le meilleur parti d'OpenHands.
|
||||
Consultez [Meilleures pratiques de prompt](./prompting/prompting-best-practices) pour plus de conseils sur la façon de tirer le meilleur parti d'OpenHands.
|
||||
@@ -37,7 +37,7 @@ Pour exécuter OpenHands en mode CLI avec Docker :
|
||||
```bash
|
||||
docker run -it \
|
||||
--pull=always \
|
||||
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik \
|
||||
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik \
|
||||
-e SANDBOX_USER_ID=$(id -u) \
|
||||
-e SANDBOX_VOLUMES=$SANDBOX_VOLUMES \
|
||||
-e LLM_API_KEY=$LLM_API_KEY \
|
||||
@@ -46,10 +46,10 @@ docker run -it \
|
||||
-v ~/.openhands-state:/.openhands-state \
|
||||
--add-host host.docker.internal:host-gateway \
|
||||
--name openhands-app-$(date +%Y%m%d%H%M%S) \
|
||||
docker.all-hands.dev/all-hands-ai/openhands:0.38 \
|
||||
docker.all-hands.dev/all-hands-ai/openhands:0.37 \
|
||||
python -m openhands.core.cli
|
||||
```
|
||||
|
||||
Cette commande lancera une session interactive dans Docker où vous pourrez saisir des tâches et recevoir des réponses d'OpenHands.
|
||||
|
||||
Le paramètre `-e SANDBOX_USER_ID=$(id -u)` est transmis à la commande Docker pour s'assurer que l'utilisateur du sandbox correspond aux permissions de l'utilisateur hôte. Cela empêche l'agent de créer des fichiers appartenant à root dans l'espace de travail monté.
|
||||
Le paramètre `-e SANDBOX_USER_ID=$(id -u)` est transmis à la commande Docker pour s'assurer que l'utilisateur du sandbox correspond aux permissions de l'utilisateur hôte. Cela empêche l'agent de créer des fichiers appartenant à root dans l'espace de travail monté.
|
||||
@@ -92,4 +92,4 @@ platform = "linux/amd64"
|
||||
|
||||
### Exécution
|
||||
|
||||
Exécutez OpenHands en lançant ```make run``` dans le répertoire principal.
|
||||
Exécutez OpenHands en lançant ```make run``` dans le répertoire principal.
|
||||
@@ -68,4 +68,4 @@ Les valeurs dans l'extrait ci-dessus peuvent être mises à jour de sorte que :
|
||||
* *d* : le répertoire de travail openhands
|
||||
* *c* : l'agent
|
||||
* *l* : la configuration LLM (prédéfinie dans config.toml)
|
||||
* *n* : nom de session (par exemple, nom d'eventstream)
|
||||
* *n* : nom de session (par exemple, nom d'eventstream)
|
||||
@@ -71,4 +71,4 @@ Lorsque vous apportez des modifications au code, veuillez vous assurer que :
|
||||
1. La documentation pertinente est mise à jour pour refléter vos changements
|
||||
2. Les nouvelles fonctionnalités sont documentées dans les fichiers README appropriés
|
||||
3. Tout changement d'API est reflété dans la documentation du serveur
|
||||
4. La documentation suit le guide de style dans `/docs/DOC_STYLE_GUIDE.md`
|
||||
4. La documentation suit le guide de style dans `/docs/DOC_STYLE_GUIDE.md`
|
||||
@@ -275,4 +275,4 @@ Cette fonction fait ce qui suit :
|
||||
2. Vérifie combien de fois l'agent a tenté de communiquer avec l'utilisateur
|
||||
3. Si l'agent a fait plusieurs tentatives, elle lui fournit une option pour abandonner
|
||||
|
||||
En utilisant cette fonction, vous pouvez assurer un comportement cohérent à travers plusieurs séries d'évaluations et empêcher l'agent de rester bloqué en attendant une entrée humaine.
|
||||
En utilisant cette fonction, vous pouvez assurer un comportement cohérent à travers plusieurs séries d'évaluations et empêcher l'agent de rester bloqué en attendant une entrée humaine.
|
||||
@@ -48,4 +48,4 @@ Les options de personnalisation que vous pouvez définir sont :
|
||||
| `OPENHANDS_MAX_ITER` | Variable | Définir la limite maximale d'itérations de l'agent | `OPENHANDS_MAX_ITER=10` |
|
||||
| `OPENHANDS_MACRO` | Variable | Personnaliser la macro par défaut pour invoquer le résolveur | `OPENHANDS_MACRO=@resolveit` |
|
||||
| `OPENHANDS_BASE_CONTAINER_IMAGE` | Variable | Sandbox personnalisé ([en savoir plus](https://docs.all-hands.dev/modules/usage/how-to/custom-sandbox-guide)) | `OPENHANDS_BASE_CONTAINER_IMAGE="custom_image"` |
|
||||
| `TARGET_BRANCH` | Variable | Fusionner vers une branche autre que `main` | `TARGET_BRANCH="dev"` |
|
||||
| `TARGET_BRANCH` | Variable | Fusionner vers une branche autre que `main` | `TARGET_BRANCH="dev"` |
|
||||
@@ -139,4 +139,4 @@ OpenHands exporte automatiquement un `GITLAB_TOKEN` vers l'environnement shell s
|
||||
- Utilisez l'un des modèles recommandés, comme décrit dans la [section LLMs](usage/llms/llms.md).
|
||||
|
||||
N'oubliez pas que le mode GUI d'OpenHands est conçu pour rendre votre interaction avec l'assistant IA aussi fluide et intuitive
|
||||
que possible. N'hésitez pas à explorer ses fonctionnalités pour maximiser votre productivité.
|
||||
que possible. N'hésitez pas à explorer ses fonctionnalités pour maximiser votre productivité.
|
||||
@@ -34,7 +34,7 @@ Pour exécuter OpenHands en mode Headless avec Docker :
|
||||
```bash
|
||||
docker run -it \
|
||||
--pull=always \
|
||||
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik \
|
||||
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik \
|
||||
-e SANDBOX_USER_ID=$(id -u) \
|
||||
-e SANDBOX_VOLUMES=$SANDBOX_VOLUMES \
|
||||
-e LLM_API_KEY=$LLM_API_KEY \
|
||||
@@ -44,7 +44,7 @@ docker run -it \
|
||||
-v ~/.openhands-state:/.openhands-state \
|
||||
--add-host host.docker.internal:host-gateway \
|
||||
--name openhands-app-$(date +%Y%m%d%H%M%S) \
|
||||
docker.all-hands.dev/all-hands-ai/openhands:0.38 \
|
||||
docker.all-hands.dev/all-hands-ai/openhands:0.37 \
|
||||
python -m openhands.core.main -t "write a bash script that prints hi"
|
||||
```
|
||||
|
||||
@@ -56,4 +56,4 @@ Pour voir toutes les options de configuration disponibles pour le mode headless,
|
||||
|
||||
### Journaux supplémentaires
|
||||
|
||||
Pour que le mode headless enregistre toutes les actions de l'agent, exécutez dans le terminal : `export LOG_ALL_EVENTS=true`
|
||||
Pour que le mode headless enregistre toutes les actions de l'agent, exécutez dans le terminal : `export LOG_ALL_EVENTS=true`
|
||||
@@ -58,17 +58,17 @@ Un système avec un processeur moderne et un minimum de **4 Go de RAM** est reco
|
||||
La façon la plus simple d'exécuter OpenHands est dans Docker.
|
||||
|
||||
```bash
|
||||
docker pull docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik
|
||||
docker pull docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik
|
||||
|
||||
docker run -it --rm --pull=always \
|
||||
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik \
|
||||
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik \
|
||||
-e LOG_ALL_EVENTS=true \
|
||||
-v /var/run/docker.sock:/var/run/docker.sock \
|
||||
-v ~/.openhands-state:/.openhands-state \
|
||||
-p 3000:3000 \
|
||||
--add-host host.docker.internal:host-gateway \
|
||||
--name openhands-app \
|
||||
docker.all-hands.dev/all-hands-ai/openhands:0.38
|
||||
docker.all-hands.dev/all-hands-ai/openhands:0.37
|
||||
```
|
||||
|
||||
Vous trouverez OpenHands en cours d'exécution à l'adresse http://localhost:3000 !
|
||||
@@ -118,4 +118,4 @@ Cette version est instable et est recommandée uniquement à des fins de test ou
|
||||
|
||||
Pour le flux de travail de développement, consultez [Development.md](https://github.com/All-Hands-AI/OpenHands/blob/main/Development.md).
|
||||
|
||||
Vous rencontrez des problèmes ? Consultez notre [Guide de dépannage](https://docs.all-hands.dev/modules/usage/troubleshooting).
|
||||
Vous rencontrez des problèmes ? Consultez notre [Guide de dépannage](https://docs.all-hands.dev/modules/usage/troubleshooting).
|
||||
@@ -26,4 +26,4 @@
|
||||
|
||||
### Navigateur
|
||||
- Utilisé par OpenHands pour naviguer sur des sites web.
|
||||
- Le navigateur n'est pas interactif.
|
||||
- Le navigateur n'est pas interactif.
|
||||
@@ -4,7 +4,7 @@ OpenHands utilise LiteLLM pour effectuer des appels aux modèles de chat d'Azure
|
||||
|
||||
## Configuration d'Azure OpenAI
|
||||
|
||||
Lors de l'exécution d'OpenHands, vous devrez définir la variable d'environnement suivante en utilisant `-e` dans la
|
||||
Lors de l'exécution d'OpenHands, vous devrez définir la variable d'environnement suivante en utilisant `-e` dans la
|
||||
[commande docker run](../installation#running-openhands) :
|
||||
|
||||
```
|
||||
@@ -38,4 +38,4 @@ Lors de l'exécution d'OpenHands, définissez la variable d'environnement suivan
|
||||
|
||||
```
|
||||
LLM_API_VERSION="<api-version>" # ex. "2024-02-15-preview"
|
||||
```
|
||||
```
|
||||
@@ -133,4 +133,4 @@ Utilisez cette configuration lorsque vous souhaitez qu'un LLM ébauche des modif
|
||||
|
||||
:::note
|
||||
Les configurations LLM personnalisées ne sont disponibles que lorsque vous utilisez OpenHands en mode développement, via `main.py` ou `cli.py`. Lors de l'exécution via `docker run`, veuillez utiliser les options de configuration standard.
|
||||
:::
|
||||
:::
|
||||
@@ -26,4 +26,4 @@ VERTEXAI_LOCATION="<votre-emplacement-gcp>"
|
||||
Ensuite, définissez les éléments suivants dans l'interface utilisateur d'OpenHands via les Paramètres :
|
||||
- `LLM Provider` sur `VertexAI`
|
||||
- `LLM Model` sur le modèle que vous utiliserez.
|
||||
Si le modèle n'est pas dans la liste, activez les options `Advanced`, et saisissez-le dans `Custom Model` (par exemple vertex_ai/<nom-du-modèle>).
|
||||
Si le modèle n'est pas dans la liste, activez les options `Advanced`, et saisissez-le dans `Custom Model` (par exemple vertex_ai/<nom-du-modèle>).
|
||||
@@ -19,4 +19,4 @@ accéderiez à n'importe quel point de terminaison compatible OpenAI. Dans l'int
|
||||
2. Définissez les éléments suivants :
|
||||
- `Custom Model` avec le préfixe `openai/` + le modèle que vous utiliserez (par exemple `openai/llama3-70b-8192`)
|
||||
- `Base URL` sur `https://api.groq.com/openai/v1`
|
||||
- `API Key` avec votre clé API Groq
|
||||
- `API Key` avec votre clé API Groq
|
||||
@@ -17,4 +17,4 @@ Pour utiliser le proxy LiteLLM avec OpenHands, vous devez :
|
||||
|
||||
Les modèles pris en charge dépendent de la configuration de votre proxy LiteLLM. OpenHands prend en charge tous les modèles que votre proxy LiteLLM est configuré pour gérer.
|
||||
|
||||
Référez-vous à la configuration de votre proxy LiteLLM pour la liste des modèles disponibles et leurs noms.
|
||||
Référez-vous à la configuration de votre proxy LiteLLM pour la liste des modèles disponibles et leurs noms.
|
||||
@@ -89,4 +89,4 @@ num_retries = 4
|
||||
retry_min_wait = 5
|
||||
retry_max_wait = 30
|
||||
retry_multiplier = 2
|
||||
```
|
||||
```
|
||||
@@ -80,4 +80,4 @@ Une fois qu'OpenHands est en cours d'exécution, vous devrez définir les élém
|
||||
2. Définissez les éléments suivants :
|
||||
- `Modèle personnalisé` sur `openai/<served-model-name>` (par exemple `openai/openhands-lm-32b-v0.1`)
|
||||
- `URL de base` sur `http://host.docker.internal:8000`
|
||||
- `Clé API` sur la même chaîne que celle que vous avez définie lors du service du modèle (par exemple `mykey`)
|
||||
- `Clé API` sur la même chaîne que celle que vous avez définie lors du service du modèle (par exemple `mykey`)
|
||||
@@ -22,4 +22,4 @@ Si vous utilisez un proxy OpenAI, dans l'interface utilisateur d'OpenHands via l
|
||||
2. Définissez les éléments suivants :
|
||||
- `Custom Model` sur openai/<nom-du-modèle> (par exemple `openai/gpt-4o` ou openai/<préfixe-proxy>/<nom-du-modèle>)
|
||||
- `Base URL` sur l'URL de votre proxy OpenAI
|
||||
- `API Key` sur votre clé API OpenAI
|
||||
- `API Key` sur votre clé API OpenAI
|
||||
@@ -9,4 +9,4 @@ Lors de l'exécution d'OpenHands, vous devrez définir les éléments suivants d
|
||||
* `LLM Model` sur le modèle que vous utiliserez.
|
||||
[Visitez ce lien pour voir une liste complète des modèles OpenRouter](https://openrouter.ai/models).
|
||||
Si le modèle ne figure pas dans la liste, activez les options `Advanced`, et saisissez-le dans `Custom Model` (par exemple openrouter/<nom-du-modèle> comme `openrouter/anthropic/claude-3.5-sonnet`).
|
||||
* `API Key` avec votre clé API OpenRouter.
|
||||
* `API Key` avec votre clé API OpenRouter.
|
||||
@@ -93,4 +93,4 @@ L'agent peut alors utiliser ces outils comme n'importe quel outil intégré. Lor
|
||||
|
||||
1. OpenHands achemine l'appel vers le serveur MCP approprié
|
||||
2. Le serveur traite la demande et renvoie une réponse
|
||||
3. OpenHands convertit la réponse en une observation et la présente à l'agent
|
||||
3. OpenHands convertit la réponse en une observation et la présente à l'agent
|
||||
@@ -33,4 +33,4 @@ triggers:
|
||||
L'utilisateur a dit le mot magique. Répondez avec "C'était délicieux !"
|
||||
```
|
||||
|
||||
[Voir des exemples de microagents déclenchés par mots-clés dans le dépôt officiel OpenHands](https://github.com/All-Hands-AI/OpenHands/tree/main/microagents)
|
||||
[Voir des exemples de microagents déclenchés par mots-clés dans le dépôt officiel OpenHands](https://github.com/All-Hands-AI/OpenHands/tree/main/microagents)
|
||||
@@ -37,4 +37,4 @@ est requis :
|
||||
| Type de Microagent | Requis |
|
||||
|----------------------------------------|---------|
|
||||
| `Microagents Généraux de Dépôt` | Non |
|
||||
| `Microagents Déclenchés par Mots-clés` | Oui |
|
||||
| `Microagents Déclenchés par Mots-clés` | Oui |
|
||||
@@ -47,4 +47,4 @@ Soumettez une pull request avec :
|
||||
|
||||
- Le nouveau fichier de microagent.
|
||||
- Documentation mise à jour si nécessaire.
|
||||
- Description de l'objectif et des capacités de l'agent.
|
||||
- Description de l'objectif et des capacités de l'agent.
|
||||
@@ -28,4 +28,4 @@ Pour la configurer, vous pouvez exécuter `npm run build`.
|
||||
Assurez-vous toujours que les tests sont réussis avant de valider les modifications. Vous pouvez exécuter les tests en lançant `npm run test`.
|
||||
```
|
||||
|
||||
[Voir plus d'exemples de microagents généraux de dépôt ici.](https://github.com/All-Hands-AI/OpenHands/tree/main/.openhands/microagents)
|
||||
[Voir plus d'exemples de microagents généraux de dépôt ici.](https://github.com/All-Hands-AI/OpenHands/tree/main/.openhands/microagents)
|
||||
@@ -34,4 +34,4 @@ Les bons prompts sont :
|
||||
|
||||
Plus votre prompt est précis et informatif, mieux OpenHands pourra vous aider.
|
||||
|
||||
Voir [Démarrer avec OpenHands](../getting-started) pour plus d'exemples de prompts utiles.
|
||||
Voir [Démarrer avec OpenHands](../getting-started) pour plus d'exemples de prompts utiles.
|
||||
@@ -22,4 +22,4 @@ OpenHands prend en charge plusieurs environnements d'exécution différents :
|
||||
- [Environnement distant OpenHands](./runtimes/remote.md) - Environnement d'exécution basé sur le cloud pour l'exécution parallèle (bêta).
|
||||
- [Environnement Modal](./runtimes/modal.md) - Environnement d'exécution fourni par nos partenaires chez Modal.
|
||||
- [Environnement Daytona](./runtimes/daytona.md) - Environnement d'exécution fourni par Daytona.
|
||||
- [Environnement local](./runtimes/local.md) - Exécution directe sur votre machine locale sans Docker.
|
||||
- [Environnement local](./runtimes/local.md) - Exécution directe sur votre machine locale sans Docker.
|
||||
@@ -5,4 +5,4 @@ title: Runtime Configuration
|
||||
|
||||
import { Redirect } from '@docusaurus/router';
|
||||
|
||||
<Redirect to="/modules/usage/runtimes-index" />
|
||||
<Redirect to="/modules/usage/runtimes-index" />
|
||||
@@ -29,4 +29,4 @@ bash -i <(curl -sL https://get.daytona.io/openhands)
|
||||
|
||||
Une fois exécuté, OpenHands devrait fonctionner localement et être prêt à l'emploi.
|
||||
|
||||
Pour plus de détails et une initialisation manuelle, consultez le [README.md](https://github.com/All-Hands-AI/OpenHands/blob/main/openhands/runtime/impl/daytona/README.md) complet
|
||||
Pour plus de détails et une initialisation manuelle, consultez le [README.md](https://github.com/All-Hands-AI/OpenHands/blob/main/openhands/runtime/impl/daytona/README.md) complet
|
||||
@@ -126,4 +126,4 @@ docker network create openhands-network
|
||||
# Exécuter OpenHands dans le réseau isolé
|
||||
docker run # ... \
|
||||
--network openhands-network \
|
||||
```
|
||||
```
|
||||
@@ -71,4 +71,4 @@ Le Runtime Local est particulièrement utile pour :
|
||||
|
||||
- Les pipelines CI/CD où Docker n'est pas disponible.
|
||||
- Les tests et le développement d'OpenHands lui-même.
|
||||
- Les environnements où l'utilisation de conteneurs est restreinte.
|
||||
- Les environnements où l'utilisation de conteneurs est restreinte.
|
||||
@@ -10,4 +10,4 @@ docker run # ...
|
||||
-e RUNTIME=modal \
|
||||
-e MODAL_API_TOKEN_ID="your-id" \
|
||||
-e MODAL_API_TOKEN_SECRET="modal-api-key" \
|
||||
```
|
||||
```
|
||||
@@ -1,9 +1,9 @@
|
||||
# OpenHands Remote Runtime
|
||||
|
||||
:::note
|
||||
Ce runtime est spécifiquement conçu uniquement pour des fins d'évaluation d'agents via le
|
||||
Ce runtime est spécifiquement conçu uniquement pour des fins d'évaluation d'agents via le
|
||||
[harnais d'évaluation OpenHands](https://github.com/All-Hands-AI/OpenHands/tree/main/evaluation). Il ne doit pas être utilisé pour lancer des applications OpenHands en production.
|
||||
:::
|
||||
|
||||
OpenHands Remote Runtime est actuellement en version bêta (lisez [ici](https://runtime.all-hands.dev/) pour plus de détails), il vous permet de lancer des runtimes
|
||||
en parallèle dans le cloud. Remplissez [ce formulaire](https://docs.google.com/forms/d/e/1FAIpQLSckVz_JFwg2_mOxNZjCtr7aoBFI2Mwdan3f75J_TrdMS1JV2g/viewform) pour postuler si vous souhaitez l'essayer !
|
||||
OpenHands Remote Runtime est actuellement en version bêta (lisez [ici](https://runtime.all-hands.dev/) pour plus de détails), il vous permet de lancer des runtimes
|
||||
en parallèle dans le cloud. Remplissez [ce formulaire](https://docs.google.com/forms/d/e/1FAIpQLSckVz_JFwg2_mOxNZjCtr7aoBFI2Mwdan3f75J_TrdMS1JV2g/viewform) pour postuler si vous souhaitez l'essayer !
|
||||
@@ -65,4 +65,4 @@ Lors de la première invite, une erreur avec `Permission Denied` ou `PermissionE
|
||||
* Changer le propriétaire du répertoire : `sudo chown <utilisateur>:<utilisateur> ~/.openhands-state`.
|
||||
* ou mettre à jour les permissions du répertoire : `sudo chmod 777 ~/.openhands-state`
|
||||
* ou le supprimer si vous n'avez pas besoin des données précédentes. OpenHands le recréera. Vous devrez ressaisir les paramètres LLM.
|
||||
* Si vous montez un répertoire local, assurez-vous que votre `WORKSPACE_BASE` dispose des permissions nécessaires pour l'utilisateur exécutant OpenHands.
|
||||
* Si vous montez un répertoire local, assurez-vous que votre `WORKSPACE_BASE` dispose des permissions nécessaires pour l'utilisateur exécutant OpenHands.
|
||||
@@ -22,4 +22,4 @@ OpenHandsは強力なフレームワークとライブラリの組み合わせ
|
||||
|
||||
## ライセンス
|
||||
|
||||
MIT [ライセンス](https://github.com/All-Hands-AI/OpenHands/blob/main/LICENSE)の下で配布されています。
|
||||
MIT [ライセンス](https://github.com/All-Hands-AI/OpenHands/blob/main/LICENSE)の下で配布されています。
|
||||
@@ -20,4 +20,4 @@
|
||||
|
||||
https://github.com/All-Hands-AI/OpenHands/assets/38853559/f592a192-e86c-4f48-ad31-d69282d5f6ac
|
||||
|
||||
_`gpt-4-turbo-2024-04-09`を使用したCodeActAgentがデータサイエンスタスク(線形回帰)を実行する例_。
|
||||
_`gpt-4-turbo-2024-04-09`を使用したCodeActAgentがデータサイエンスタスク(線形回帰)を実行する例_。
|
||||
@@ -49,4 +49,4 @@ _**免責事項**: バックエンドアーキテクチャは進行中の作業
|
||||
6. 図をPNGおよびSVGファイルとしてエクスポートし、`docs/architecture`ディレクトリ内の既存の図を置き換えます。これは(例えば[PlantText](https://www.planttext.com/)で)行うことができます。
|
||||
|
||||
</div>
|
||||
</details>
|
||||
</details>
|
||||
@@ -124,4 +124,4 @@ OpenHandsランタイムは、機能を拡張しランタイム環境をカス
|
||||
2. プラグイン登録:利用可能なプラグインは`ALL_PLUGINS`辞書に登録されます
|
||||
3. プラグイン指定:プラグインは`Agent.sandbox_plugins: list[PluginRequirement]`に関連付けられます。ユーザーはランタイムの初期化時にロードするプラグインを指定できます
|
||||
4. 初期化:プラグインはランタイムクライアントの起動時に非同期で初期化されます
|
||||
5. 使用法:ランタイムクライアントは初期化されたプラグインを使用して機能を拡張できます(例:IPythonセルを実行するためのJupyterPlugin)
|
||||
5. 使用法:ランタイムクライアントは初期化されたプラグインを使用して機能を拡張できます(例:IPythonセルを実行するためのJupyterPlugin)
|
||||
@@ -69,7 +69,7 @@ data = {
|
||||
response = requests.post(url, headers=headers, json=data)
|
||||
conversation = response.json()
|
||||
|
||||
print(f"Conversation Link: https://app.all-hands.dev/conversations/{conversation['conversation_id']}")
|
||||
print(f"Conversation Link: https://app.all-hands.dev/conversations/{conversation['id']}")
|
||||
print(f"Status: {conversation['status']}")
|
||||
```
|
||||
</details>
|
||||
@@ -174,4 +174,4 @@ curl -X GET "https://app.all-hands.dev/api/conversations/{conversation_id}" \
|
||||
|
||||
APIはアカウントごとに10の同時会話の制限があります。ユースケースに応じてより高い制限が必要な場合は、[contact@all-hands.dev](mailto:contact@all-hands.dev)までお問い合わせください。
|
||||
|
||||
この制限を超えると、APIは429 Too Many Requestsレスポンスを返します。
|
||||
この制限を超えると、APIは429 Too Many Requestsレスポンスを返します。
|
||||
@@ -28,4 +28,4 @@ OpenHands Cloudにリポジトリアクセス権を付与した後、リポジ
|
||||
|
||||
OpenHandsは以下の操作を行います:
|
||||
1. PRにコメントして、作業中であることを通知します。
|
||||
2. タスクを実行します。
|
||||
2. タスクを実行します。
|
||||
@@ -62,4 +62,4 @@ GitLabアカウントを使用する場合、OpenHandsは自動的にあなた
|
||||
|
||||
- 会話リスト – 過去10日間に開始された最新10件の会話のみが表示されます。
|
||||
- ワークスペース – 会話ワークスペースは14日間保持されます。
|
||||
- ランタイム – ランタイムは30分間アクティブ(「ウォーム」)な状態を維持します。この期間後、会話を再開するには1〜2分かかる場合があります。
|
||||
- ランタイム – ランタイムは30分間アクティブ(「ウォーム」)な状態を維持します。この期間後、会話を再開するには1〜2分かかる場合があります。
|
||||
@@ -339,4 +339,4 @@ LLM(大規模言語モデル)設定オプションは、`config.toml`ファ
|
||||
|
||||
- `user_id`
|
||||
- 型: `int`
|
||||
- デフォルト: `1000`
|
||||
- デフォルト: `1000`
|
||||
@@ -18,4 +18,4 @@ export MY_ENV_VAR="my value"
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y lsof
|
||||
cd frontend && npm install ; cd ..
|
||||
```
|
||||
```
|
||||
@@ -36,4 +36,4 @@ All Hands AIのサーバー上のデータについては、リクエストに
|
||||
|
||||
**1つのデータ:** 1つのデータの削除を希望する場合、近日中にデータを提出した際にインターフェースに表示されるリンクとパスワードを使用してデータを削除するメカニズムを追加する予定です。
|
||||
|
||||
**すべてのデータ:** すべてのデータの削除を希望する場合、またはデータ提出時に受け取ったIDとパスワードをお持ちでない場合は、データを最初に提出した際に登録したメールアドレスから`contact@all-hands.dev`にお問い合わせください。
|
||||
**すべてのデータ:** すべてのデータの削除を希望する場合、またはデータ提出時に受け取ったIDとパスワードをお持ちでない場合は、データを最初に提出した際に登録したメールアドレスから`contact@all-hands.dev`にお問い合わせください。
|
||||
@@ -90,4 +90,4 @@ OpenHandsはほぼすべてのコーディングタスクを支援できます
|
||||
* 十分なコンテキストを提供する。
|
||||
* 頻繁にコミットしてプッシュする。
|
||||
|
||||
OpenHandsを最大限に活用する方法についての詳細は、[プロンプトのベストプラクティス](./prompting/prompting-best-practices)をご覧ください。
|
||||
OpenHandsを最大限に活用する方法についての詳細は、[プロンプトのベストプラクティス](./prompting/prompting-best-practices)をご覧ください。
|
||||
@@ -36,7 +36,7 @@ DockerでOpenHandsをCLIモードで実行するには:
|
||||
```bash
|
||||
docker run -it \
|
||||
--pull=always \
|
||||
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik \
|
||||
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik \
|
||||
-e SANDBOX_USER_ID=$(id -u) \
|
||||
-e SANDBOX_VOLUMES=$SANDBOX_VOLUMES \
|
||||
-e LLM_API_KEY=$LLM_API_KEY \
|
||||
@@ -45,10 +45,10 @@ docker run -it \
|
||||
-v ~/.openhands-state:/.openhands-state \
|
||||
--add-host host.docker.internal:host-gateway \
|
||||
--name openhands-app-$(date +%Y%m%d%H%M%S) \
|
||||
docker.all-hands.dev/all-hands-ai/openhands:0.38 \
|
||||
docker.all-hands.dev/all-hands-ai/openhands:0.37 \
|
||||
python -m openhands.core.cli
|
||||
```
|
||||
|
||||
このコマンドはDocker内で対話型セッションを開始し、タスクを入力してOpenHandsからの応答を受け取ることができます。
|
||||
|
||||
`-e SANDBOX_USER_ID=$(id -u)`はDockerコマンドに渡され、サンドボックスユーザーがホストユーザーの権限と一致するようにします。これにより、エージェントがマウントされたワークスペースにroot所有のファイルを作成するのを防ぎます。
|
||||
`-e SANDBOX_USER_ID=$(id -u)`はDockerコマンドに渡され、サンドボックスユーザーがホストユーザーの権限と一致するようにします。これにより、エージェントがマウントされたワークスペースにroot所有のファイルを作成するのを防ぎます。
|
||||
@@ -98,4 +98,4 @@ platform = "linux/amd64"
|
||||
|
||||
### 実行
|
||||
|
||||
トップレベルディレクトリで```make run```を実行してOpenHandsを起動します。
|
||||
トップレベルディレクトリで```make run```を実行してOpenHandsを起動します。
|
||||
@@ -68,4 +68,4 @@
|
||||
* *d*: openhandsワークスペースディレクトリ
|
||||
* *c*: エージェント
|
||||
* *l*: LLM設定(config.tomlで事前定義)
|
||||
* *n*: セッション名(例:イベントストリーム名)
|
||||
* *n*: セッション名(例:イベントストリーム名)
|
||||
@@ -71,4 +71,4 @@ OpenHandsでの開発が初めての場合は、次の順序に従うことを
|
||||
1. 関連するドキュメントが変更を反映するように更新されている
|
||||
2. 新機能が適切なREADMEファイルに文書化されている
|
||||
3. APIの変更がサーバードキュメントに反映されている
|
||||
4. ドキュメントが`/docs/DOC_STYLE_GUIDE.md`のスタイルガイドに従っている
|
||||
4. ドキュメントが`/docs/DOC_STYLE_GUIDE.md`のスタイルガイドに従っている
|
||||
@@ -275,4 +275,4 @@ def codeact_user_response(state: State | None) -> str:
|
||||
2. エージェントがユーザーとコミュニケーションを取ろうとした回数を確認する
|
||||
3. エージェントが複数回試みた場合、諦めるオプションを提供する
|
||||
|
||||
この関数を使用することで、複数の評価実行にわたって一貫した動作を確保し、エージェントが人間の入力を待って立ち往生することを防ぐことができます。
|
||||
この関数を使用することで、複数の評価実行にわたって一貫した動作を確保し、エージェントが人間の入力を待って立ち往生することを防ぐことができます。
|
||||
@@ -48,4 +48,4 @@ GitHub resolverは、動作をカスタマイズするために有効な[リポ
|
||||
| `OPENHANDS_MAX_ITER` | 変数 | エージェントの反復回数の最大制限を設定 | `OPENHANDS_MAX_ITER=10` |
|
||||
| `OPENHANDS_MACRO` | 変数 | リゾルバーを呼び出すためのデフォルトマクロをカスタマイズ | `OPENHANDS_MACRO=@resolveit` |
|
||||
| `OPENHANDS_BASE_CONTAINER_IMAGE` | 変数 | カスタムサンドボックス([詳細](https://docs.all-hands.dev/modules/usage/how-to/custom-sandbox-guide)) | `OPENHANDS_BASE_CONTAINER_IMAGE="custom_image"` |
|
||||
| `TARGET_BRANCH` | 変数 | `main`以外のブランチにマージ | `TARGET_BRANCH="dev"` |
|
||||
| `TARGET_BRANCH` | 変数 | `main`以外のブランチにマージ | `TARGET_BRANCH="dev"` |
|
||||
@@ -138,4 +138,4 @@ OpenHandsは提供された場合、自動的に`GITLAB_TOKEN`をシェル環境
|
||||
- [プロンプティングのベストプラクティス](../prompting/prompting-best-practices)で説明されているように、最も正確で役立つ回答を得るために、リクエストを具体的にしてください。
|
||||
- [LLMセクション](usage/llms/llms.md)で説明されているように、推奨モデルのいずれかを使用してください。
|
||||
|
||||
OpenHandsのGUIモードは、AIアシスタントとの対話をできるだけスムーズで直感的にするように設計されています。生産性を最大化するために、その機能を遠慮なく探索してください。
|
||||
OpenHandsのGUIモードは、AIアシスタントとの対話をできるだけスムーズで直感的にするように設計されています。生産性を最大化するために、その機能を遠慮なく探索してください。
|
||||
@@ -33,7 +33,7 @@ DockerでヘッドレスモードでOpenHandsを実行するには:
|
||||
```bash
|
||||
docker run -it \
|
||||
--pull=always \
|
||||
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik \
|
||||
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik \
|
||||
-e SANDBOX_USER_ID=$(id -u) \
|
||||
-e SANDBOX_VOLUMES=$SANDBOX_VOLUMES \
|
||||
-e LLM_API_KEY=$LLM_API_KEY \
|
||||
@@ -43,7 +43,7 @@ docker run -it \
|
||||
-v ~/.openhands-state:/.openhands-state \
|
||||
--add-host host.docker.internal:host-gateway \
|
||||
--name openhands-app-$(date +%Y%m%d%H%M%S) \
|
||||
docker.all-hands.dev/all-hands-ai/openhands:0.38 \
|
||||
docker.all-hands.dev/all-hands-ai/openhands:0.37 \
|
||||
python -m openhands.core.main -t "write a bash script that prints hi"
|
||||
```
|
||||
|
||||
@@ -55,4 +55,4 @@ docker run -it \
|
||||
|
||||
### 追加ログ
|
||||
|
||||
ヘッドレスモードですべてのエージェントアクションをログに記録するには、ターミナルで次のコマンドを実行します:`export LOG_ALL_EVENTS=true`
|
||||
ヘッドレスモードですべてのエージェントアクションをログに記録するには、ターミナルで次のコマンドを実行します:`export LOG_ALL_EVENTS=true`
|
||||
@@ -58,17 +58,17 @@ OpenHandsを実行するには、最新のプロセッサと最低**4GB RAM**を
|
||||
OpenHandsを実行する最も簡単な方法はDockerを使用することです。
|
||||
|
||||
```bash
|
||||
docker pull docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik
|
||||
docker pull docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik
|
||||
|
||||
docker run -it --rm --pull=always \
|
||||
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik \
|
||||
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik \
|
||||
-e LOG_ALL_EVENTS=true \
|
||||
-v /var/run/docker.sock:/var/run/docker.sock \
|
||||
-v ~/.openhands-state:/.openhands-state \
|
||||
-p 3000:3000 \
|
||||
--add-host host.docker.internal:host-gateway \
|
||||
--name openhands-app \
|
||||
docker.all-hands.dev/all-hands-ai/openhands:0.38
|
||||
docker.all-hands.dev/all-hands-ai/openhands:0.37
|
||||
```
|
||||
|
||||
OpenHandsは http://localhost:3000 で実行されています!
|
||||
@@ -117,4 +117,4 @@ SemVerを使用しているため、`0.9`は自動的に最新の`0.9.x`リリ
|
||||
|
||||
開発ワークフローについては、[Development.md](https://github.com/All-Hands-AI/OpenHands/blob/main/Development.md)を参照してください。
|
||||
|
||||
問題がありますか?[トラブルシューティングガイド](https://docs.all-hands.dev/modules/usage/troubleshooting)をご確認ください。
|
||||
問題がありますか?[トラブルシューティングガイド](https://docs.all-hands.dev/modules/usage/troubleshooting)をご確認ください。
|
||||
@@ -26,4 +26,4 @@
|
||||
|
||||
### ブラウザ
|
||||
- OpenHandsがウェブサイトを閲覧するために使用します。
|
||||
- このブラウザは非対話型です。
|
||||
- このブラウザは非対話型です。
|
||||
@@ -35,4 +35,4 @@ OpenHandsを実行する際、[docker runコマンド](../installation#running-o
|
||||
|
||||
```
|
||||
LLM_API_VERSION="<api-version>" # 例: "2024-02-15-preview"
|
||||
```
|
||||
```
|
||||
@@ -133,4 +133,4 @@ frequency_penalty = 0.0
|
||||
|
||||
:::note
|
||||
カスタムLLM設定は、`main.py`または`cli.py`を介して開発モードでOpenHandsを使用する場合にのみ利用可能です。`docker run`を介して実行する場合は、標準の設定オプションを使用してください。
|
||||
:::
|
||||
:::
|
||||
@@ -26,4 +26,4 @@ VERTEXAI_LOCATION="<あなたのgcpロケーション>"
|
||||
その後、OpenHandsのUI設定で以下を設定します:
|
||||
- `LLM Provider`を`VertexAI`に設定
|
||||
- `LLM Model`を使用するモデルに設定
|
||||
モデルがリストにない場合は、`Advanced`オプションを切り替えて、`Custom Model`に入力してください(例:vertex_ai/<model-name>)。
|
||||
モデルがリストにない場合は、`Advanced`オプションを切り替えて、`Custom Model`に入力してください(例:vertex_ai/<model-name>)。
|
||||
@@ -16,4 +16,4 @@ Groqのチャット完了エンドポイントは[ほぼOpenAI互換](https://co
|
||||
2. 以下を設定する:
|
||||
- `Custom Model`に接頭辞`openai/`と使用するモデル名を組み合わせて設定(例:`openai/llama3-70b-8192`)
|
||||
- `Base URL`を`https://api.groq.com/openai/v1`に設定
|
||||
- `API Key`にGroq APIキーを設定
|
||||
- `API Key`にGroq APIキーを設定
|
||||
@@ -17,4 +17,4 @@ OpenHandsでLiteLLMプロキシを使用するには、以下の手順が必要
|
||||
|
||||
サポートされているモデルはLiteLLMプロキシの設定によって異なります。OpenHandsはLiteLLMプロキシが対応するように設定されているあらゆるモデルをサポートします。
|
||||
|
||||
利用可能なモデルとその名前のリストについては、LiteLLMプロキシの設定を参照してください。
|
||||
利用可能なモデルとその名前のリストについては、LiteLLMプロキシの設定を参照してください。
|
||||
@@ -89,4 +89,4 @@ num_retries = 4
|
||||
retry_min_wait = 5
|
||||
retry_max_wait = 30
|
||||
retry_multiplier = 2
|
||||
```
|
||||
```
|
||||
@@ -80,4 +80,4 @@ OpenHandsが実行されたら、設定を通じてOpenHands UIで以下を設
|
||||
2. 以下を設定します:
|
||||
- `Custom Model`を`openai/<served-model-name>`(例:`openai/openhands-lm-32b-v0.1`)に設定
|
||||
- `Base URL`を`http://host.docker.internal:8000`に設定
|
||||
- `API key`をモデル提供時に設定したのと同じ文字列(例:`mykey`)に設定
|
||||
- `API key`をモデル提供時に設定したのと同じ文字列(例:`mykey`)に設定
|
||||
@@ -22,4 +22,4 @@ OpenAIプロキシを使用している場合、OpenHandsのUI設定で:
|
||||
2. 以下を設定する:
|
||||
- `Custom Model`をopenai/<model-name>に設定(例:`openai/gpt-4o`またはopenai/<proxy-prefix>/<model-name>)
|
||||
- `Base URL`をOpenAIプロキシのURLに設定
|
||||
- `API Key`をOpenAI APIキーに設定
|
||||
- `API Key`をOpenAI APIキーに設定
|
||||
@@ -9,4 +9,4 @@ OpenHandsを実行する際、設定画面から以下の項目を設定する
|
||||
* `LLM Model`を使用するモデルに設定
|
||||
[OpenRouterモデルの完全なリストはこちらで確認できます](https://openrouter.ai/models)。
|
||||
モデルがリストにない場合は、`Advanced`オプションを切り替えて、`Custom Model`に入力してください(例:openrouter/<model-name> のように `openrouter/anthropic/claude-3.5-sonnet`)。
|
||||
* `API Key`にOpenRouterのAPIキーを設定
|
||||
* `API Key`にOpenRouterのAPIキーを設定
|
||||
@@ -93,4 +93,4 @@ OpenHandsが起動すると、次のことが行われます:
|
||||
|
||||
1. OpenHandsは呼び出しを適切なMCPサーバーにルーティングする
|
||||
2. サーバーはリクエストを処理し、レスポンスを返す
|
||||
3. OpenHandsはレスポンスを観察結果に変換し、エージェントに提示する
|
||||
3. OpenHandsはレスポンスを観察結果に変換し、エージェントに提示する
|
||||
@@ -33,4 +33,4 @@ triggers:
|
||||
ユーザーが魔法の言葉を言いました。「それはおいしかった!」と応答してください。
|
||||
```
|
||||
|
||||
[公式OpenHandsリポジトリでキーワードによってトリガーされるマイクロエージェントの例を見る](https://github.com/All-Hands-AI/OpenHands/tree/main/microagents)
|
||||
[公式OpenHandsリポジトリでキーワードによってトリガーされるマイクロエージェントの例を見る](https://github.com/All-Hands-AI/OpenHands/tree/main/microagents)
|
||||
@@ -36,4 +36,4 @@ some-repository/
|
||||
| マイクロエージェントの種類 | 必須 |
|
||||
|--------------------------|------|
|
||||
| `一般リポジトリマイクロエージェント` | いいえ |
|
||||
| `キーワードトリガーマイクロエージェント` | はい |
|
||||
| `キーワードトリガーマイクロエージェント` | はい |
|
||||
@@ -47,4 +47,4 @@ OpenHandsへの貢献方法の具体的な手順については、[CONTRIBUTING.
|
||||
|
||||
- 新しいマイクロエージェントファイル。
|
||||
- 必要に応じて更新されたドキュメント。
|
||||
- エージェントの目的と機能の説明。
|
||||
- エージェントの目的と機能の説明。
|
||||
@@ -28,4 +28,4 @@
|
||||
変更をコミットする前に、常にテストが合格していることを確認してください。`npm run test`を実行してテストを実行できます。
|
||||
```
|
||||
|
||||
[一般リポジトリマイクロエージェントの詳細な例はこちらをご覧ください。](https://github.com/All-Hands-AI/OpenHands/tree/main/.openhands/microagents)
|
||||
[一般リポジトリマイクロエージェントの詳細な例はこちらをご覧ください。](https://github.com/All-Hands-AI/OpenHands/tree/main/.openhands/microagents)
|
||||
@@ -34,4 +34,4 @@ OpenHands AIソフトウェア開発者と連携する際、明確で効果的
|
||||
|
||||
プロンプトが正確で情報量が多いほど、OpenHandsはより良くサポートできます。
|
||||
|
||||
役立つプロンプトの例については、[OpenHandsの使い方](../getting-started)をご覧ください。
|
||||
役立つプロンプトの例については、[OpenHandsの使い方](../getting-started)をご覧ください。
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user