Автоматизация бизнеса · Логистика и ВЭД
22 листа, 7 контуров и склад "по опыту": как мы автоматизировали контейнерную логистику, которая держалась на одном человеке
Компания возит контейнерные грузы из Китая в Россию: морем и по железной дороге, дальше автовывоз на склады получателей. Семь грузополучателей, девять складов, больше 170 отгрузок в год. Весь этот поток держался на одном сотруднике и одной рабочей таблице на 22 листа. На каждую отгрузку человек открывал пять документов и вручную переносил из них 28 значений, а потом еще раз - в три шаблона документов. На какой из девяти складов везти контейнер, он решал по опыту, и в инструкции это место было честно помечено как "пока не научились определять".
Ниже разбор того, как мы превратили это в систему: реестр отгрузок, документы, которые собираются из одной строки, регламент на все семь контуров процесса вместо трех и записанное правило выбора склада. И отдельно - где автоматизация не сработала и почему. Клиента не называю, детали защищены NDA, логика и цифры проекта настоящие. Тот же порядок работы мы применяем на каждом новом проекте: сначала смотрим, где человек работает руками за интерфейс, потом - что вообще не записано ни в одном документе, и только потом что-то автоматизируем.
Часть 01
Как была устроена работа
Один процесс, семь контуров, один человек
Клиент возит стройматериалы: стеклотканевую сетку, серпянку, тенты, пленку. Морем через порты Дальнего Востока или по железной дороге через Казахстан или Монголию, дальше машиной на склад получателя. Только за 2024 год - 172 отгрузки.
Снаружи это выглядит как "человек ведет табличку". Изнутри это один сквозной процесс от письма поставщика до подписанной транспортной накладной, и в нем семь разных видов работы.
Семь контуров одного процесса
- Прием пакета документов по отгрузке: инвойс, упаковочный лист, приложение к контракту, коносамент на морской перевозке или спецификация на железнодорожной.
- Внесение данных в рабочую таблицу.
- Формирование трех документов: поручение агенту, поручение экспедитору, экспедиторская расписка.
- Страхование груза: заведение отгрузки в личном кабинете страховой, выгрузка сертификата, заявления и счета.
- Ежедневное движение контейнеров и сводка клиенту.
- Планирование вывозов на склады и согласование окон выгрузки.
- Транспортные накладные и данные на водителя.
Разница между морем и железной дорогой проходит почти через каждый пункт: разные документы, разные условия поставки, разный НДС на экспедиторские услуги, разный пункт перегрузки в страховке. Это не тонкость для посвященных, это то, что человек держит в голове каждый рабочий день. И все семь контуров сходились в одном сотруднике.
28 значений из пяти документов: как данные переносились руками
Инструкция была устроена как список "столбец - где посмотреть". Дословно один пункт:
Столбец Z смотрим в файле инвойс вторая вкладка в таблице Gross Weight (вес брутто) (нужен Total)
Из прежнего регламента
Тридцать таких пунктов на 256 строк документа. Человек открывал пять документов, находил в каждом нужную вкладку, таблицу и строку и переносил значение в свой столбец. Двадцать восемь значений на отгрузку. Потом брал заполненную строку и переносил те же значения второй раз - в поручение агенту, поручение экспедитору и экспедиторскую расписку.
Контроль качества был описан одной фразой: "после заполнения обязательно повторно сверить данные во избежание ошибок". То есть единственной защитой от ошибки было внимание человека. Опечатка в номере контейнера или пломбы не останавливалась нигде: она уходила из таблицы в три документа, оттуда в транспортную накладную и в страховку.
Рабочая таблица на 22 листа
Тут важно не свалиться в удобную историю про "у клиента был бардак". Бардака не было. Справочники работали, формулы считали, условное форматирование подсвечивало этапы пути. Инструмент собирал человек, который понимал, что делает.
Проблема в другом: книга росла три года, и ее ни разу не разбирали. Двадцать два листа - 14 видимых и 8 скрытых. Пять из восьми скрытых оказались датированными копиями одного и того же чек-листа: "Чек-лист 08.11", "12.11", "1411", "17.11.24", "20.11". Плюс рабочий, итого шесть версий одного инструмента. Актуальная - последняя. Наверное.
Так выглядит сохранение состояния без версий. Чтобы не потерять работающий вариант, человек копирует лист целиком и прячет. Через полгода в книге лежит история изменений в виде мусора, и какая копия рабочая, знает только тот, кто их делал.
Со справочниками та же история. Выпадающие списки работали, вопрос был в том, что в них лежало: 2 226 записей при 950 уникальных. Больше половины - дубли. В поле "Вид контейнера" открывался список из 128 позиций, где реальных вариантов восемь. В поле "Страна происхождения" - 133 позиции на три страны. Инструмент, который должен защищать от разнобоя, сам стал его источником: выбрать не тот одинаковый вариант проще, чем найти нужный.
А один из столбцов справочника прямо озаглавлен "НЕ АКТУАЛЬНО, СПРАВОЧНИК В ТАБЛИЦЕ НИЖЕ" и залит красным. Предупреждение о том, что пользоваться этим не надо, живет внутри самого инструмента. Причем красным - значит, кто-то уже наступал.
Часть 02
Почему навести порядок в таблице было недостаточно
Первый план: собрать листы и вычистить справочники
План выглядел очевидно: собрать 22 листа в разумное количество, вычистить справочники, переписать инструкцию по-человечески. В девяти случаях из десяти этого хватает.
Здесь бы не хватило, и по двум причинам сразу.
Таблицу в формате .xlsx нельзя автоматизировать
Первая причина техническая и обидная в своей простоте. Книга лежала на Google Диске загруженным файлом Excel, а не настоящей Google-таблицей.
Я полез в меню за скриптами, а меню нет. Проверил права, перезашел под другим аккаунтом, обновил страницу. Меню по-прежнему нет) Не сломано и не закрыто правами: в этом режиме пункта "Расширения" просто не существует. Google открывает такой файл в режиме совместимости: смотреть можно, редактировать можно, программировать нельзя.
То есть автоматизацию не поленились сделать - ее нельзя было сделать вообще, пока файл лежит в таком виде. И это ограничение молчаливое: оно ничего не сообщает пользователю, просто убирает пункт из меню. Человек три года живет с уверенностью, что таблица это таблица и большего от нее ждать нечего.
Регламент описывал 3 контура из 7
Вторая причина серьезнее.
Я разложил работу на контуры и сверил с инструкцией. Из семи контуров описаны были три: прием документов, ведение реестра и формирование трех документов. Четыре не описаны никак: ежедневное движение и сводка клиенту, планирование вывозов, транспортные накладные, график работы складов.
Они при этом выполнялись каждый день, и выполнялись правильно. Просто нигде не были записаны. Ни одного шаблона письма. Ни одного термина в глоссарии - при работе с коносаментами, железнодорожными накладными, упаковочными листами и спецификациями, где новый человек не отличит одно от другого. Способ считать расчетную дату прихода ("примерно 700 км в день, если груз в полувагоне - плюс неделя") жил только в голове.
И самая честная строка старого регламента, которая объясняет все остальное:
Столбец M пока не научились определять (зависит от груза, сразу продавать или сначало нужно на производство). Выберем пока что указано выше
Из прежнего регламента
Столбец M - это пункт назначения. Решение о том, на какой из девяти складов везти контейнер. Единственное место процесса, где ошибка стоит не переделанной бумажки, а машины, которая поехала не туда. Дальше переадресация, и правило по ней простое: если ошибка наша, переадресация оплачивается из нашего кармана. Вывоз одного контейнера стоит десятки тысяч рублей, плюс почасовая оплата простоя машины сверх бесплатного времени.
7 контуров одного процесса
В инструкции было описано 3, остальные 4 жили только в голове сотрудника
- Прием документов по отгрузкеВ инструкции
- Внесение данных в таблицуВ инструкции
- Поручения и экспедиторская распискаВ инструкции
- Движение и сводка клиентуТолько в голове
- Планирование вывозовТолько в голове
- Транспортные накладныеТолько в голове
- График работы складовТолько в голове
Глоссарий, 7 шаблонов писем, 6 сотрудников за 2 года без остановок
Отсюда вывод, который перевернул первоначальный план. Наводить порядок в таблице бессмысленно, пока половина работы в таблицу вообще не попадает. Вычищенные справочники не помогут решить, куда везти груз. Красивая инструкция по 28 столбцам не спасет, если завтра этот человек уйдет в отпуск, а вместе с ним уйдут четыре контура, которых нет ни в одном документе.
Часть 03
Что сделали
Сначала формат: из Excel в Google-таблицу
Книгу перевели из .xlsx в нативную Google-таблицу. Одно действие на пару минут, самая недооцененная строка всего кейса и причина того, что дальше вообще стало возможно хоть что-то.
Дальше порядок был такой: сначала выход - документы, которые собираются из данных реестра. Потом недельный цикл. Потом справочники и связи между листами. И параллельно регламент, в который переезжало то, что жило в голове.
Документы по отгрузке одной командой: 15 минут вместо часа
Второй ручной перенос - из таблицы в три шаблона - исчез. Из строки реестра поручение агенту, поручение экспедитору и экспедиторская расписка собираются командой меню, сразу в Excel и PDF, вместе с папкой отгрузки на Диске. Веса и стоимость по нескольким контейнерам одной отгрузки суммируются сами. Транспортная накладная - оттуда же, из той же строки.
Подготовка документов на отгрузку занимала час. Теперь - 15 минут. Это единственный контур из семи, где время замерено до и после, и поэтому я называю только эту цифру.
Что осталось руками и почему
Не все уехало в автоматику, и это нормально.
Руками остаются: наименование груза, если в контейнерах одной отгрузки разный товар; ставки фрахта и железнодорожные, которые проставляет внешний перевозчик; ставка автовывоза; вид доставки и НДС - 0% на фрахте и 20% на железной дороге; финальное форматирование PDF.
Общее у всего списка одно: это места, где значение приходит извне или зависит от решения человека. Автоматизировать имеет смысл перенос, а не решение.
Комплект документов по ссылке из строки реестра
Вещь, которую никто не просил, а она оказалась заметнее половины автоматики. Комплект документов по отгрузке собирается в одно место, и ссылка на него живет прямо в строке реестра: номер поручения агенту - это не текст, а ссылка. Те же ссылки продублированы в служебных вкладках, в том числе в графике автовывоза.
Практически это значит, что документы ищутся из строки, а не по папкам Диска и не в переписке двухмесячной давности. В старой книге был номер, а где лежит комплект, знал человек. Сейчас открыл строку, нажал на номер, получил все. В актуальной части реестра ссылка стоит у 81 отгрузки из 91.
Эту часть работы клиенты обычно не заказывают, и в кейсах ее не показывают: ни экрана, ни кнопки, просто номер стал ссылкой. А по сэкономленным минутам в день она спокойно спорит со всем остальным.
Всего за таблицей теперь стоит 5 303 строки кода в 81 функции. Не макрос на десять строк, а система с собственной документацией: в меню есть пункт "Документация по кнопкам", который открывает справку по каждому действию.
График вывозов собирается сам по четвергам
Триггер по расписанию в четверг в 17:00 переносит данные в график вывозов без участия человека. Регламент требует отправить график складам в пятницу до 12:00, потому что склады работают до 16:00, и теперь он готов с вечера четверга. Это не "заложено в код и когда-нибудь заработает": запуск идет каждую неделю, сбоев нет.
Справочники: с 2 226 записей до 429
Двадцать два листа собраны в десять, и у каждого понятная роль: главный реестр, движение и его клиентская версия, автовывоз, справочники, таможенный срез для бухгалтерии, чек-лист этапов, архив старой таблицы. Шесть копий чек-листа стали одной, пустые листы убраны.
Справочники вычищены с 2 226 записей до 429, доля дублей упала с 57% до 0,7%. "Вид контейнера" - было 128 вариантов, стало 8. "Страна происхождения" - было 133, стало 3. "Пункт назначения" - было 134, стало 9.
И появилась вещь, которой раньше не было в принципе: связи между листами по номеру контейнера. Ошибка в номере теперь видна сразу, потому что формула возвращает ошибку вместо того, чтобы молча уехать в документы.
Регламент на все 7 контуров
Инструкция на 256 строк превратилась в регламент третьей редакции: 1 217 содержательных строк, 12 действующих разделов с навигацией. Рост в пять раз, но дело не в объеме: половина нового текста ушла на то, чего в старом документе не было ни строчкой.
Появился глоссарий на девять терминов, привязанный к практике: "Фрахт - морская перевозка. У морской перевозки всегда есть коносамент или драфт. Условия поставки FOB", и рядом железнодорожный вариант со своими условиями и документами. Это разница между "новый человек учится у наставника три недели" и "новый человек читает документ".
Появились четыре контура, которых в документе не было.
Что именно описали в четырех новых разделах
Ежедневное движение. Как разобрать письмо перевозчика, что писать в каждый столбец, как считать расчетную дату прихода: "примерно 700 км в день, оставшийся километраж делим на 700, если груз едет в полувагоне - прибавляем еще неделю". Отдельно - как читать сами письма: что значит "на перестановке" (контейнер перегружают с полувагона на платформу, от одной до трех недель), что значит "на погрузке" (груз выпущен таможней, ждет поезда, от трех дней до трех недель). Раньше это была устная традиция.
Планирование вывозов. Когда формировать график, до какого часа отправлять, с кем согласовывать, кому и с каким текстом.
Транспортные накладные. Семнадцать шагов. Ключевое: номер пломбы берется не из реестра, а из железнодорожной накладной, потому что при перегрузке он меняется. Ровно тот класс ошибки, который старый процесс не ловил вообще.
График работы складов. По каждому адресу свои окна выгрузки. Правило про бесплатное время выгрузки и оплату простоя сверх него вынесено прямо в шаблон письма складу: контроль стоит там, где принимается решение, а не в отдельном документе, куда никто не заглядывает.
И появились семь шаблонов писем с темой, получателями и списком копии. Плюс правило, как оформлять исправления: "ВНИМАНИЕ! в документах (каких) исправлено то-то на то-то", новое выделено жирным, в самих документах - желтой заливкой.
Как записать решение, которое человек принимает по опыту
Отдельно про столбец M, тот самый, который "пока не научились определять".
Здесь не было никакой магии, был созвон. Мы сели с клиентом и пошли по отгрузкам: сначала по прошлым, потом по ближайшим. По каждой один и тот же вопрос - почему именно на этот склад. Отдельно разобрали случаи, когда контейнер уехал не туда: они показывают критерий лучше всего, потому что в них видно, какой признак был пропущен. В удачных отгрузках он не виден - там просто сработала интуиция.
Через несколько отгрузок стало понятно, что ответ каждый раз упирается в одно и то же: в размер рулона. Весь этот "нерешаемый" пункт регламента оказался про то, насколько большой рулон приехал. Человек знал критерий всегда, просто не формулировал его словами: для него это не правило, а очевидность.
Дальше это записали алгоритмом:
- рулон 1x500, 1x1000 и больше, "Джамбо" в наименовании, одинаковое количество штук и мест - груз идет на производство;
- рулон 1x10, 1x20, 1x50, серпянка от 20 до 155 метров, тенты, готовая пленка - готовый груз;
- дальше по получателю: у одной группы компаний производственный груз едет на один склад, готовый на три других; у второго получателя склад всегда один.
Как выбирается склад
Было: «пока не научились определять». Стало: правило, которое можно проверить по документу
Крупный рулон
- 1×500, 1×1000 и больше
- «Джамбо» в названии
- Штук и мест поровну
На производство
Готовый груз
- Рулон 1×10, 1×20, 1×50
- Серпянка 20–155 м
- Тенты, готовая пленка
На склад готового груза
У каждого свой склад под производство и под готовый груз
Везем по преобладающей части груза и помечаем красным
Согласуем со складом, машину наудачу не отправляем
А следом вылезли развилки, о которых мы бы сами не догадались и которых нет ни в одном документе.
Контейнер бывает сборным. В нем и производственный груз, и готовый. Тогда смотрим, чего больше, и везем по преобладающей части. Такой контейнер еще и помечается красным, чтобы решение по нему не проскочило на автомате.
Последнее слово не за нами. Начальник склада может контейнер не принять - по своей загрузке, по времени, по своим причинам. Это не сбой процесса, а нормальный рабочий случай, и он тоже описан: при разногласиях согласовываем со складом, а не переигрываем молча и не отправляем машину наудачу.
Ни одна из этих тонкостей не всплыла бы в ответ на прямой вопрос "расскажите, как вы выбираете склад". Одна и та же задача: до - признанная нерешенной, после - записанная так, что ее можно проверить глазами по документу.
Часть 04
Где автоматизация не сработала: разбор документов через ИИ
Первый ручной перенос - из документов поставщика в таблицу - мы тоже пробовали убрать. Рассказываю честно, потому что причина, по которой не вышло, полезнее самого контура.
Что собрали
Пакет документов по отгрузке складывается в папку, дальше работает меню в самой таблице: файлы конвертируются, инвойс и упаковочный лист разбирает языковая модель, рядом лежит запасной путь без ИИ на жестких шаблонах. Результат ложится не в рабочий реестр, а в буфер приемки: строка уходит в реестр только после того, как человек ее проверит и поставит галочку.
Буфер мы поставили сознательно. Технически ничто не мешало писать сразу в рабочий лист, и так было бы быстрее. Но данные из реестра расходятся дальше в поручения, накладную и страховку, а цена неверной цифры не меняется от того, что ее поставила машина.
Почему не внедрили
Контур запустили на реальных инвойсах, и качество не устроило. Причем претензия не к модели: она честно перенесла то, что было в документе. Проблема в самих документах:
- дата инвойса написана словами и каждый раз по-разному: "AUG 24 2024" в одном документе, "August 21," с оборванным годом в другом;
- вес приходит вместе с единицей измерения внутри значения: "25401.60 KGS" там, где таблица ждет число;
- в графе количества мест стоит "ROLLS" - единица измерения вместо количества. Не число, а слово. Спасибо, посчитаем сами;
- грузополучатель назван полным юридическим именем на английском, а в справочнике он записан по-русски, и для машины это разные строки.
Каждую такую строку человек все равно открывает и правит целиком. А приемка имеет смысл ровно до тех пор, пока проверить быстрее, чем ввести. Здесь это условие не выполнялось.
Была и вторая точка отказа, тише первой. Разбор берет документы из одного места, а в жизни документ приходит туда, куда его удобнее отправить человеку. Часть пакетов прилетала в мессенджер, и по такой отгрузке данные просто не подтягивались: ошибок нет, просто ничего не происходит.
Где проходит граница
Посмотрите, где в этом проекте автоматизация сработала, а где нет. Сработало все, что считается из данных, которые уже лежат в таблице: документы, накладная, комплект по ссылке, график вывозов, выбор склада. Не сработал ровно один вход - чужие документы.
Граница прошла не по сложности задачи и не по уму модели, а по тому, контролируем ли мы качество входных данных. Разобрать инвойс технически проще, чем собрать транспортную накладную из тридцати полей с суммированием по контейнерам. Но накладную мы собираем из своих данных, а инвойс приходит из чужих рук в том виде, в каком его набрал человек на другом конце мира.
Контур не выброшен, он ждет своего входа. Следующий шаг - постоянные поставщики с типовыми формами: там даже разбор без ИИ работает точнее и дешевле, и цель "половина потока перестала вводиться руками" достижима.
Часть 05
Что из этого видит клиент
Отчеты по срокам: контейнер, который "ехал" 110 дней, ехал 50
Когда данные по каждой отгрузке собираются одинаково, из них можно считать не только документы. Мы собрали отчеты по срокам доставки, они ведутся с февраля 2025 года на живых данных.
Первая версия отчета считала срок от даты инвойса и дала разброс до 110 дней. Цифра выглядела дикой для маршрута, который проходят за полтора-два месяца. Пересчитали от даты фактической отгрузки - максимум стал 50. Тот самый контейнер "ехал" 50 дней, а остальные 60 стоял у поставщика: затарка, ожидание судна, оформление.
Отсюда правило, которое теперь работает на клиента: это две разные метрики с разной ответственностью. "От инвойса" - сколько заказчик ждет с момента заказа, отвечает поставщик. "От отгрузки" - как отработала перевозка, отвечает логист. Пока метрики были смешаны, претензия про срок уходила не по адресу.
Что еще показали отчеты
По 69 завершенным доставкам 2026 года средний срок от инвойса - 57 дней при разбросе от 29 до 110. Один порт отправления держит больше половины объема и тянет срок вверх: 65,8 дня против 46,3 у соседнего направления и 30,5 у самого быстрого. А весь топ-10 самых долгих доставок - один поставщик, десять из десяти: его средний срок на 32 дня дольше, чем у другого отправителя на том же направлении.
Это уже не логистическая справка, а основание для разговора с конкретным контрагентом.
Сами отчеты устроены не по контрагентам, а по вопросам: сводка, по маршрутам, по грузоотправителям, топ-10 самых долгих, все контейнеры, в пути. Лист "в пути" отвечает на вопрос, который клиент задает чаще всего.
Демо клиентского портала: где сейчас груз
Сейчас клиент узнает, где его контейнеры, из ежедневной сводки: движение по всем контейнерам выгружается в Excel и уходит по почте. Это срез на вчерашний вечер, и если вопрос возник в среду днем, он идет в мессенджер.
Следующий шаг - интерфейс, в котором заказчик сам смотрит, где едет его груз. Его рабочее демо на демонстрационных данных можно открыть по ссылке: https://dina-logistics.dev.reeskeen.ru/
Демонстрационные данные. Без базы, авторизации, файлов и интеграций с почтой и рабочей таблицей.
Восемь разделов: сводка, реестр отгрузок, движение контейнеров по плечам, автовывоз, документы, статистика, сквозной поиск, уведомления. Под интерфейсом не картинка, а логика процесса: статус контейнера не проставляется руками, а выводится из последнего события, просрочка считается сама, история перевозки собирается из событий и не разъезжается.
Отдельно про автовывоз. В коробочных системах его обычно нет, а в этом процессе на него и на графики складов уходит 46% всего рабочего времени по отгрузкам - это замер по отчету задач, не оценка. Поэтому в демо это не третий экран, а полноценный раздел с окнами вывоза и назначением машины.
Чего в демо нет, говорю сам: это демонстрационные данные, без базы, авторизации, файлов и интеграций с почтой и рабочей таблицей. Приложение и само это пишет в шапке. Это следующий этап, а не сданная система. Как то же самое ляжет на ваш процесс, удобнее показать на созвоне.
Часть 06
Итог
Результаты
| Показатель | Было | Стало |
|---|---|---|
| Подготовка документов на отгрузку | 1 час | 15 минут |
| Ручных переносов данных на отгрузку | 2 | 1 |
| Поручения, расписка и накладная | вручную по шаблонам | командой из строки реестра |
| Комплект документов по отгрузке | по папкам и переписке | по ссылке из строки реестра |
| Листов в рабочей таблице | 22 (8 скрытых) | 10 |
| Копий чек-листа | 6 | 1 |
| Записей в справочниках | 2 226 | 429 |
| Доля дублей в справочниках | 57% | 0,7% |
| Строк кода | 0, технически недоступен | 5 303 в 81 функции |
| График вывозов | вручную | автоматически каждый четверг |
| Выбор склада | по опыту сотрудника | алгоритм по типу груза и получателю |
| Ввод данных из документов поставщика | вручную | вручную; ИИ-контур собран, не внедрен |
Было / Стало: главные изменения в цифрах
| Регламент | Было | Стало |
|---|---|---|
| Контуров процесса описано | 3 из 7 | 7 из 7 |
| Содержательных строк | 256 | 1 217 |
| Терминов в глоссарии | 0 | 9 |
| Шаблонов писем | 0 | 7 |
Главная цифра здесь не объем, а покрытие: 3 из 7 против 7 из 7. Четыре контура выполнялись каждый день и нигде не были записаны. Именно это определяет, переживет ли процесс отпуск, болезнь или замену человека.
И это не рассуждение о будущем: за два года на процессе сменилось шесть сотрудников, и отгрузки ни разу не останавливались. За это отвечает регламент, а не таблица: таблица хранит данные, регламент хранит способ работы.
Сколько времени заняла автоматизация
| Когда | Что |
|---|---|
| май 2025 | первый скрипт, 180 строк: перенос данных в таблицу ставок |
| август 2025 | тот же объем, три месяца без развития |
| ноябрь 2025 | 3 576 строк: появился разбор документов |
| май 2026 | 5 303 строки, действующая версия |
| август 2026 | рабочее демо клиентского портала |
Это не проект с датой сдачи, а система, которая растет вместе с процессом.
Сравнение с рынком: у всех ли получается отдать ввод документов машине
Сначала честно про источники. Открытых замеров именно по контейнерной логистике нет, поэтому смотрю на соседнюю область, где та же задача решается миллионами документов в месяц: обработку входящих счетов в финансовых отделах. Методики у всех разные, так что цифры ниже - порядок величины, а не эталон.
| Показатель | По рынку | У нас |
|---|---|---|
| Доля документов, проходящих без участия человека | до 49% у лучших | 0% |
| Доля документов с расхождениями, требующих разбора | 22% в среднем, 9% у лучших | разбирается каждый |
| Точность извлечения на полях заголовка | 98-99% на типовых документах | не дошли до замера |
Полностью безлюдный ввод не норма даже у лучших. Лидеры доводят долю документов, проходящих насквозь без человека, примерно до половины. Наш ноль - это плохо, но не потому, что мы отстали от стандарта, где все разбирает машина. Такого стандарта нет, хотя на лендингах подрядчиков он встречается регулярно.
Точность распознавания и доля автоматической обработки - разные числа. Инструмент может показывать 95% точности извлечения и при этом давать 40% сквозной обработки. Первая цифра про то, как хорошо прочитано поле, вторая - про то, сколько документов дошло до конца без человека.
Лучшие цифры получают на типовых документах постоянных контрагентов. Это ровно тот путь, который мы наметили дальше.
Что не получилось
Разбор документов через ИИ не пошел в работу. Главный промах проекта, ему отведена целая часть выше. Первый ручной перенос остался ручным.
Мы не замерили время на отгрузку целиком. Замерен один контур - подготовка документов, 1 час против 15 минут. Остальные шесть до перестройки никто не хронометрировал, а задним числом это не восстановить. Подставлять оценку вместо замера не стану: "экономит до 70% времени" в кейсах пишут все, и ровно поэтому этому никто не верит.
Чек-лист контроля этапов построен и не взят в работу. И это обиднее остального, потому что его попросил сам клиент: чтобы по каждой операции ставилась галочка, а незакрытая поставка горела красным. Мы сделали: вкладка готова, 89 блоков, формулы настроены. Ни в один блок не введен номер инвойса. То есть вкладка исправно показывает 89 сообщений о том, что данных нет)
Инструмент есть, привычки им пользоваться нет. Это второй контур в кейсе, который построен и не используется: разбор документов не пошел по внешней причине, качеству входа, а этот - по внутренней, никто не сделал его частью ежедневного порядка.
Что происходит сейчас
Система работает каждый день. Документы по отгрузке собираются командой меню, комплект по каждой отгрузке лежит по ссылке из строки, график вывозов готов вечером в четверг, склад выбирается по записанному алгоритму. Данные из документов поставщиков пока заносятся руками.
Ближайшие шаги: замерить время на отгрузку целиком, зайти с разбором документов к постоянным поставщикам с типовыми формами, завести в работу чек-лист этапов и довести демо портала до работающей версии с отчетами по срокам внутри.
Что можно перенести в другие процессы
Замените контейнерную логистику на любой процесс, где человек переносит данные из входящих документов в свою таблицу: первичку в бухгалтерии, заказы, снабжение, страхование. Все описанное работает так же.
- Прежде чем автоматизировать таблицу, посмотрите, в каком она формате. Загруженный на Google Диск файл Excel не дает подключить ни одного скрипта, пока его не перевести в Google-таблицу.
- Считайте не листы и не формулы, а контуры процесса. Вопрос "сколько контуров описано из тех, что реально выполняются" отвечает на все сразу.
- Ищите в инструкции фразы вида "пока не научились определять". Это самое ценное место документа: там лежит знание, которое есть у человека и которого нет у компании.
- Знание, которое человек не может сформулировать, вытаскивается через конкретные случаи и вопрос "а как ты понимаешь, что это тот случай". Особенно через случаи, где все поехало не туда.
- Датированные копии листов внутри книги - признак того, что нет версий, а не того, что человек неаккуратный.
- Справочник с дублями хуже, чем отсутствие справочника: он создает ощущение защиты от разнобоя, не защищая от него.
- Автоматизируется в первую очередь то, чей вход вы контролируете. Документы, которые собираются из ваших данных, уходят в автоматику легко, документы из чужих рук - тяжело.
- Прежде чем считать выгоду от распознавания документов, посмотрите на сами документы. Если дата в них написана словами, а вес приходит вместе с единицей измерения, распознавание упрется во вход, а не в модель.
- Между ИИ и рабочими данными ставьте человека с явной приемкой. Она окупается, пока проверить быстрее, чем ввести.
- Спрашивайте не "что построено", а "чем пользуются".
- Правило, которое должно выполняться при решении, пишите в шаблон письма, а не в отдельный документ.
- Прежде чем спорить о цифре, проверьте, на какой вопрос она отвечает. Если результат выглядит диким, ошибка скорее в постановке вопроса, чем в вычислении.
- Автоматизируйте перенос, а не решение. Места, где значение приходит извне или зависит от суждения человека, оставляйте человеку осознанно.

