Работа с локальным ИИ (LLM, БЯМ) через KoboldCPP из 1С

16.12.24

Интеграция - Нейросети

Обработка для использования моделей искусственного интеллекта (LLM) в целях написания кода 1С и других без использования внешних сервисов. Для работы с ИИ необходим только компьютер пользователя.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Запросы к LLM через KoboldCPP
.epf 6,46Kb
5
5 Скачать (1 SM) Купить за 1 850 руб.

Использованные сокращения:

ИИ – искусственный интеллект.

БЯМ, она же LLM – большая языковая модель

LLM, она же БЯМ – large language model

ПО – программное обеспечение

ОЗУ – оперативная память компьютера.

SSD – solid state drive, твердотельный накопитель, более быстрая альтернатива жестким дискам

 

Мотивы

На создание данной обработки меня подтолкнуло прохождение интенсива по 1С от Университета Зерокодер. Идея использовать БЯМ (ИИ в обычной терминологии) для генерации программного кода с минимальным участием программиста невероятно притягательна. Возможно, когда-нибудь это станет признаком следующего поколения языков программирования. Но если для широко распространенных языков программирования технология уже работает довольно неплохо, то с 1С ситуация пока не так хороша. Причина в обучении моделей - материалов для обучения 1С объективно доступно меньше. Язык 1С не так широко распространен в мире, программисты 1С в основном используют русский язык. В итоге, на аналогичном курсе университета с использованием языка Python использовался реально сгенерированный ИИ программный код. На курсе по 1С создатели замахнулись только на создание ИИ описаний ресторанных блюд.

В обоих курсах в качестве ИИ использовался ChatGPT от компании OpenAI, чьи модели обладают несомненными преимуществами. На данный момент лидерство ChatGPT в генерации программного кода вряд ли может быть оспорено. Обидно, но в генерации кода 1С ведущие российские модели YandexGPT и GigaChat работают хуже, чем ChatGPT. Хотя казалось бы, отечественные модели должны лучше работать с русским языком, российским ПО и тд. Однако, ChatGPT имеет существенные недостатки для обычного пользователя из РФ – плату за использование продвинутых моделей и запрет на доступ из РФ (API работает только через прокси-посредников). Это дополнительно повышает стоимость использования, растут риски в глазах бизнеса. Приходится искать альтернативы, не имеющие подобных недостатков. Здесь радует, что ситуация в отрасли меняется в лучшую сторону прямо на глазах – если полгода назад альтернатив ChatGPT для мира 1С я не находил в принципе, то сейчас они появляются все быстрее и быстрее. Новые модели выходят буквально каждую неделю. Более того, выходят открытые бесплатные модели, которые желающий вполне может запускать и использовать прямо на своем компьютере. Другими словами, для использования таких моделей не нужны и не используются никакие внешние сервисы. Конечно, надо принимать во внимание, что характеристики компьютера должны соответствовать предъявляемым требованиям. Для генерации кода на 1С простые и маленькие версии моделей вряд ли подойдут, результат их работы скорее разочарует. А серьезная большая модель на слабом компьютере либо вообще не запустится, либо будет работать неприемлемо медленно. Самым критичным параметром компьютера является размер ОЗУ. Для ускорения работы весомым плюсом станет наличие видеокарты от Nvidia последних поколений. Мои рекомендации по результатам проведенных лично тестов – ОЗУ от 32 Гб и видеокарта от Nvidia поколения 3000 или 4000 (скоро ожидается анонс видеокарт поколения 5000). Для ускорения запуска модели рекомендуется использовать SSD. Но прогресс неумолимо идет вперед, и к счастью, требования к компьютеру для запуска моделей ИИ постепенно снижаются.

Бизнес, в свою очередь, может использовать свои собственные серверы. Плюсом здесь будет уменьшение рисков потери конфиденциальных данных и вывод производительности на уровни, недоступные персональным компьютерам. Это может быть необходимым для использования ИИ в многопользовательской среде.

Данная обработка демонстрирует использование ИИ из 1С в варианте локальной БЯМ, запускаемой на компьютере пользователя.

 

Использованное стороннее ПО

Для запуска локальной модели ИИ используется KoboldCPP. Из аналогичных продуктов я выбрал его за возможность использования видеокарт Nvidia для ускорения работы и использования более объемных моделей за счет расширения доступной оперативной памяти. При ОЗУ в 64 Гб и видеокарте с 12 Гб видеопамяти получается запускать модели ИИ размером в 70 Гб, которые показывают очень неплохие результаты. Разумеется, скорость работы будет сильно падать с увеличением размера модели, мгновенных ответов от больших моделей ждать точно не стоит.

KoboldCPP имеет удобный веб-интерфейс для общения и настройки. Используются модели ИИ в формате файлов c расширением GGUF.

https://koboldai.com/Koboldcpp/

Ссылка на скачивание с GitHub - https://github.com/LostRuins/koboldcpp/releases

 

Пример командной строки запуска KoboldCPP на компьютере с видеокартой, имеющей 12 Гб видеопамяти, из которой используются рекомендованные Max – 1 = 11 Гб. contextsize 4096 – максимальный размер контекста запроса в токенах, с которым может работать модель:

C:\Kobold\koboldcpp.exe --model C:\AIModels\t-pro-it-1.0-q8_0.gguf --usecublas --gpulayers 11 --contextsize 4096

 

Модель ИИ

В качестве LLM я использовал новую модель от Т-Банка, опубликованную буквально несколько дней назад. Данная модель основана на Qwen от китайской компании Алибаба, дополнительно обучена специалистами Т-Банка и показала неплохие результаты в моих тестах. Модели от Т-Банка доступны на https://huggingface.co, ссылки для скачивания в статье ниже. Из других испытанных мною неплохие результаты в генерации кода 1С показали модели DeepSeeker и Qwen, также доступные на Huggingface.

https://www.tbank.ru/about/news/11122024-the-t-technologies-group-has-introduced-the-worlds-most-efficient-open-large-language-models-in-russian/

 

Описание кода

Код для обращения к модели ИИ достаточно компактен и занимает не более страницы текста. Для передачи запроса и получения ответа используется API KoboldCPP, доступный по HTTP по адресу Localhost:5001. Код функции из приложенной обработки приведен на скриншоте ниже.

 

Результаты тестирования

Тестирование проводилось с помощью приложенной обработки на различных запросах по коду 1С и не только. Для запуска обработки подойдет пустая или любая конфигурация 1С 8.3, весь код  находится в самой обработке. Я задавал модели различные каверзные вопросы, на которые не смог получить адекватный ответ от других моделей (исключая ChatGPT, он ответил наилучшим образом и выступал в качестве эталона). Список вопросов у меня постоянно пополняется, ниже приведены примеры ответов на некоторые из них. Вывод по результатам тестирования – ответы не идеальны, но в целом модель ИИ от Т-Банка тестирование выдержала, для задач в области программирования на 1С вполне может использоваться.

Проверено на следующих конфигурациях и релизах:

  • 1С:Библиотека стандартных подсистем, редакция 3.1, релизы 3.1.10.383

Обработка Искусственный интеллект Большая языковая модель large language model KoboldCPP БЯМ LLM локальная gguf Т-Банк

См. также

Нейросети 8.3.6 1С:Управление торговлей 11 Управленческий учет Платные (руб)

Обработка подключения фотокамер Canon и Nikon к Управление торговлей 11.4 для потоковой загрузки фотографий в карточки товаров с автоматическим удалением фона

22800 руб.

24.06.2021    9886    4    4    

15

Мастера заполнения Нейросети Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Платные (руб)

Расширение для заполнения описания товара (номенклатуры) с помощью модели ИИ ChatGPT с ключевыми словами. Расширение формирует продающее описание товара по его наименованию с помощью модели искусственного интеллекта. Будет полезно для владельцев интернет магазинов, каталогов товаров и продающих через маркетплейсы. Адаптировано для основных конфигураций: УТ, ЕРП, КА, УНФ. Прошло аудит на 1cfresh.com. Версия для автоматического заполнения

5000 руб.

13.03.2023    18172    47    50    

75

Нейросети Мастера заполнения Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Платные (руб)

Расширение для заполнения описания номенклатуры с помощью модели ИИ GigaChat от Сбера. Расширение формирует продающее описание товара по его наименованию с помощью модели искусственного интеллекта. Будет полезно для владельцев интернет магазинов, каталогов товаров и продающих через маркетплейсы. Адаптировано для основных конфигураций: УТ, ЕРП, КА, УНФ.

5000 руб.

08.11.2023    2667    12    0    

21

Нейросети Программист Пользователь Платформа 1С v8.3 1С:Бухгалтерия 3.0 Россия Абонемент ($m)

На основе подключенной нейросети программа вычисляет основные реквизиты контрагента - ИНН, КПП, название, другие поля и банковские реквизиты из произвольного текста. Реквизитор AI.

2 стартмани

10.12.2024    293    2    svcoopers    4    

4

Нейросети Бесплатно (free)

С помощью больших языковых моделей (LLMs), таких, как ChatGPT, можно создавать полноценные микросервисы, даже не имея глубоких знаний в конкретном языке программирования. Расскажем об истории развития нейросетей и практическом опыте применения ChatGPT для того, чтобы выйти за рамки платформы 1С. Прим. ред.: доклад от 13 октября 2023 года.

10.12.2024    789    Repich    1    

10

Нейросети Бесплатно (free)

Нейросетям уже можно поручить множество рабочих задач – они генерируют изображения, пишут код, решают вопросы коммуникаций. Но без человека, который напишет промт, а потом адаптирует результат под свою задачу, все еще не обойтись. Расскажем о преимуществах и особенностях использования ChatGPT для задач разработки, в коммуникациях на работе или HR-задач. Прим. ред.: доклад от 12 октября 2023 года.

06.12.2024    753    GulnaraG    10    

6

Нейросети Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Хочешь понять, с кем беседуешь на Инфостарте? Воспользуйся детектором тролля. Детектор тролля покажет количество сообщений с троллингом у собеседника и гистограмму по видам троллинга. Если % троллинга в сообщениях собеседника зашкаливает, то собеседнику можно не отвечать. Бараку Монголову посвящается.

26.11.2024    1565    13    Torin57    83    

18

Нейросети Бесплатно (free)

В статье рассказываю, как ChatGPT может стать помощником разработчика в заполнении таймшитов. Делюсь личным опытом, описываю несколько простых и эффективных подходов, как автоматизировать этот процесс с помощью ИИ.

11.11.2024    572    user1931231    0    

7
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. kalyaka 1112 17.12.24 16:14 Сейчас в теме
Какая по итогу конфигурация железа использовалась? Сколько времени уходило на обработку запроса?
9. gariki 58 18.12.24 09:08 Сейчас в теме
(1) kalyaka, Железо у меня достаточно среднее, только оперативку добил до 64 Гб. Без этого работало довольно грустно. Скорость очень сильно зависит от размера используемой модели. Light варианты моделей на 7 Гб отвечают примерно со скоростью родных сервисов. У средних по размеру на 30-40 Гб, которых сейчас появляется больше всего, на достаточно большой ответ уходит примерно пара минут. Ну а большие на 70 Гб... Кофе попить точно успеете) На Pro модели из примера на моем компьютере скорость ответа примерно 1,5 токена/сек.
Главное условие успешной работы - модель должна полностью вмещаться в свободную оперативную память. И, как написал, на скорость хорошо влияет наличие видеокарты NVidia. Чем большую часть модели удастся разместить в видеопамяти, тем заметнее будет эффект.
2. DmitryKSL 157 17.12.24 17:59 Сейчас в теме
Как ИИ обучить программированию на 1С? Вчера как раз от скуки попробовал гигачат. На простой задаче, выгрузить структуру в текстовый файл в формате json, получил похожий на правду, но не рабочий код. А говорил что умеет 1С, обманул ...
3. milanse 38 17.12.24 22:45 Сейчас в теме
(2) повезло, что код просто нерабочий. Мне гигачат выдал неправильно работающий скрипт на sql - язык уж куда проще. На уточняющий вопрос, мол код делает не то, ответил да, действительно, вот тебе код, который делает то. Надо ещё уметь правильно составить запрос, тоже опыт.
4. mkalimulin 1237 18.12.24 00:33 Сейчас в теме
(2) Вы, ребята, небось в режиме "сказочника" запускали. Ну и чего вы хотели?
10. gariki 58 18.12.24 09:10 Сейчас в теме
(2) DmitryKSL, напишите, пожалуйста, пример своего запроса? Добавлю в свой чеклист для оценки моделей.
5. AntonProgma 48 18.12.24 00:35 Сейчас в теме
А сертификат 1специалиста ИИ уже может получить?
6. mkalimulin 1237 18.12.24 00:43 Сейчас в теме
7. shard 281 18.12.24 07:30 Сейчас в теме
не в ту сторону воюете)) надо запросы вида "напиши код для загрузки цен поставщика из вот этого файла xlsx" или "проанализируй товары по ликвидности и оборачиваемости и выведи в порядке выгодности". И в итоге поставщик пришлет файл, который 1с не открывает...
8. muskul 18.12.24 08:35 Сейчас в теме
(7) Вот вот. кому сдались в 1с эти сортировки.
12. gariki 58 18.12.24 09:16 Сейчас в теме
(8) Это для сравнения с ответами по другим языкам программирования) Частенько модели в ответ вместо кода на 1С выдают ответ на Python или вообще что-то гибридно-нереальное.
11. gariki 58 18.12.24 09:14 Сейчас в теме
(7) Согласен, поэтому я не верю в идеи зерокодинга, что ИИ напишет весь код и не надо больше ничего делать, уметь программировать и тп. Да, некий шаблон ИИ выдаст, но "обработку напильником" по месту никто не отменял) Программист по-прежнему необходим, а ИИ просто сэкономит время, не более того...
13. kalyaka 1112 18.12.24 09:31 Сейчас в теме
(11) Ограничение ИИ (слишком громко сказано!) в том, что генеративные модели в принципе не могут ничего нового вывести, только комбинацию из имеющегося. Удобство в том, что они позволяют выуживать информацию из огромного массива данных. Т.е. если раньше нужно было "гуглить" и самому компилировать, то теперь можно просто "поговорить" с ChatGPT. Т.е. современный ИИ это по сути очень удобная база знаний на основе "горы" данных.

По сути это очень удобная экспертная система. ИИ - это просто коммерчески раскрученное имя.
14. SerVer1C 823 18.12.24 09:50 Сейчас в теме
Пока разработчикам не стоит беспокоиться о превосходстве ИИ над человеком. Захват мира машинами тоже отменяется.
Тиньковская модель на 32B параметров отжигает
Прикрепленные файлы:
15. kalyaka 1112 18.12.24 11:03 Сейчас в теме
(14) провел такой же эксперимент с моделью GPT-4o в вариантах быстрого ответа и более качественного. Убедился, что пока нам ИИ не угрожает :))
Прикрепленные файлы:
Оставьте свое сообщение