Головна / Статті

LLM проти AI Agent: Відповідь на запитання після шести додаткових запитань

Штучний інтерв’ю з інженером ШІ охоплює від того, що робить LLM, до викликів інструментів, меж виконання, циклів агентів, паралельних викликів та забезпечення безпеки повернення коштів у системі підтримки.

Видавець: REACTAPP.TOP3 хв читання748 слів

Джерела: Can You Answer This ₹40 LPA AI Engineer Interview Question? LLM vs AI Agent

Якщо запитати кандидата на посаду інженера з ШІ, що відрізняє LLM від агента ШІ, типовою першою відповіддю буде те, що LLM генерує текст, тоді як агент виконує дії. Інтерв’юер рідко киває та переходить далі. Наступні запитання показують, чи працював кандидат із реальними системами чи просто запам’ятав визначення. Ось як зазвичай розвивається ця розмова, по одному запитанню за раз.

Що робить LLM самостійно

Модель мови генерує результат на основі контексту, який їй надано. Вона може пояснити помилку, узагальнити записи, вставлені у запит, або надати структуровані дані. Вона не може отримати доступ до приватної бази даних лише через прохання хтось. Тож коли інтерв’юер запитує, як асистент підтримки ШІ може перевірити живу транзакцію, відповіддю є інструменти та код програми.

Як використовується інструмент

Уявіть собі повідомлення клієнта: «Моя оплата пройшла успішно, але замовлення не створено». Бекенд надає кілька вузькоспрямованих функцій:

getPaymentStatus(transactionId)
getOrderStatus(transactionId)
createSupportTicket(details)

Додаток надсилає їхні імена та схеми параметрів разом із розмовою, і модель може відповісти щось на кшталт цього:

{
  name: "getPaymentStatus",
  arguments: { transactionId: "txn_123" }
}

Наступне запитання інтерв’юера є пасткою: чи саме модель звернулася до сервісу оплати? Ні. Вона створила структурований запит на використання інструменту. Ще нічого не було виконано.

Хто насправді здійснює виклик

Це робить бекенд. Справжній процес складається з шести кроків:

  1. Додаток надсилає запит разом із визначеннями інструментів.
  2. Модель повертає назву інструменту та аргументи.
  3. Бекенд перевіряє вхідні дані та права користувача.
  4. Він виконує схвалену функцію.
  5. Результат повертається до моделі як свіжий контекст.
  6. Модель просить інший інструмент або надає свою остаточну відповідь.

Коротко кажучи, LLM пропонує, а додаток відповідає за виконання, облікові дані та контроль доступу. Це твердження варто мати під рукою, адже саме цей момент постійно досліджують кваліфіковані інтерв’юери.

Що робить це агентом

На дошці записки рівняння є коротким:

AI Agent = LLM + Instructions + Tools + State + Execution Loop

Агент спостерігає за своїм станом, обирає крок, отримує результат та знову оцінює ситуацію, що створює цикл:

Observe → Decide → Request Tool → Execute → Observe Result → Continue or Stop

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

Робота кількох інструментів одночасно

Можливість одночасного виконання запитів залежить від залежностей даних. Для статусу оплати та статусу замовлення потрібен лише ідентифікатор транзакції, тому їх можна отримати паралельно:

const [payment, order] = await Promise.all([
  getPaymentStatus(transactionId),
  getOrderStatus(transactionId)
]);

Тепер уявімо, що відповідь про оплату містить посилання на шлюз, яке потрібне для наступного виклику. Друга операція мусить чекати на першу:

const payment = await getPaymentStatus(transactionId);
const gateway = await getGatewayDetails(payment.gatewayRef);

Якісна відповідь свідчить про те, що кандидат перевіряє, чи є виклики незалежними, перш ніж паралелізувати їх.

Дозволити агенту здійснити повернення грошей

Правильною відповіддю є те, що сама лише заява моделі недостатня. Бекенд мусить перевірити клієнта, який є власником транзакції, чи підходить вона для повернення та які є обмеження. Для операції запису потрібен ключ ідемпотентності та журнал аудиту, а великі суми повернення можуть потребувати затвердження людиною. Системний підказка, яка говорить "повернення лише за дійсними транзакціями", є керівництвом для моделі. Це не вважається авторизацією.

Як інтерв’юер оцінює це

Перша відповідь — «LLM генерує відповіді, а ейджент виконує дії» — була занадто поверхневою для посади вищого рівня. У ній не було зазначено, хто виконує дії, у кого є автентифікаційні дані чи що запобігає небезпечним операціям. Після додаткових запитань кандидат дійшов більш переконливої відповіді, але щоб з самого початку потрапити на рівень вищого керівництва, перша відповідь мала б одразу згадати межі застосунку та цикл роботи ейджента.