Если вы не слышали ранее об Открытом Пакете Интеграций (что вполне вероятно), то небольшая вводная часть ниже, под катом. Тем, кто уже знаком с ОПИ, данный раздел можно пропустить.
Открытый Пакет Интеграций (ОПИ) - это open-source набор методов для простой и быстрой интеграции с различными популярными API. Он состоит из аналогичных по функционалу 1С-расширения (CFE), OS-пакета и программы для Windows и Linux, которые предоставляют готовые функции для работы с целым набором различных онлайн-сервисов.
- ОПИ бесплатен и имеет открытый исходный код на GitHub. Вы всегда можете получить последнюю версию библиотеки на странице репозитория, а подписавшись - узнавать о выходе обновлений. Все релизы сопровождаются статьями на Инфостарт и разделами единой документации. На Инфостарт вы можете подписаться уже хоть сейчас, а про документацию я расскажу далее.
- Удобная единая документация. Она расположена на сайте openintegrations.dev и содержит в себе всю информацию, необходимую для работы: инструкции по предварительным действиям для начала интеграции, описания всех методов с параметрами и возвращаемыми значениями, примеры кода и т.д. Каждый API имеет там свой раздел.
- Простая установка. ОПИ распространяется во множестве вариантах: как XML файлы расширения, как EDT проект расширения, как файл расширения формата .cfe (версия 1С 8.3.9), как файл пакета для OneScript и еще в целом наборе пакетов и файлов для Windows и Linux. Из этого набора вы всегда сможете выбрать тот способ установки, который лучше подойдет для вашей конкретной задачи
На момент последнего обновления данной статьи, доступны следующие API:
Наиболее актуальную информацию можно посмотреть в репозитории или на вводной странице документации.
Ollama — это инструмент и платформа с открытым исходным кодом, которая позволяет легко запускать и использовать большие языковые модели (LLM) локально на вашей машине.
Ollama один из важнейших инструментов, если мы говорим про использования ИИ: она предоставляет простой способ взаимодействия с различными моделями, такими как Llama, Mistral, Phi, и другими, без необходимости подключения к интернету или использованию облачных сервисов.
Тема ИИ популярна сейчас как в 1С, так и в остальных стеках, поэтому в ОПИ я тоже не захотел смог обойти ее стороной. Для работы с Ollama API в пакете теперь доступны следующие методы:
- Методы обработки запросов
- Получение версии Ollama
- Получение ответа по промпту
- Получение ответа с историей сообщений (в контексте)
- Получение представлений (embeddings)
- Методы управления моделями
- Получение списка доступных моделей
- Получение списка запущенных моделей
- Получение информации о модели по имени
- Создание модели
- Копирование модели
- Удаление модели
- Загрузка модели в ОЗУ
- Выгрузка модели из ОЗУ
- Отправка модели в библиотеку
- Скачивание модели из библиотеки
- Работа с BLOB
- Отправка BLOB на сервер
- Проверка существования BLOB
Примеры кода:
Эти функции покрывают практически весь доступны API Ollama: их должно быть достаточно для простого создания чат-бота или автоматизации управления моделями из 1С и OneScript. Больше информации о перечисленных выше методах, как и всегда, можно найти в онлайн документации
Переработка функционала HTTP
Помимо нового API и исправления некоторых багов, к этому обновлению также был серьезно переработан внутренний инструментарий для работы с HTTP, на основе которого большинство библиотек ОПИ и работают. Его основа была создана в самом начале проекта, еще до первой библиотеки пакета, поэтому не удивительно, что там были как изначальные недочеты проектирования, вскрывшиеся позднее, так и ворох костылей, собранных уже в процессе развития
У старого модуля не было особых проблем в надежности, но зато были большие проблемы в плане гибкости, прозрачности и унификации, что и привело наконец к этой переработке, которая очень долго откладывалась
Рассказываю же я это для того, чтобы подвести в итоге к двум вещам:
- Все методы всех библиотек покрыты Unit-тестами, которые были успешно пройдены к текущему моменту, когда переработка функций для работы с HTTP уже завершена. Также к ним добавились тесты уже на сам модуль HTTP, чего не было ранее. Тем не менее, если вы уже используете ОПИ и планируете обновлять его до новой версии, желательно соблюдать осторожность и понаблюдать за его работой некоторое время. В случае возникновения проблем, просьба написать о них в Issues (лучше) или комментариях к данной статье (хуже)
- Мне нравится, как выглядит и работает новый модуль HTTP, поэтому в следующем обновлении, вероятно, он появится как отдельная библиотека. По задумке, это должно с одной стороны увеличить количество информации о его работе (не только внутри других библиотек, но и напрямую), а с другой - устранить этот странный пробел отсутствия HTTP-клиента в проекте с интеграциями, большая часть которых на HTTP и работает
Ну а пока все! Напомню лишь, что ОПИ - это не только Ollama и не только 1С, но еще более 20-ти API и технологий, интеграция с которыми доступна также в виде пакета для OneScript и консольного приложения для Windows и Linux. Все интересные ссылки находятся ниже
Спасибо за внимание!
Если вам нравится ОПИ, то не забывайте поддерживать его на GitHub и Инфостарт!
Репозиторий ОПИ: github.com/Bayselonarrend/OpenIntegrations
Последний релиз: github.com/Bayselonarrend/OpenIntegrations/releases/latest
Другие статьи про Открытый пакет интеграций на Инфостарт:
![]()
Мой GitHub: https://gitub.com/Bayselonarrend OpenYellow: https://openyellow.org Лицензия MIT: https://mit-license.org