очереди.

chunk() пропустил половину рассылки

Раз в минуту у нас просыпаются четыре консольные команды. Каждая проходит по таблице чатов — это сотни тысяч строк и около трёхсот тысяч живых пользователей в месяц — и решает, кому бот напишет первым: у кого обновились суточные лимиты, кто начал разговор и замолчал на третьей минуте, у кого закончилась подписка, кому пора показать промо.

продолжить чтение

Что под капотом у ИИ-агента для отдела продаж: архитектура, код и грабли

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

продолжить чтение