Усі уроки

Курс

ШІ 11 класу: генеративний ШІ та інженерія агентів

Збирай застосунки на LLM із промптами, API, пошуком і інструментами, потім перевіряй їх на безпеку.

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

Як користуватися цими уроками

  • Почни з уроку, де стоїть Зроби це. Рядок під назвою зроби сам, тоді йди далі.
  • Спочатку Ігри. Потім Перевірка. 8 із 10 правильно для заліку. Аркуші на папері. Відповіді внизу.
  • Кожен урок спирається на попередній. Для кожного застосунку тримай набір тестів і запускай його після кожної зміни.
  • Уроки з кодом використовують Python. Користуйся лише сервісами ШІ, які схвалив учитель, не клади ключі API в код, постав ліміт витрат і ніколи не надсилай особисті дані в модель.

У кожному уроці є ігри, перевірка та аркуші.

0 із 36

Основи LLM

  1. 1Токени і словникРахуй токени і поясни, чому вони важливі.
    • Розбий текст на токени справжнім токенізатором.
    • Порівняй число токенів у різних мовах.
    • Зв'яжи токени з вартістю і лімітом контексту.
  2. 2ЕмбедингиПорівнюй тексти за схожістю ембедингів.
    • Отримай ембединги від моделі.
    • Порахуй косинусну схожість.
    • Ранжуй речення за змістом, а не за спільними словами.
  3. 3Як LLM генеруєПоясни, як LLM генерує: вибірка, температура і вікна контексту.
    • Поясни передбачення наступного токена.
    • Змінюй температуру і порівнюй відповіді.
    • Покажи, що буває, коли текст виходить за вікно контексту.
  4. 4Попереднє навчання і налаштуванняВідрізняй попереднє навчання, тонке налаштування і налаштування на інструкції.
    • Скажи, які дані використовує кожен крок.
    • Поясни зворотний зв'язок від людей.
    • Скажи, чому в моделі є межа знань.

Інженерія промптів

  1. 5Структуровані промптиНапиши структурований промпт із роллю, завданням, правилами і форматом.
    • Відділи інструкції від вхідних даних.
    • Задай формат відповіді.
    • Порівняй структурований і неструктурований промпт.
  2. 6Кілька прикладівПокращ відповідь кількома прикладами.
    • Додай два або три приклади.
    • Обери приклади, які покривають крайні випадки.
    • Виміряй зміну на наборі тестів.
  3. 7ОбмеженняОбмеж довжину, тон і формат.
    • Задай ліміт довжини і рівня читання.
    • Скажи моделі, що робити, якщо вона не знає.
    • Перевір відповіді за кожним обмеженням.
  4. 8Тести промптівНапиши тести і порівняй версії промпта.
    • Напиши двадцять тестових входів з очікуваними результатами.
    • Оціни дві версії промпта.
    • Залиш версію, яка перемогла.

Програмування за допомогою ШІ

  1. 9Генерація кодуЗгенеруй робочий код за ясною специфікацією.
    • Напиши специфікацію: входи, виходи і приклади.
    • Згенеруй за нею код.
    • Запусти його на прикладах.
  2. 10Перевірка коду ШІЗнайди помилки і ризики в коді, написаному ШІ.
    • Перевір крайні випадки і обробку помилок.
    • Поміть вигадані функції і бібліотеки.
    • Поміть небезпечний код, наприклад секрети у вихідному коді.
  3. 11Спочатку тестиНапиши тести, які код ШІ має пройти.
    • Напиши тести на pytest.
    • Нехай ШІ напише код, щоб пройти їх.
    • Додай тест на кожну знайдену помилку.
  4. 12Виправлення з ШІВиправ помилку з ШІ і поясни виправлення.
    • Зроби маленький приклад, який показує помилку.
    • Запитай у ШІ причини, а не лише виправлення.
    • Поясни, чому виправлення працює.

API для LLM

  1. 13Перший виклик APIНадішли запит чату через API і прочитай відповідь.
    • Завантаж ключ API з оточення.
    • Надішли запит через SDK.
    • Прочитай відповідь і витрату токенів.
  2. 14Системні та користувацькі повідомленняВикористовуй системні та користувацькі повідомлення.
    • Поклади правила в системне повідомлення.
    • Поклади введення користувача в користувацькі повідомлення.
    • Зберігай історію розмови.
  3. 15Структурований вивідОтримай структурований JSON, який збігається зі схемою.
    • Опиши схему JSON.
    • Запитай вивід, який їй відповідає.
    • Перевір вивід і повтори в разі помилки.
  4. 16Чат-ботЗбери чат-бота з історією і лімітом витрат.
    • Зберігай історію розмови.
    • Обрізай старі повідомлення, щоб уміститися в контекст.
    • Зупиняйся, коли досягнуто ліміт витрат.

Генерація з пошуком

  1. 17Навіщо пошукПоясни, чому пошук з опорою на джерела зменшує вигадані відповіді.
    • Запитай модель про документ, якого вона не бачила.
    • Додай документ і запитай знову.
    • Намалюй конвеєр: спочатку пошук, потім генерація.
  2. 18ФрагментиРозбий документи на фрагменти.
    • Ріж за розміром із перекриттям.
    • Ріж за заголовками.
    • Зберігай джерело і сторінку біля кожного фрагмента.
  3. 19Векторний пошукВекторним пошуком знайди фрагменти, найближчі до питання.
    • Порахуй ембединги фрагментів і збережи їх.
    • Дістань найкращі збіги для питання.
    • Виміряй, як часто знаходиться потрібний фрагмент.
  4. 20Питання за документамиЗбери застосунок, який відповідає за документами і вказує джерела.
    • Поклади знайдені фрагменти в промпт.
    • Вимагай посилання на джерело для кожного твердження.
    • Перевір, що посилання ведуть на справжні місця в тексті.

Інструменти ШІ та агенти

  1. 21Виклик інструментівДай моделі викликати інструмент-функцію.
    • Опиши інструмент схемою.
    • Запусти інструмент, якого просить модель.
    • Надішли результат назад моделі.
  2. 22ПлануванняСклади план і розбий завдання на кроки, які модель може виконати.
    • Спочатку попроси в моделі план.
    • Виконуй план по одному кроку.
    • Перевіряй кожен крок, перш ніж іти далі.
  3. 23Стан і пам'ятьВеди стан і пам'ять того, що агент уже зробив.
    • Зберігай кожен крок і його результат.
    • Стискай довгі історії в короткий переказ.
    • Виріши, що агенту час забути.
  4. 24Керований агентЗбери агента з обмеженими інструментами і правилом зупинки.
    • Дозволь лише безпечні інструменти лише для читання.
    • Обмеж кількість кроків.
    • Запитай людину перед будь-якою дією, яка щось змінює.

Мультимодальний генеративний ШІ

  1. 25Генерація зображеньПоясни, як дифузійні моделі генерують зображення.
    • Поясни додавання і видалення шуму.
    • Поясни, як текст спрямовує зображення.
    • Обговори згоду і авторське право для згенерованих зображень.
  2. 26Зір і моваСтав моделі питання про зображення: зір і мова.
    • Надішли зображення разом із питанням.
    • Отримай структурований опис.
    • Знайди деталь, у якій модель помиляється.
  3. 27МовленняПеретворюй мовлення на текст і текст на мовлення.
    • Розшифруй короткий запис.
    • Виміряй частку помилок у словах.
    • Згенеруй мовлення і познач, що його зробив ШІ.
  4. 28Мультимодальний прототипЗбери мультимодальний прототип із двома видами введення.
    • Обери два входи, наприклад голос і зображення.
    • З'єднай їх в одному застосунку.
    • Перевір його з п'ятьма користувачами.

Надійність і безпека

  1. 29ГалюцинаціїЗнаходи галюцинації: відповіді, яких джерела не підтверджують.
    • Перевір кожне твердження за джерелами.
    • Другим викликом моделі позначай непідтверджені твердження.
    • Виміряй, як часто відповіді повністю підтверджені.
  2. 30Ін'єкція промптаЗахисти застосунок від ін'єкції промпта.
    • Напиши атаки, сховані у введенні користувача і в документах.
    • Відділи довірені інструкції від недовіреного тексту.
    • Обмеж, до яких інструментів може дотягнутися атака.
  3. 31ОцінюванняОцінюй відповіді за критеріями і наборами тестів.
    • Напиши шкалу оцінювання.
    • Оцінюй вручну і за допомогою моделі.
    • Перевір, як часто оцінки збігаються.
  4. 32Набір тестівЗбери автоматичний набір тестів для застосунку на LLM.
    • Покрий точність, формат, безпеку і вартість.
    • Запускай його однією командою.
    • Провалюй збірку, коли оцінки падають.

Студія продукту на ШІ

  1. 33Специфікація продуктуОпиши користувачів, функції і міри успіху.
    • Обери набір схвалених дослідницьких документів.
    • Опиши користувачів і їхні питання.
    • Задай цілі щодо точності, посилань і вартості.
  2. 34Збірка конвеєраЗбери конвеєр: пошук, відповіді і посилання на джерела.
    • Проіндексуй документи.
    • Відповідай із посиланнями на джерела.
    • Запусти набір тестів.
  3. 35Сказати «я не знаю»Змусь застосунок сказати «я не знаю», коли доказів немає.
    • Помічай, коли пошук не знаходить нічого корисного.
    • Відповідай «У джерелах цього немає» замість здогадки.
    • Перевір питаннями, на які документи не відповідають.
  4. 36Дослідницький помічник на ШІВипусти і представ дослідницького помічника з опорою на джерела.
    • Розгорни застосунок для свого класу.
    • Покажи оцінки точності, опори на джерела, безпеки і вартості.
    • Поясни його межі.