База знаний Код
Запуск кода на сервере
Когда коду требуется больше, чем может дать ваше устройство — другой язык, пакеты из интернета, больше времени — Nymbot может запускать его на собственном сервере, в контейнере, созданном для этого.
Эта страница для удобства переведена автоматически. Применяется английский оригинал.
Что такое сервер Run
Запуск сервера запускает новый контейнер, помещает в него свой код, запускает его, отправляет обратно то, что он напечатал, и разрушает контейнер. За баланс На тот момент он фактически бежал.
Есть два способа в: Бег на сервер на блок кода, и сервер запускается, что Nymbot просит, пока он работает в репозиторий.
Для быстрого Python или JavaScript, который не нуждается ни в чем из интернета, бесплатный Sandbox на вашем устройстве Обычно этого достаточно.
Запуск блока кода
Python, JavaScript, TypeScript, shell, Go, Rust, Java и Dart блоки кода в ответе имеют Бег на сервер кнопку, всякий раз, когда доступны серверные запуски. Он открывает лист, показывающий:
- ТЭ Образ Код будет действовать,
- время выбора: 1, 5 или 15 минут,
- больше всего, что может стоить бег, в Pro кредитах, за этот временной предел,
- и, если в чате есть файлы, приложенные, поле, чтобы включить их.
Пресс Бег и вывод поступает под блок кода, когда он поступает: что он печатал, код выхода, как долго он работал, любые файлы, которые он написал (каждый с спасать бутона) и за что он был обвинен.
Стоп Сервер немедленно закрывается, и вы платите только за время его запуска.
В одном Анонимная мода чат бег оплачивается из Pro-кредитов выброшенного ключа, а приложенные файлы никогда не включаются.
Языки и изображения
Каждый язык работает на изображении, готовой системе с инструментами, которые нужны языку.
| изображение | Используется для | Что он содержит | Серверы |
|---|---|---|---|
| Python | Python | Python 3.12 с pip, venv, build tools и git; numpy, pandas и pytest уже установлены | 0.5 CPU, 4 ГБ памяти |
| Node.js | JavaScript и TypeScript | Node.js 22 с npm, pnpm и yarn, плюс Python 3, make и компилятор C++ | 0.5 CPU, 4 ГБ памяти |
| Полиглот | Shell, Go, Rust и Java | bash, C и C++ build tools, Python 3, Node.js, Go, Rust with cargo и Java 17 | 1 процессор, 6 Гб памяти |
| Флейтер | ДАРТ | Flutter 3.32 и Dart | 2 процессора, 8 Гб памяти |
Сколько это стоит
Время сервера рассчитывается в шагах по 10 секунд, от запроса сервера до его закрытия, с 10 секундами как минимум запуск может стоить.
- Цена указана на переднем плане, как максимальная. Вы никогда не будете заряжаться больше, и бег, который заканчивается раньше, будет стоить меньше.
- Максимум держится, пока идет бег. Когда он заканчивается, фактический заряд берется, а остальное освобождается.
- Бег, который не начинается, является бесплатным.
- Применяются расходные капсы. Бег, который может пройти мимо чата Расход капитала Сначала спрашивайте, так же как и ответ.
Поскольку цена следует за ценой Биткойна, она может перемещаться между моментом, когда вы ее видите, и моментом, когда вы нажмете кнопку Пусть.
Сервер запускается в репозитории
В чате с а репозиторий Связанные между собой, The Серверы бегут Чип позволяет Nymbot попросить запустить команды против вашего кода, такие как установка зависимостей и запуск тестов после изменения.
Каждый раз, когда модель хочет запустить что-то, ответ паузирует и показывает карту с изображением, полной командой, временным ограничением и максимумом, который может стоить, плюс какой репозиторий, когда в чате есть несколько.
- Разрешить один раз Он работает против репозитория с изменениями, которые ответ сделал до сих пор, и модель получает обратно код выхода, конец выхода и список файлов, которые команда изменила.
- Снижение ничего не работает и ничего не стоит.Ответ продолжается без него.
Каждый запуск спрашивает.Каждый заряжается отдельно от ответа, и ответ перечисляет заряды, которые он сделал, и что каждый из них стоил. Расход капиталаОн отказывается, прежде чем вас попросят.
Файлы с изменениями команды на сервере остаются там и выбрасываются вместе с контейнером. Они не записываются в ваше хранилище. Изменения в хранилище происходят только из собственных редакций ответа.
Что является изолированным
- Свежий контейнер для каждого бега. Ничто не делится с другим бегом или другим человеком, и контейнер разрушается, когда бег заканчивается, будь то успешный или неудачный.
- Нет интернета, кроме пакетов. Контейнер можно загрузить из мест, где пакеты поступают из: PyPI, npm и yarn, pub.dev и хранилища Google для Flutter и Dart, прокси модуля Go, crates.io, Maven Central и GitHub для git dependencies и выпуска загрузок.
- Только то, что вы выбрали, попадает внутрь. Код, файлы, которые вы включили, или файлы репозитория. Ваши ключи, ваш git-токен и ваши чаты никогда не попадают в контейнер.
- Выход рассматривается как недоверчивый. В репозитории то, что отпечатывает запуск, показывается модели, обозначенной как внешние данные, и ей говорят, чтобы никогда не следовать инструкциям внутри нее.
Ограничения
- Один сервер запускается одновременно для каждого ключа. Начиная второй, пока первый все еще идет, отказывается.
- Временные ограничения 1, 5 или 15 минут для блока кода. Запуск репозитория может потребовать до 15 минут, или 20 минут на изображение Flutter.
- До 1 МБ кода и до 200 приложенных файлов общей вместимостью 20 МБ.
- Репозиторий объемом до 60 Мб, упакован.
- До 256 Кб выхода. Все прошлое, которое выпадает, и бег так говорит.
- До 200 файлов, 8 Мб в общей сложности, возвращаются для сохранения.
Работающие серверы могут быть отключены для технического обслуживания, как целое или одно изображение за раз. Бег на сервер Кнопка и чип не отображаются.
Задачи пане
В чате репозитории кнопка контрольного списка в верхней части чата открывает Задачи панель. Он перечисляет то, что каждый поворот сделал, новейший сначала: файлы, которые он прочитал и редактировал, поощряет, изменения, сделанные для вашего обзора, и каждый сервер работает с его командой, изображением, временем, стоимостью и статусом выхода. сервер, который работает в ожидании вашего одобрения, может быть разрешен или отклонен с панели, то же самое, что с его карты, и текущий ответ может быть остановлен там.