karotte README

The project's README from github.com/preferencemodel/karotte. As one markdown file: README.md.

Karotte 🥕

Karotte is an open-source framework for building robust RL environments, made by Preference Model.

Learn about the why and what:

Documentation: karotte.dev

Install

Karotte needs Python 3.12+ and uv. Runs go into a VM by default: Apple container on macOS, Firecracker on Linux. docker or podman work too. See Installation and Runtimes for what each needs.

uv tool install karotte

Quick start

Create an environment from the default template and run its example task:

karotte create-env my_env
cd my_env
uv sync --extra dev
uv run setup_data.py
export ANTHROPIC_API_KEY=...
uv run karotte run --task example-task --model anthropic/claude-opus-5-5

karotte run builds the image, runs the task, and writes the transcript to out/transcript.json. karotte dashboard out/ shows it. The quick start explains each step, and Writing tasks shows how to add your own.

Development

just lint
just test
just test-template default

Every merge to main is released. See Developing Karotte.

License

Karotte is under the MIT license. The templates in src/karotte/templates/ are under MIT No Attribution (MIT-0), so environments created from them need no license notice.

Third-party software in built images

Images built from the templates contain third-party software under its own licenses. They are based on Amazon Linux 2023. The language-toolchains template installs GPL and LGPL software (gcc, GnuCOBOL, GNU Prolog, Free Pascal, the libraries bundled with Julia, and others), Amazon Corretto (GPL-2.0 with the Classpath Exception) and Clojure (EPL-1.0) for the languages you enable. Mojo, off by default, has its own license terms; check them for the version you enable. If you distribute a built image, you're responsible for complying with the licenses of the software in it.

karotte (preferencemodel/karotte)

Searching Database…

Что это такое?Karotte — это опенсорсный фреймворк от Preference Model для создания надёжных сред обучения с подкреплением (RL), используемых при обучении выровненного ИИ.
Karotte — это фреймворк или готовое приложение для обучения?Это Python-фреймворк с CLI (karotte run, karotte dashboard) для создания каркаса, запуска и изучения RL-сред и задач, а не предобученная модель или отдельное приложение.
Как мне создать и запустить свою первую среду?Создайте среду из шаблона по умолчанию, затем выполните karotte run, чтобы собрать образ и запустить пример задачи; транскрипт записывается в out/transcript.json, а команда karotte dashboard out/ визуализирует его.
Что нужно установить перед запуском Karotte?Нужны Python 3.12+ и uv; каждый запуск выполняется внутри виртуальной машины — по умолчанию используется Apple container на macOS или Firecracker на Linux, но подойдут и docker или podman.
В чём подвох, если я распространяю образ, собранный с помощью Karotte?Собранные образы основаны на Amazon Linux 2023 и могут включать стороннее ПО под GPL/LGPL (gcc, GnuCOBOL, GNU Prolog, Free Pascal, Amazon Corretto, Clojure и, по желанию, Mojo); если вы распространяете такой образ, вы сами должны соблюдать условия этих лицензий.
Что показывает karotte dashboard?Он визуализирует файл транскрипта, записанный при запуске, и позволяет посмотреть, как прошла задача.
Почему каждая задача запускается в виртуальной машине, а не напрямую на хосте?Для надёжности Karotte по умолчанию изолирует запуски в виртуальной машине (Apple container на macOS или Firecracker на Linux), хотя вместо этого можно использовать docker или podman.
Какие сторонние языковые тулчейны может включать среда?Шаблон language-toolchains может установить gcc, GnuCOBOL, GNU Prolog, Free Pascal, библиотеки в комплекте с Julia, Amazon Corretto и Clojure; Mojo доступен, но по умолчанию выключен.
Как часто обновляется Karotte?Каждое слияние в основную ветку запускает новый релиз.
What are similar projects?AirSim, dopamine, multitown, Proteus, ml-agents, Gymnasium, carla, gym
Size
1.9 MB
Stars
143
Updated
CommitOct 16
Age
1mo
Commits · 90 Days