Создание AI-модулей для редакций на PHP
Большинство людей думают, что ИИ в редакции — это одно большое окно чата. Это ошибка. Такая модель приводит к созданию функций, которыми люди пользуются один раз, а затем забывают о них.
У редакции есть десятки мелких, специфических потребностей. Вам нужны варианты заголовков. Вам нужны анонсы для соцсетей. Вам нужны SEO-заголовки. Вам нужна разметка сущностей. Каждая задача невелика, но у каждой свои правила.
Поработав с 200 новостными сайтами, я нашел правильный способ реализации. Не создавайте одну «AI-функцию». Создавайте реестр небольших специализированных рабочих процессов (workflows).
Вот как это сделать на PHP:
- Используйте задачи (tasks), а не промпты. Задача — это именованная единица с фиксированным контрактом. Она знает, что ей нужно и что она возвращает.
- Валидируйте вывод внутри задачи. Модели часто возвращают текст, когда вам нужен JSON. Если задача сама валидирует свой вывод, вы сможете повторить попытку или корректно обработать ошибку, не ломая работу редактора.
- Используйте роутер на основе уровней (tiers). Выполняйте простые задачи на дешевых моделях. Выполняйте юридические задачи или задачи по оценке рисков на премиальных моделях.
- Кэшируйте по задаче и входным данным. Если редактор дважды нажимает кнопку на одной и той же статье, вы не должны платить за второй вызов ИИ. Кэширование — ваш лучший способ контроля затрат.
- Оставляйте правила в коде, а «вкус» — в промптах. Не просите модель проверять, не превышает ли заголовок 70 символов. Используйте для этого PHP. Используйте модель, чтобы решить, хорош ли заголовок. Код управляет правилами. Модели управляют суждениями.
Группируйте задачи, чтобы поддерживать порядок:
• Headlines: SEO-заголовки, анонсы для соцсетей, push-уведомления. • Structure: резюме, ключевые моменты, предложения «читать далее». • Classification: предложения категорий, извлечение тегов. • Media: alt-тексты, подписи, подсказки по кадрированию. • Quality: проверка тональности, флаги рисков, фильтры ненормативной лексики.
Цель — операционная надежность. Если поставщик ИИ выйдет из строя в разгар новостного дня, вы должны просто изменить конфигурационный файл, а не переписывать код.
Два финальных правила для успеха:
- Предложения — это черновики. Никогда не позволяйте ИИ писать напрямую в опубликованное поле. Человек всегда должен проверять и одобрять результат.
- Работайте в фоновом режиме. Если задача занимает более одной секунды, запускайте ее как асинхронную задачу. Не заставляйте редакторов ждать экрана загрузки.
Сначала стройте архитектуру. Модель вторична.
