ГАЙД. Как быстро подготовить клиентскую базу из 18.000 номеров для автообзвона с помощью нейросети
Отличный пример работы с большим объемом данных и автоматизации рутинных процессов. Сейчас слишком рано говорить о том что нейросети заменят людей, я вижу ситуацию наоборот что они создали новые вакансии AI специалистов.
Часто наш сервис воспринимают как секретарей и консъержей, но это совершенно не так, пул наших компетенций значительно выше и вот этот кейс тому наглядный пример, способностей и возможностей.
Итак, в чем суть
Задача: Заказчик периодически запускает массовый автобзвон по телефонным номерам, базу эту он покупает в Интернете. Сервис который делает автопрозвон требует XLS файл в котором будут номера телефонов идущих списком. Нас попросили подготовить ее к рассылке, отформатировать так чтобы сервис по автообзвону получил в нужном ему формате базу номеров отформатированные списком.
Проблема: Все эти номера в базе указаны как попало, данные разбросаны по документу, в одной ячейке может быть сразу 10 номеров, вот скриншот. Кликните на картинку чтобы увеличить.
- В одной ячейке находятся сразу по 2-8 номеров через запятую
- Несколько столбцов с номерами на странице
- В таблице есть дубли номеров, которые надо убрать
- Нужно удалить номера 8800, 495, 499 и прочие городские номера
- Очистить номера от лишних символов + ( ) тире и пробелов
- В таблице полно пустых строк и слитых ячеек их там около тысячи
СПОЙЛЕР: В итоге должен получится чистый список номеров вот такого вида, что мы собственно и сделали.
Но дъявол как всегда кроется в деталях, обрабатывать такой объем информации в ручную ушло бы минимум пару дней и масса сил. Ниже покажу как это сделать за час.
Сложность задачи: Почти 15 тысяч строк, сидеть делать в такой таблице что-то руками это больно, долго и не эффективно, нужна автоматизация. К сожалению просто загрузить в нейросетку и сделать красиво одной кнопкой не получится потому что:
- Нейросеть (ChatGPT, Claude, WriteSonic) при таком объеме теряет контекст и просто останавливается где-то фиг пойми в каком месте документа. Сидеть и искать за ними косяки не хочется
- Почти все сетки начинают придумывать сами несуществующие номера телефонов, хотя никто об этом их в промпте не просил, могут легко потерять часть номеров. Поэтому мы решили чем меньше контента даем нейросети тем меньше косяков за ней надо будет исправлять.
- Также они не умеют работать с файлом по ссылке а если загружать файлом то сбиваютсяв процессе работы так как в документе есть слитые ячейки и вообще формат документа максимально мусорный и не предсказуемый, почему-то нейросети не любят сложные документы
- Объем файла большой, даже при заявленных 64 тысячах символах они его тупо не вывозят. Находить косяки после работы нейросети в документе в котором 15 тысяч строк это крайне неприятное и не прикольное занятие.
Проще говоря простого и быстрого решения к сожалению мы не нашли, поэтому вот как мы поступили.
ШАГ 1 - предварительная чистка базы
Удаляем из документа лишние столбцы, чтобы они просто не мешались. Оставим только столбец "C" т.к. в других столбцах были городские номера, поэтому их спокойно сносим. Получилось вот так
ШАГ 2 - удаление лишних символов
Теперь функцией "Поиск и замена" на всем листе пишем что найти, в данном случае открывающая скобка заменить на пустоту (удаление) и выбрать "Этот лист" тк. оригинал мы заранее оставили на первом листе, чтобы если что вернуться. Эта функция уберет все найденные открывающие скобки. Таким же методом чистим закрывающую скобку, знак "+", тире и пробел.
Следующая проблема, это наличие + в номере телефона, Google Sheet начинает складывать значения и поэтому появляется такая ошибка, давайте исправим это.
После того как мы удалили знак плюса ошибка пропадет, цифры станут цифрами а не формулой, можно работать дальше. Документ будет выглядеть вот так:
Результат: Отформатированные номера телефонов, без лишних символов, но остаются еще несколько серьезных проблем а именно
- Пустые и цветные строки, которых около тысячи и в ручную сидеть их тыркать и удалять не вариант вообще
- Номера которые записаны в одну ячейку через запятую, наверное сказав что на форматирование уйдет пару дней я был очень оптимистичен, в ручную это неделя миниум)
ШАГ 3 - Скрипт для автоматического удаления пустых строк
Идем в любую нейросеть и пишем промт удаления пустых строк через AppScript который есть в Google Sheet. Мы используем российский сервис для работы с Claude, ChatGPT
Промпт простейший и сработал с первого раза, звучит он так:
Как мне массово в google sheet удалить пустые цветные строки?
В итоге нейросеть выдала такой код и инструкцию по его установке
Идем в AppSctript и вставляем наш код
Далее уже в таблице надо импортировать макрос
Наблюдаем как в режиме реального времени строки удаляются автоматически, кайфуем и пьем кофеек. Для 15 тысяч строк ушло примерно около 3х минут времени на обработку всего документа
Кстати скрипт скорее всего у вас сразу не запустится, нужно выдать ему разрешение, во всплывающих окнах везде жмем Allow или "Разрешить", всего будет 3-4 шага (запроса). И у нас должно получится вот это
И у нас остается еще пару шагов и самое сложное разделить номера по строкам из ячейки. Для разделения снова идем писать скрипт в нейросеть
ШАГ 4 - пишем скрипт для разделения номеров
Теперь нам нужно проверить каждую строку и если там много номеров удалить разделитель в виде запятой и сделать перенос строки после каждого номера.
Напиши скрипт для google sheet который проверяет каждую строку на вкладке документа и если находит в ячейке номера телефонов идущих списком через запятую, примерно вот так: 7988243****,7901491****,7918095****,7918160****,7988132**** то запятую убирает и вместо нее делает перенос строки, так чтобы каждый номер был на отдельной строке. Должно получиться вот так
7988243****
7901491****
7918095****
7918160****
7988132****
Номера могут быть разные и их может быть любое количество в ячейке
Получаем вот такой вот код. Он проверен и работает отлично. Делаем все то же самое что и по аналогии с кодом выше, заходим в AppScript создаем файл и добавляем код, жмем иконку сохранения.
Также испортируем скрипт через меню как было описано выше и запускаем его, после чего смотрим что у нас в итоге получилось
Отлично, теперь все номера разделены переносами строк, запятые убраны, давайте теперь отцентрируем текст
Теперь остается только пару финальных штрихов, а именно
- Вытащить номера из ячейки и вставить так чтобы каждый номер был в своей отдельной ячейке а не строке. Сейчас например в ячейке 32 они размещены переносом строк, для сервиса обзвона так не пройдет тк он будет обращаться к каждой ячейке и видеть там больше 1 номера плюс переносы строк, ему это явно не понравится
- Удалить дубликаты, чтобы не тратить лишние деньги на повторные звонки
ШАГ 5 - Делаем каждый номер в свою ячейку и удаляем дубликаты номеров
Это делается максимально просто, копируем весь столбец и вставляем все номера в любой сервис чистки дубликатов, мы использовали сервис ibox.tools но таких аналогов масса
Далее копируем все номера и вставляем обратно в таблицу, заранее создав отдельный лист с новым названием, а также заранее добавим 5000 пустых строк ниже, до 20 тысяч, тк теперь строк стало больше, в итоге у нас получился готовый лист с чистыми номерами.
Готово! Задача, которую вы делали бы всем отделом маркетинга неделю мы сделали всего за час. Этот файл был загружен в zvonobot заказчиком и в тот же день, была запущена рассылка - автообзвон роботом по базе.
Ниже оставляю полезные ссылки, которые вам пригодятся.
1. Нейросеть которую мы используем: ask.chadgpt.ru
2. Сервис удаления дубликатов ibox.tools
3. Где можно купить базу данных, которую мы чистили
Если вы ищите помощника для аналогичных или других задач, напишите нам в 👉 телеграм и расскажите что нужно сделать
Кстати мы запускаем обучение для ассистентов, если вы хотите научиться работать с нейросетями, выстраивать коммуникацию с предпринимателями и зарабатывать на этом, также пишите в телеграм за подробностями.
И на последок, наши кейсы можно найти у нас на канале
Наш сайт teamassist.ru