Skip to main content

Вигадані залежності в коді (Hallucinated Packages)(Вигадані бібліотеки в ШІ-коді: прихована загроза неіснуючих npm-пакетів)

Небезпечний різновид нейромережевих галюцинацій у програмуванні. Модель вигадує правдоподібні, але неіснуючі в реальності бібліотеки та npm/PyPI пакети, створюючи критичні дірки в безпеці (Slopsquatting).

1. Огляд концепції та призначення

Уявіть ситуацію: ви попросили чат-бот додати красиву інтерактивну анімацію феєрверків на ваш сайт. Модель з радістю генерує код і пише в першому ж рядку:

import { triggerConfettiExplosion } from "next-magic-fireworks";

Ви копіюєте код у проект, запускаєте термінал, вводите npm install next-magic-fireworks, а консоль видає червону помилку: 404 Not Found. Такого пакету ніколи не існувало в природі!

Вигадані залежності (Hallucinated Dependencies) — це одна з найпідступніших пасток генеративного програмування. Модель настільки прагне догодити користувачеві, що вигадує ідеальні інструменти просто з голови.

Ментальна модель: головний урок кібергігієни: ніколи не встановлювати пакети наосліп без швидкої перевірки.

2. Ментальна модель загрози Slopsquatting

┌─────────────────────────────────────────────────────────────┐
│                 ЯК ПРАЦЮЄ ПАСТКА НЕІСНУЮЧОГО ПАКЕТУ         │
├─────────────────────────────────────────────────────────────┤
│ 1. ШІ галюцинує гарну назву:                                │
│    `import { encryptData } from "fast-crypto-tools";`       │
├─────────────────────────────────────────────────────────────┤
│ 2. Розробник-новачок сліпо запускає в терміналі:            │
│    $ npm install fast-crypto-tools                          │
├─────────────────────────────────────────────────────────────┤
│ 3. Хакерська пастка (Slopsquatting):                         │
│    Хакери помітили, що ШІ часто радить цю назву, і заздалегідь│
│    завантажили в реєстр npm шкідливий вірус із таким ім'ям  │
├─────────────────────────────────────────────────────────────┤
│ 🚨 Катастрофа: викрадено SSH-ключі та паролі з комп'ютера   │
└─────────────────────────────────────────────────────────────┘

3. Чек-лист безпеки перед npm install

Перед тим як натиснути Enter на будь-яку команду встановлення нової бібліотеки від ШІ:

  1. Перевірте кількість зірочок та завантажень: Справжня, надійна бібліотека (наприклад, lucide-react, zod, framer-motion) має мільйони завантажень на тиждень та тисячі зірочок на GitHub.
  2. Запитайте саму модель про альтернативи: Напишіть у чаті: «Чи є [назва_пакету] офіційною популярною бібліотекою? Наведи 2 найбільш перевірені альтернативи з відкритим кодом».
  3. Попросіть написати рішення без сторонніх бібліотек: Дуже часто модель може написати просту функцію на 15 рядків чистого коду без необхідності тягнути в проект зайвий важкий пакет.

4. Золоте правило

Краще 10 рядків власного зрозумілого коду, ніж один невідомий пакет із трьома завантаженнями на місяць!

/ Часті запитанняSchema.org FAQPage

FAQ: Вигадані залежності в коді (Hallucinated Packages)

Модель оптимізована вирішити вашу задачу за будь-яку ціну. Якщо реальної готової бібліотеки з красивою назвою не існує, модель статистично конструює найбільш логічну назву (наприклад, `npm install react-auto-pdf-generator`) і впевнено пише такий рядок імпорту, наївно вірячи, що хтось уже написав цей пакет.
/ Внутрішня перелінковка
Всі терміни
Вайбкодинг & IDE

Маркери згенерованого коду (AI Code Smells)

Типові антипатерни та маркери синтетичного коду («код із запашком» від ШІ). Надлишкові очевидні коментарі, дублювання утиліт у кожному файлі, фейкові моки та безглузді блоки try-catch, які видають неперевірену генерацію.

Читати термін
Промптинг & RAG

Як відучити ШІ вигадувати (Промпти проти галюцинацій)

Набір перевірених інженерних технік та словесних конструкцій, які блокують генерацію вигаданих фактів, неіснуючих законів і хибних цитат. Змушує штучний інтелект спиратися суворо на надані джерела.

Читати термін
Вайбкодинг & IDE

ШІ як код-рев'юер (Пошук багів перед релізом)

Методика використання мовних моделей у ролі суворого старшого інженера для автоматичного аудиту програмного коду (Code Review). Знаходить приховані дірки в безпеці, витоки пам'яті та архітектурні баги до викатки програми.

Читати термін