Перейти до вмісту
Повернутись до Nymbot

База знань Код

Завантажити код на сервер

Коли коду потрібно більше, ніж ваш пристрій може дати - інша мова, пакети з інтернету, більше часу - Nymbot може запустити його на власному сервері, в контейнері, створеному для цього.

Що таке сервер Run

Запуск сервера запускає новий контейнер, вставляє в нього свій код, запускає його, відправляє назад те, що було надруковано, і руйнує контейнер. Про баланс На той час він насправді йшов.

Є два шляхи в: Завантажити на сервер на блок коду, і сервер працює, що Nymbot просить, поки він працює в сховище.

Для швидкого Python або JavaScript, який не потребує нічого з інтернету, безкоштовний Sandbox на вашому пристрої Зазвичай цього достатньо.

Завантажити блок коду

Python, JavaScript, TypeScript, shell, Go, Rust, Java і Dart блоки коду в відповідь мають Завантажити на сервер Натисніть кнопку, коли доступні серверні запуски. Вона відкриває аркуш, що показує:

  • ТІ Зображення Код буде діяти,
  • термін вибору: 1, 5 або 15 хвилин,
  • Найбільше, що може коштувати біг, в Про кредитах, за цей термін,
  • і, якщо в чаті є файли, прикріплені, поле, щоб включити їх. Вони йдуть тільки якщо ви перевірите його.

Прес бігати і вихід протікає під блоком коду, коли він прибуває: що він друкував, вихідний код, як довго він працював, будь-які файли, які він написав (кожен з зберегти бутону), і за що він був звинувачений.

зупинити сервер негайно закривається, і ви платите тільки за час його роботи.

В одному Анонімна мода Чат завантаження оплачується з прокредитів ключа, а додані файли ніколи не включаються.

Мови та зображення

Кожна мова працює на зображенні, готовій системі з інструментами, які потрібні мові.

ЗображенняВикористовується дляЩо він міститьСервер
PythonPythonPython 3.12 з pip, venv, build tools і git; numpy, pandas і pytest вже встановлені0,5 ЦП, 4 ГБ пам'яті
Node.jsJavaScript та TypeScriptNode.js 22 з npm, pnpm і yarn, плюс Python 3, Make і компілятор C++0,5 ЦП, 4 ГБ пам'яті
ПоліглотShell, Go, Rust та Javabash, C і C++ build tools, Python 3, Node.js, Go, Rust with cargo і Java 171 процесор, 6 ГБ пам'яті
ФлейтерДАРТFlutter 3.32 і Dart2 процесори, 8 ГБ пам'яті

Що це коштує

Час сервера обчислюється в кроках 10 секунд, від запиту на сервер до його закриття, з 10 секунд як мінімум запуск може коштувати.

  • Ціна вказана на передній панелі, як максимальна. Ви ніколи не отримуєте більше, і біг, який закінчується раніше, коштує менше.
  • Максимум тримається, поки біг триває. Коли він закінчується, фактичний заряд приймається, а решта звільняється.
  • Біг, який не починається, є безкоштовним.
  • Застосовуються капелюхи витрат. Прогулянка, яка могла б пройти крізь чат Витрати на головну Спочатку запитуйте, так само як і відповідь.

Оскільки ціна слідує за ціною Bitcoin, вона може змінюватися між моментом, коли ви її бачите, і моментом, коли ви натиснете клавішу Run.

Сервер запускається в репозиторії

У чаті з сховище Зв'язаний з тим, що Сервіс RUN Чіп дозволяє Nymbot попросити запустити команди проти вашого коду, наприклад, встановити залежності і запустити тести після зміни.

Кожного разу, коли модель хоче запустити щось, відповідь зупиняється і показує картку з зображенням, повним командуванням, обмеженням часу і максимальною вартістю, плюс який репозиторій, коли в чаті є кілька.

  • Дозвольте один раз Вона працює проти репозиторію з редакціями, які відповідь зробила дотепер, і модель отримує назад вихідний код, кінець виходу і список файлів, які команда змінила.
  • Падіння Це нічого не коштує і нічого не коштує.Відповідь проходить без неї.

Кожен біг запитує.Кожен з них заряджається окремо від відповіді, а відповідь перераховує біг, який він зробив, і що коштує кожен біг. Витрати на головнуВона відмовляється, перш ніж вас просять.

Файли командних змін на сервері залишаються там і викидаються разом з контейнером. Вони не написані в ваш репозиторій. Зміни в репозиторій приходять тільки з власних редакцій відповіді.

Що таке ізоляція

  • Свіжий контейнер на кожну поїздку. Ніщо не ділиться з іншим бігом або іншою людиною, і контейнер руйнується, коли біг закінчується, незалежно від того, вдалося це чи не вдалося.
  • Немає інтернету, крім пакетної реєстрації. Контейнер можна завантажити з місць, де пакети походять з: PyPI, npm і yarn, pub.dev і сховище Google для Flutter і Dart, проксі-модуль Go, crates.io, Maven Central і GitHub для git-залежності та випуску завантажень. Він може тільки завантажити. Він не може відправити нічого до них або досягти будь-якої іншої адреси.
  • Тільки те, що ви вибрали, увійде Код, файли, які ви включили, або файли репозиторію. Ваші ключі, ваш git token і ваші чати ніколи не потрапляють в контейнер.
  • Вихід розглядається як недостовірний. У репозиторії те, що друкує запуск, показано моделі, позначеній як зовнішні дані, і йому сказано ніколи не слідувати інструкціям всередині нього.

ліміти

  • Один сервер запускається одночасно для кожного ключа. Початок другого, коли перший ще йде, відмовляється.
  • Завантаження репозиторію може вимагати до 15 хвилин або 20 хвилин на зображенні Flutter.
  • До 1 МБ коду та до 200 доданих файлів, загалом 20 МБ.
  • Репозиторій до 60 МБ, упакований.
  • До 256 Кб виходу. Все, що минуло, що випадає, і біг так говорить.
  • До 200 файлів, загалом 8 МБ, повертаються для збереження.

Завантаження сервера можна вимкнути для технічного обслуговування, як ціле або як одне зображення за раз. Завантажити на сервер Кнопка і чіп не відображаються.

Завдання панелі

У чаті репозиторію кнопка контрольного списку у верхній частині чату відкриває Задачі пане. Він списує те, що робив кожен поворот, найновіший спочатку: файли, які він читав і редагував, зобов'язує, зміни, що відбуваються для вашого огляду, і кожен сервер працює з його командою, зображенням, часом, вартістю та станом виходу. сервер, який працює, чекаючи на ваше схвалення, може бути дозволений або відхилений з панелі, те ж саме, що з його картки, і виконуюча відповідь може бути зупинена там.