Каталог решений - Необходимый минимум по AI для 1С-ника

Необходимый минимум по AI для 1С-ника

Необходимый минимум по AI для 1С-ника

В наличии

Технологии искусственного интеллекта (AI или ИИ) уже перестали быть Rocket Science, при этом они не ограничиваются линейной регрессией для решения простых задач. О том, какие особенности и ограничения есть у существующих технологий ИИ, и как они могут помочь 1С-никам, на онлайн-митапе «Интеграционные решения в 1С» рассказал руководитель управления ИТ компании WiseAdvice Олег Филиппов.

Категория:

Описание

Сейчас осталось не так много людей, мало знающих, что такое ИИ, тем не менее, у многих ИИ до сих пор ассоциируется с какой-то историей о восстании машин, с чем-то очень сложным и далёким.

Когда-то у ИИ-технологий было много проблем, но мир не стоит на месте – сейчас фреймворки для проектирования ИИ стали доступными, с ними приятно и быстро работать.

  • Начну с теории – я расскажу, что такое ИИ, какие у него есть виды и т.д.

  • Дальше я расскажу, как подключить все эти замечательные библиотеки, фичи, фреймворки в 1С

  • И в третьей части рассмотрим различные практические примеры использования ИИ для 1С. Об использовании MATLAB для 1С я уже рассказывал в 2016 году на конференции Инфостарта, но сегодня ещё раз повторюсь.

 

Хайп вокруг ИИ

 

 

Хайп вокруг ИИ уже прошёл, инвесторы уже не кидаются с горящими глазами на стартапы в области ИИ, а ИТ-директора уже не стремятся внедрять всё, что с ним связано.

Подходы стали более взвешенными, все начали понимать, что это за технологии: что появилось нового, что развилось, что не развилось, что можно, что нельзя. Технологии ИИ стали зрелыми, и их можно использовать.

 

 

Негатив вокруг ИИ сейчас во многом связан с тем, что развелось очень много школьников, студентов – «monkey data scientists». На слайде – известный мем на эту тему.

Во многом в появлении таких дата-саентистов виноват Kaggle – это платформа, где можно искать исполнителей, если вам нужно решить задачу, например, по построению модели для какой-нибудь статистики. Просто публикуете задачу на Kaggle, устанавливаете награду, например, 1000 рублей, и 200 школьников пытаются подобрать наиболее подходящую для вас архитектуру нейросети, наиболее подходящие параметры, проводят кросс-валидацию и т.д. и т.п. У кого лучше получилось, тот и получает деньги. Им интересно, а вам полезно, потому что вы за те же самые деньги получаете намного больше ресурсов.

В отличие от традиционной разработки, задачи ИИ имеют более исследовательский формат. Если у программиста-разработчика начинается исследование, то это плохо: «Чувак, ты должен хотя бы в общих чертах знать, что делать – если ты не знаешь, то ты должен быть там тимлид или архитектор». Но если ты дата-саентист, то для тебя исследование – это нормально, а ещё ты можешь сказать всем: «Ребят, до свидания, я не знаю, когда я это сделаю, это зависит от того, как пойдёт исследование»

 

Классификация ИИ-технологий

 

 

На слайде классификация видов ИИ из блога директора по исследованиям Gartner.

Дело в том, что ИИ – это не робот и не восстание машин, это некий набор технологий, который основан на попытке имитации действий человеческого мозга.

  • Первая, наиболее известная и изученная технология – это Machine Learning, она делится на предиктивную аналитику и Deep Learning.

    • О Deep Learning в классическом определении написано, что это нейросеть, в которой множество слоёв. Ничего подобного, нейросеть, в которой множество слоёв – это классический Machine Learning. А в глубоком обучении каждый слой ещё и выполняет определённую функцию – они проектируются определённым образом и нужны для определённых целей. Началось это с распознавания изображений, сейчас активно используется в обработке голоса, потом на примере изображений покажу.

    • Предиктивная аналитика – это формальная история, т.е. здесь под Machine Learning можно понимать не только нейросети: там, конечно, и градиентный бустинг, и деревья решений, леса решений, векторная модель, логистическая регрессия. Здесь к Machine Learning можно отнести в принципе даже линейную регрессию и метод наименьших квадратов, которые строятся в Excel за три клика. И в этом отношении, я дальше покажу, в 1С есть прекрасные деревья решений, в принципе вы Machine Learning можете прекрасно в 1С организовать ещё начиная с версии 8.0.

  • Natural Language Processing – обработка естественного языка, здесь в качестве примера можно привести Алису от Яндекса. У NLP есть две функции, два направления:

    • Первая функция NLP отвечает за то, чтобы как-то систематизировать знания и выдать ответ на ваш вопрос. Например, когда вы Алисе говорите что-то чёткое: поставь музыку и т.д. и т.п. – она выполняет вашу команду;

    • И вторая функция включается, когда вы пытаетесь с Алисой поговорить на любую тему – тогда включается Deep Learning, нейросеть уходит в полностью свободный полёт и вы можете услышать какие-нибудь совсем неожиданные ответы.

  • Дальше идёт работа с речью и с аудио – это отдельная область знаний и там больше не средств машинного обучения, а функций, специфичных для аудио-технологий.

  • Работа с компьютерным зрением.

  • Любимая мной тема Robotic Process Automation (RPA) – автоматизация пользовательских действий. Она отнесена к ИИ условно, но здесь используются многие технологии машинного обучения: предиктивная аналитика и, главным образом, машинное зрение.

  • Классическая роботизация – т.е. Boston Dynamics.

  • Чатботы тоже относят к искусственному интеллекту – они используют NLP и предиктивную аналитику.

  • Экспертные системы – тема из 70-х, для них использовались деревья решений.

 

ML ≠ AI ≠ Нейронные сети

 

 

Резюмируем ту замечательную теорию, о которой я уже сказал:

  • Машинное обучение – это не искусственный интеллект, это абсолютно разные области.

  • Искусственный интеллект – это не нейронная сеть.

  • Нейронная сеть – это достаточно маленькая, узкая область. Например, они могут предлагать рекомендации – когда вы скачали какой-то фильм/купили какой-то товар, и система вам предлагает подобные на основании ваших предпочтений. Там работает нейронная сеть – какие-нибудь XGBoost, CatBoost – это тоже нейронные сети, но обученные немножко по-другому.

  • Искусственного интеллекта не бывает, тест Тьюринга ещё никто не прошёл.

  • Классическая линейная регрессия – это тоже машинное обучение, и в очень многих случаях этого вполне хватает.

 

Инструменты для ИИ

 

 

На слайде приведен набор наиболее популярных фреймворков для работы с ИИ, которые вы можете увидеть в интернете – попробуйте здесь TensorFlow, CNTK и т.д.

Можно долго говорить о том, какой из этих инструментов более популярный, какой – менее.

  • Я бы выделил Scikit-learn – если хочется чему-то научиться в Python, то он самый простой, популярный, известный. В нём можно сделать что-то классическое – скажем, перцептрон обучить. Это три строчки кода, и 90% задач это решит.

  • Если хочется чего-то более тяжёлого – поиграться с картинками, научиться что-то распознавать, свою OCR написать, то есть TensorFlow. Причем, TensorFlow чаще всего надо рассматривать вместе с Keras, потому что сам по себе TensorFlow для работы достаточно тяжёл, а Keras представляет собой обвязку, которая немного упрощает работу с TensorFlow, с ним гораздо приятнее работать.

  • Для дот-нетчиков будет полезен Accord.NET – достаточно старая штука, но именно для .NET решает очень много вопросов.

 

Computer Vision

 

 

Возвращаемся к Computer Vision – эта тема последнее время стала мне ближе: я с ней активно столкнулся в RPA – в частности, она используется для OCR и т.д.

Как оказалось, здесь в офлайне правит одна большая библиотека OpenCV. Для неё есть замечательная обвязка для .NET – EmguСV, для Python тоже есть своя обвязка. В принципе, 90% вещей там реализовано.

Но стоит сказать, что современный Computer Vision это не про нейронные сети и машинное обучение – эта технология использует что-то наподобие фильтров фотошопа, т.е. преобразовать в чёрно-белое, сгладить, выделить контуры, найти объекты по контурам… Она про то, чтобы изображение, которое вы видите, преобразовать в такой вид, в котором с ним можно работать как с бинарным. Когда там есть живые объекты, и потом вы уже с ними работаете достаточно простыми средствами любого языка.

В Computer Vision лицо – достаточно стандартизированный объект, потому что у всех есть глаза-брови-нос, они легко выделяются. Но если вы захотите, например, выделить в документе печать, то тут уже начинаются «сказки», потому что эта история готового решения в Computer Vision не имеет.

 

 

Для стандартных задач можно попробовать Yandex Vision или OpenCV.

  • Yandex Vision – это замечательная штука, имеет под собой неплохой REST API, распознает лица и очень хорошо распознает рукописный текст. Стоит копейку за документ, каждый может попробовать. Подписываетесь, получаете ключик. В REST API – один метод, batchAnalyze. С его помощью можно передать рисунок, и Yandex Vision вам возвращает JSON-структуру, в которой, в зависимости от того, чего вы хотите, либо координаты лиц, либо текстовки, в которых весь текст. Причем, все это пишется буквально в три строчки.

  • OpenCV немного потяжелее, но умеет гораздо больше. Здесь тоже фича-детектор и фейс-детектор – это отдельная абсолютно история, потому что большинство Computer Vision-систем ориентированы именно на то, чтобы на рисунке выделить какие-то конкретные объекты. И вот эта штука работает неплохо. А если вы хотите как-нибудь классифицировать текст, то здесь уже классический Computer Vision не так сильно поможет.

 

Вариант использования Computer Vision в 1С

 

 

Как это применяется в 1С?

Одно из самых примитивных применений – это обычный код на .NET и Emgu CV, через который подключен OpenCV.

На слайде можно видеть вариант использования, единственный Open CV-шный метод, который здесь используется – это source.MatchTemplate().

Дальше всё это дело оборачивается в COMОбъект, а COMОбъект подключается к 1С.

Если у вас Linux, можно обернуть этот COMОбъект в обычное приложение, которое будет писать куда-нибудь в файлик, а вы из 1С будете этот файлик читать – самый ужасный вариант, но почему бы и нет?

 

 

Если чуть-чуть убрать костыли и сделать по-хорошему, то мы использовали всю эту историю примерно так.

  • Скрипт с фреймворком оборачивается в exe-приложение.

  • При старте 1С ищется, запущен сервис или не запущен. Если он не запущен – запускается. И потом к нему уже происходит обращение. При этом в ваш скрипт должен быть встроен SimpleHTTPServer, который делает вызовы и слушает нужный порт (рабочий пример – https://github.com/comol/OneCWebFramework).

  • Грубо говоря, вы из 1С разворачиваете еще один микросервис, к которому обращается сервер 1С. Этим решены две задачи:

    • ваше разворачивание крайне быстрое и простое, потому что происходит в рамках 1С-приложения;

    • и второе – ваше взаимодействие достаточно быстрое, потому что сервис работает по протоколу HTTP, и, если он упал, 1С его поднимает заново.

Все очень быстро работает. Время занимает только инициализация – первый вызов будет секунду. Но и у 1С, пока пул соединений к HTTP-сервисам не наработается, первый вызов тоже будет долгим.

 

 

Использовать можно и Python, и NodeJS, и .NET.

  • .NET по умолчанию компилируется в exe;

  • Для запаковки Python-скриптов в exe-файлы есть AutoPyToExe.

  • В NodeJS для упаковки в exe есть Pkg. Там то же самое.

 

Вот так это выглядит внутри 1С – при выполнении скрипта робот открывает окно проводника и кликает на картинку. Работает достаточно быстро, клево, стабильно.

 

OCR

 

 

Сейчас появилось очень много OCR-решений. Каждый день в Сколково регистрируется какой-нибудь новый стартап и говорит: «Мы представляем инновационную систему распознавания изображений».

90% таких решений используют библиотеку Tesseract OCR от Google – просто берут кучу бумажек, сканируют и обучают. А потом говорят, что это новый OCR.

Есть люди, которые это уже проделали достаточно давно и которые еще к этому прилепили знание русского языка, фонетики, орфографии. Это Abbyy. И, конечно, Abbyy FlexiCapture – пока лучше, чем все стартапы, вместе взятые. Тем более, что к 1С он прикручивается достаточно легко.

А Tesseract прекрасен тем, что он бесплатный. С его помощью вы можете сделать распознавалку за час. Она будет не очень хорошего качества, не сможет полностью распознать всю первичку для занесения в 1С. Но этим и не нужно заниматься, наше будущее – в электронном документообороте.

Зато можно распознавать паспорта, можно в документе распознавать определенные реквизиты (допустим, подразделение), и эту первичку классифицировать. Дальше на кейсах это покажу.

 

 

Если хочется сделать OCR с помощью MATLAB – в нем есть OCR Training Engine, просто добавляете изображения символов, говорите, что это изображение – это один символ, нажимаете кнопку и у вас тренируется OCR. Потом она генерируется в код .NET-библиотечки, которую вы можете подключать к 1С, как хотите.

 

 

Самое интересное – то, что Computer Vision очень мало что имеет общего с нейронными сетями.

На слайде показаны инструменты Computer Vision Application внутри MATLAB. Обратите внимание, что тут – Camera Calibrator, черно-белое изображение, размытие изображений, метки на изображениях, сегментация.

Грубо говоря, Computer Vision – это не нейронные сети, это некий набор фильтров, которые вы последовательно применяете к рисунку, и из этого получаете более качественный рисунок.

 

Deep Learning

 

 

Deep Learning – это, конечно, совсем другая история. Грубо говоря, Deep Learning отличается от классического машинного обучения тем, что в кейсе Deep Learning каждый фильтр, которые вы применяете в Computer Vision, – это один слой нейросети. Например:

  • У вас есть слой нейросети, который делает изображение черно-белым. И у него есть набор параметров – связи между нейронами в этом слое параметризируют фильтр черно-белого.

  • Дальше у вас есть фильтр детектирования объектов – это второй слой. Дальше у вас есть фильтр обобщения.

  • И вы накручиваете эти слои до тех пор, пока вы не получили нужную вам детализацию – как на картинке (собака, кошка, лодка, птичка).

И когда вы обучаете каждый слой этой нейронной сети, вы должны это делать осознанно.

Т.е. когда первый слой у вас делает изображение черно-белым, вы должны делать изображение черно-белым наиболее объективным образом, подстраивать связи не под то, чтобы определить, что у вас на этом рисунке изображена кошка, а под то, что у вас рисунок становится черно-белым настолько, чтобы следующий слой мог с него эффективно выделить объекты.

Deep Learning работает именно так – слои у вас должны быть осознанные. И каждый слой проектируется исходя из определенной задачи. Это я бы назвал проектированием сетей Deep Learning. И это, действительно Rocket Science. Если хочется туда залезть – то туда лезть не надо. Может быть, у каких-нибудь гениальных ребят получится, но у меня сделать что-то более качественное, чем классические архитектуры, которые есть, не получилось.

 

NLP

 

 

NLP – это работа с естественным языком. Я бы для этого рекомендовал две библиотеки (максимум, три).

Во-первых, можно обратиться к сервису Yandex SpeechKit – он совсем неплохо сделан, есть даже неплохой пример на Инфостарте, который реализует к нему обращение.

Для большинства задач типа распознавания телефонных звонков – этого будет достаточно. Там есть метапарсер, если вы, например, хотите извлекать какие-то конкретные данные из назначения платежа, но там придется возиться с грамматиками. Но для тех, кто не работал с этим напрямую, будет тяжело.

Есть открытая библиотека на Python от http://ipavlov.ai – сейчас это, наверное, лучшее решение, которое работает с русским языком. Они используют стандартный word2vec, но они его доработали. Она простая, удобная. В принципе, если вы хотите сделать чат-бота, который основан на ИИ, чтобы он был бесплатный, и вы его сами обучали, то – welcome, ipavlov – самый лучший выбор, чтобы сделать систему консультирования.

 

Инструментарий

 

 

Инструментарий. Если не брать в расчет 1С (в 1С, конечно, нейросети обучать можно, но не нужно), то основных инструмента – три.

  • Сейчас, конечно, лидирует Python – для него много библиотек, например, чтобы обращаться из 1С к HTTP-сервисах Python можно использовать BaseHTTPRequestHandler или SimpleHTTPServer. Это удобно, просто, гибко, быстро, прикольно. Еще можно попробовать Flask, но я считаю, что Flask – слишком тяжелый фреймворк.

  • Есть R – лично я к нему делал пару заходов, но это не для классических разработчиков.

  • И есть MATLAB – для тех, кто не любит писать код, там есть прекрасный визуальный конструктор. В принципе, по функциональным возможностям он лишь немного отстает от Python тем, что там нет возможностей TensorFlow. Но какие-то базовые вещи в MATLAB делать намного быстрее, прикольнее и удобнее. Там есть regression learner, classification learner, которые позволяют решать, в том числе, и AutoML-функции.

 

 

Есть вариант для совсем ленивых – регистрируетесь в сервисе Machine Learning Microsoft Azure, до какого-то объема он будет для вас совсем бесплатным.

По гиперссылке Studio у вас откроется конструктор. Здесь вы можете взять и набросать достаточно простой демо-пример – составить его из кубиков, визуально, мышководством. Ничего сложного нет, осваивается за 15 минут.

Самое главное, что на выходе вы на закладке Web Service можете сгенерировать веб-сервис, который будет открыто доступен по ссылке. И потом в эту обученную модель можно будет просто кидать HTTP-запрос и получать из него результат. Все предельно просто.

На эту тему есть статья на Инфостарте – очень кратко, очень по теме.

 

 

Еще для ленивых, кто принципиально не приемлет Azure, есть Amazon – там то же самое, даже функций больше. Но сам я им пользоваться не пробовал.

 

Анализ данных и прогнозирование

 

 

Для тех, кто совсем 1С-ник, а хочется сделать какую-то прогнозную модель, чтобы у вас 1С рекомендовала какие-то товары или какое-то обучение делала. Еще с 8.0 в 1С есть прекрасный механизм «Анализ данных и прогнозирование».

Заметьте, это не нейронные сети в 1С, это сети внутри платформы, они написаны на C++. И у вас дерево решений – там достаточно простая модель прогноза, и она работает быстро, и обучается она тоже быстро.

Но приятность заключается в том, что вы там берете просто – открываете ИТС, смотрите пример. Там обычный запрос по данным. Запрос передается в модель анализа, где есть набор колонок. Потом пишется АнализДанных.Выполнить(), и на выходе у вас получается модель, которую можно сохранить куда-нибудь в хранилище значений.

Это, в принципе, все, что нужно, если у вас какая-нибудь простейшая классификация. Более того, в 1С есть и кластерный анализ, и предиктивная аналитика, поиск последовательностей, построение цепочек событий.

Инструментарий есть уже давно, инструмент рабочий, но им почему-то не пользуются.

 

Где в 1С уже есть ИИ

 

 

Проблема не в технологиях, не в отсутствии знаний, а в кейсах, что никто не применил эти технологии в конкретных кейсах.

ИИ в 1С используются достаточно активно.

  • В 1С:ERP для прогнозирования закупок. Вживую не видел, прочитал в анонсе.

  • В 1С:ITIL – в классификации обращений. Сам Бог велел ИИ так применять. Видел вживую – работает прикольно, правильно. Пишется за 15 минут. Ничего страшного здесь нет.

  • В 1С:Документооборот есть простая OCR. Раньше просто PDF распознавала, теперь с картинок тоже распознает.

  • В 1С:Fresh появилась уже не простая OCR, которая не просто распознает текст, но и создает на его основании документы с автоматическим заполнением значений. Причем этот сервис распознавания вроде как был реализован силами разработчиков платформы.

  • Есть еще сервис 1С:Товары, рекомендательная система по управлению ассортиментом. Форма из этого сервиса здесь показана на слайде. Как этот сервис реально рекомендует – не знаю, но по описанию – крутая штука. Как минимум, без градиентного бустинга в ней явно не обошлось.

 

Можно обучать нейронную сеть внутри 1С

 

 

Можно ли обучать нейросеть внутри 1С? Да, можно, но все мы знаем, что 1С – это интерпретируемый язык.

И вообще, заниматься построением архитектуры нейросетей – дело неблагодарное. Перцептроны руками писать – не надо. Это уже было в 70-х.

И, конечно, в сервисе 1С:Товары под капотом используются не встроенные в платформу возможности. Встроенные в платформу возможности можно использовать только для анализа данных.

1С – это универсальный фреймворк, но для решения специализированных задач его нужно с чем-то интегрировать.

 

Где использовать ИИ в 1С

 

 

Еще немного кейсов. Это – самое важное.

  • OCR – классическая задача – это распознавание первички в 1С. Есть много решений, но я для качественного OCR рекомендую Abbyy FlexiCapture. Очень просто интегрируется с 1С и делать там особо нечего.

  • Автоматическая разноска банка, простановка аналитик – сам Бог велел это делать. Грубо говоря, если бухгалтер уже при таких условиях поставил такую аналитику, конечно, на этом нужно обучить какую-нибудь статистическую модель и дальше такую же аналитику подставлять. Причем, это можно сделать, наверное, и встроенными средствами 1С – даже без сторонних сервисов.

  • Аналитика затрат на проектах – то же самое. Если кто-то регулярно делает какое-то повторяющееся действие, на этом можно обучить модель. Это делать достаточно легко, просто. Это сейчас уже не Rocket Science, эти проекты вполне подъемные.

  • Классификация первички – прикольная история. Мало распознать документ, его после распознавания надо еще и оператору проверить. И затраты на такую проверку чаще всего нивелируют весь положительный эффект от распознавания. А вот классифицировать документ и его реквизиты (счет-фактура это или накладная, какой у нее номер и какое подразделение) – это крутая задача. Тут уже первичку можно автоматически раскидывать по тем аналитикам, где она нужна. Этот кейс – вполне живой и работающий.

  • Чат-боты – абсолютно замечательная история. Неплохо прокачанный чат-бот (например, на платформе DialogFlow или использующий библиотеки ipavlov) – отлично обрабатывает поток обращений.

  • Роботизация действий пользователя – мне этот подход импонирует. Это используется, можно применять – реализовать это сейчас очень просто, и работает гораздо стабильнее, чем ранее. Когда у вас один человек работает в 20 системах или открывает один и тот же Excel-файл по 50 раз, а руки разработчика не доходят – пожалуйста.

 

 

  • Еще интересная история – скоринг. Под эту задачу прекрасно подходят деревья решений. Когда вам нужно где-то в CRM оценить потенциал сделок, лидов, контрагентов, автоматически поднять приоритет какому-нибудь тикету в зависимости от того, от кого от пришел. Не писать руками – если тикет пришел от генерального директора, то приоритет 1. На этом можно обучить нейросеть, и в зависимости от того, кто какие приоритеты уже расставлял, делать это в дальнейшем автоматически. И человек будет только корректировать, а вы будете нейросеть обучать. Тоже прекрасный проект, делается быстро, а люди чувствуют всю силу искусственного интеллекта.

  • Рекомендации товаров – классическая история. Тут, единственное, что стоит заметить, для рекомендаций уже используется градиентный бустинг (CatBoost, XGBoost). Они очень быстро работают.

  • Прогнозирование – можно написать решение для прогнозирования денежного потока, прогнозирования потребности в товарах (1С:Товары), прогнозирования бюджета – в принципе, если считать без аналитик и при условии, что у вас бюджетирование поставлено и работает уже лет 10, вы, скорее всего, получите отсюда очень неплохие прогнозы.

  • Еще одна интересная история, которая случалась в моей жизни – это транспортная логистика, поиск оптимального маршрута. Здесь работает такая штука, как генетические алгоритмы. Про них я здесь уже не рассказывал, потому что их весьма условно можно отнести к средствам искусственного интеллекта.

  • И распознавание номеров машин – кто этого до сих пор не сделал, конечно, это сейчас штатная функция почти в любом средстве компьютерного зрения.

 

 

Еще раз про RPA – этот кейс я считаю самым удачным, это реальная замена человека роботами.

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

И один из последних трендов, Hyperautomation – автоматизировать можно все, автоматизировать нужно все. Ручной рутинный труд – это плохо. Искусственный интеллект заменит людей.

 

AI для разработчиков

 

 

И, наверное, ближе к завершению, хочется сказать еще одну историю – когда я разбирался со всем этим делом, я увидел очень приятную тенденцию – это искусственный интеллект для разработчиков. Может быть, если у меня получится 1С как-нибудь эту идею продать.

Есть замечательный сервис codota, где люди, которые зная структуру программного кода, обучили систему на большом наборе исходников, чтобы улучшить работу автоподстановки.

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

Причем, на 1С у нас единая кодовая база, единые правила кода – сам Бог велел эту историю использовать. Это маст хэв.

 

Итого

 

 

Итого, что я хотел сказать в завершение.

  • AI – это не панацея, не лекарство от всех болезней. Хайп вокруг него был разведен правильно, хорошо и нужно. Но в целом ничего глобально нового он нам не с вами не принес

  • Уходить вглубь AI до архитектуры нейросетей, составлять Deep Learning-сети, обучать для них модели – вряд ли имеет смысл в мире 1С.

  • Готовых решений, готовых моделей уже огромное количество. И их желательно применять, потому что сейчас это очень просто. Можно даже организовать деревья решений внутри 1С. Но на самом деле, написать три строчки питоновского кода и обернуть их в HTTP-сервис – с этим школьники справляются. Разработчики со стажем тем более справятся.

 

Вопросы

 

Можно ли применять ИИ в качестве системного администратора, который выполняет регламенты по обслуживанию СУБД, сервера 1С, контролируя производительность, выполняет донастройки, если это требуется. Возможно ли автоматизировать администратора кластера 1С?

Лично я не делал. Мне такой кейс кажется достаточно сложным, есть много более простых. Но вообще на Инфостарте был доклад ребят, которые этим занимались – они назвали свою сеть Лариса. Ребята автоматизировали мониторинг проблем производительности на сервере 1С — они анализируют журнал регистрации, отлавливают массовые сообщения о том, что система тупит, и делают из этого какие-то выводы.

Не чувствуете ли вы угрызения совести, разрабатывая роботов?

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

Где использование ИИ дает наилучший результат?

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

 

*************

Данная статья написана по итогам доклада (видео), прочитанного на онлайн-митапе "Интеграционные решения в 1С". Больше статей можно прочитать здесь.

Приглашаем всех 11-12 ноября принять участие в INFOSTART EVENT 2021 в Москве: //infostart.ru/events/1451228/

has been added to your cart:
Оформление заказа