Перейти к основному содержимому

Утилита командной строки (CLI)

Утилита командной строки позволяет решать модели, данные которых предварительно сохранены в виде двоичных файлов. Для получения файла модели необходимо описать модель программным кодом (см. раздел "Создание модели") и вызвать метод Записать. При решении модели результат решения также сохраняется в виде выходного файла, который может быть загружен в 1С для его дальнейшего анализа. Пример работы утилиты:

1. Создаем и записываем модель

Код на стороне 1С:

Модель = О2.СоздатьМодель();

// Описываем модель программным кодом
// ...
// ...

Модель.Записать("C:\path\to\model.o2m");

2. Решаем модель с помощью утилиты

В терминале выполняем команду:

o2 solve "C:\path\to\model.o2m" --output "C:\path\to\solution.o2s"

Утилита выполнит вычисления и создаст файл решения по указанному адресу.

3. Загружаем решение в 1С

Код на стороне 1С:

Решение = О2.ЗагрузитьРешение("C:\path\to\solution.o2s");

Если Решение.РешениеНайдено() Тогда
// Обрабатываем данные решения
// ...
// ...
КонецЕсли;

Данный механизм может быть использован для создания различных автоматизированных конвейеров обработки данных.

Установка утилиты

Утилита командной строки не требует отдельной установки, утилита становится доступна сразу после установки сервиса решателя. Установка сервиса решателя описана в соответсвующем разделе.

Чтобы проверить установку утилиты откройте интерфейс командной строки и выполните команду:

o2 --version

В результате выполнения должна отобразиться версия решателя.

Доступные команды

o2

Корневая команда o2 может быть вызвана только с одним из параметров, описанных ниже:

Параметры

ПараметрПо умолчаниюОписание
-v, --versionПри указании данного параметра выводит версию сборки
-h, -?, --helpВыводит справку по использованию утилиты

Пример вызова

o2 --version
o2 --help

o2 solve

Выполняет решение модели и записывает результат в выходной файл.

Аргументы

АргументОписание
modelPathПуть к файлу модели

Параметры

ПараметрПо умолчаниюОписание
-o, --output./{имя_файла_модели}.o2sПуть, по которому необходимо сохранить решение
-s, --solverТип решателя. Доступны значения: glop, clp, pdlp, cbc, scip, glpk, bop, sat, dp, items64, bf
-tl, --time-limit0 (без ограничения)Максимальное время поиска решения в секундах
-tn, --threads-number0 (использует все ядра)Максимальное количество потоков при поиске
-cc, --customer-codeКод лицензиата для отбора лицензий (если не указан, будет применяться только Community-лицензия)
-v, --verbositynormalУровень детализации вывода. Возможные значения: quiet, minimal, normal, detailed, diagnostic
-h, -?, --helpВыводит справку по использованию команды

Примеры вызова

o2 solve "C:\path\to\model.o2m"

Решение будет сохранено в файл "model.o2s" в текущую директорию командной строки.

o2 validate

Выполняет проверку корректности модели и выводит результат.

Аргументы

АргументОписание
modelPathПуть к файлу модели

Параметры

ПараметрПо умолчаниюОписание
-v, --verbositynormalУровень детализации вывода. Возможные значения: quiet, minimal, normal, detailed, diagnostic
-h, -?, --helpВыводит справку по использованию команды

Примеры вызова

o2 validate "C:\path\to\model.o2m"

o2 inspect

Выводит метаданные указанного файла модели или решения.

Аргументы

АргументОписание
filePathПуть к файлу модели или решения

Параметры

ПараметрПо умолчаниюОписание
-v, --verbositynormalУровень детализации вывода. Возможные значения: quiet, minimal, normal, detailed, diagnostic
-h, -?, --helpВыводит справку по использованию команды

Примеры вызова

o2 inspect "C:\path\to\model.o2m"

o2 run

Запускает решатель в режиме web-сервиса.

Параметры

ПараметрПо умолчаниюОписание
-p, --port4762Порт сервиса
-v, --verbositynormalУровень детализации вывода. Возможные значения: quiet, minimal, normal, detailed, diagnostic
-h, -?, --helpВыводит справку по использованию команды

Примеры вызова

o2 run