Експертиза · Автоматичний контент
Потік, який сам шукає теми дня, пише статтю, перекладає її дев'ятнадцятьма мовами й публікує — але лише після того, як проходить через ворота перевірки, які, коли не можуть перевірити, нічого не публікують.
Двигун написаний повністю і лежить саме в репозиторії цього сайту: вісім етапів, 1.706 рядків, системний таймер, що щодня запускається о 00:30 UTC. Важлива не генерація, а ворота: п’ять локальних перевірок, десять заборонених виразів і додаткова перевірка, яка шукає імена клієнтів без згоди, вигадані цифри та нагороди, яких у нас немає. Якщо ворота не можуть запуститися, публікації не буде.
Вже збудовано«delivered», тому що робота існує як файли, які ви можете відкрити, а не як опис: `scripts/content-engine/` у репозиторії megapromoting.com, 17 файлів, 1.706 рядків TypeScript, systemd unit із таймером, вісім етапів, пов’язаних між собою, і журнали запусків. Із застереженням, яке говоримо ми, а не дізнаєтеся ви: **єдиний повний запуск у журналах не опублікував жодної статті.** Gate зупинив усі три — два, бо перевірка взагалі не змогла запуститися, третій — через відсутнє поле в заголовку. `publish` залишився порожнім, IndexNow отримав нуль адрес. Запуск був локальним, на робочій станції, і тривав дві з половиною години, тобто понад ліміт у 60 хвилин, заданий у systemd unit — отже, на сервері його було б зупинено. Ми не можемо підтвердити ззовні, що двигун сьогодні працює на сервері, і не стверджуємо цього.
Автоматизація, яка сама пише й публікує, — це місце, де найпростіше пообіцяти те, чого не можна. Модель пише тисячу переконливих слів про будь-що, зокрема про речі, які не сталися, і робить це так само плавно. Якщо між моделлю та кнопкою публікації нічого не стоїть, ви побудували машину для викладання помилок в інтернет, двадцятьма мовами, щоночі. Уся робота в тому, що стоїть між ними.
Наш потік має вісім етапів. Збирає теми з відкритих джерел, дає їм оцінку від 0 до 100 за доречністю, відкидає все, що нижче 50, обирає перші N за правилом різноманітності, щоб не вийшло десять статей про одне й те саме, пише статтю румунською, перекладає її дев'ятнадцятьма мовами, пропускає через ворота і лише потім публікує. Кожен етап записує свою вартість і результат у журнал, щоб запуск можна було відновити після.
Ворота мають два шари. Перший — локальний і нічого не коштує: заголовок має існувати й містити title, description і keywords; текст має перевищувати 1.200 слів; має бути щонайменше три підзаголовки, щонайменше три внутрішні посилання і розділ із запитаннями щонайменше з трьома парами; і він не має права містити жодного з десяти маркетингових виразів, які ми внесли до чорного списку. Другий шар — це модель, яка шукає інше: назву клієнта без доказу згоди, вигадані статистики, хибні твердження про те, що можемо ми, і нагороди, яких у нас немає — перелік реальних записано у перевірці, а все інше позначається.
У ланцюгу є людське схвалення, і ми кажемо це як аргумент, а не як виправдання. Статті, що не проходять жорсткі перевірки, відкидаються, а не публікуються. Ті, що проходять жорстко, але отримують позначки від другої перевірки, зберігаються з відмітками, щоб їх переглянув людина. А якщо перевірка не може запуститися — наприклад, тому що сервіс моделей не відповідає — стаття вважається такою, що не пройшла. Fail-closed, не fail-open. Саме так і сталося під час єдиного повного запуску в журналах, і тому нічого не було опубліковано.