С1 · Шпаргалка: промпт, перевірка, токени, merge request

Усе, що треба під рукою для завдання першого заняття: свій варіант, промпти для QA і BA, токен-звіт і здача через merge request у браузері.

Перед початком

gitlab.com/koldovsky/ai-qa-ba-c1

Шаблон звіту в репозиторії: templates/c1-report.md

1. Свій варіант

У кожного — своя функція сервісу «Пакунок». Демо-варіант (зміна адреси доставки) показує тренер, він не зараховується.

Де / що: Перша літера прізвища українською → номер варіанту

А Б → 01
В Г Ґ → 02
Д Е Є Ж З → 03
И І Ї Й К → 04
Л М → 05
Н О П → 06
Р → 07
С → 08
Т У Ф Х → 09
Ц Ч Ш Щ Ю Я → 10

Очікуваний результат: Ви знаєте свій номер. У README репозиторію, таблиця «Ваш варіант», — посилання на файли варіанту.

Якщо не працює

Прізвище в списку курсу записане інакше, ніж ви звикли? Беріть літеру зі списку учасників курсу. Сумніваєтеся — напишіть у чат когорти.

Де / що: Файл вашого варіанту в репозиторії

QA → materials/variants/NN-…/qa-spec.md
BA → materials/variants/NN-…/ba-request.md

Очікуваний результат: Відкрився документ зі своєю функцією: у QA — правила П1, П2, … і тексти інтерфейсу; у BA — лист від замовника.

Якщо не працює

Щоб вставити документ у чат, відкрийте файл на gitlab.com і натисніть Copy file contents над текстом.

Навіщо варіанти

Тренер виконує завдання наживо на демо-варіанті. Ваш варіант — інша функція з іншими пастками, тож робота буде вашою. Робота за демо-варіантом або чужим варіантом не зараховується.

2. Структурований промпт

П'ять частин: роль · вхідні дані · задача · критерії приймання · формат відповіді. Замініть текст у кутових дужках і вставте повний текст документа свого варіанту між рядками ===.

Де / що: QA · будь-який AI-чат або агент, нова розмова

Роль: ти — досвідчений QA-інженер, який готує перевірки нової функції мобільного застосунку перед тестуванням.

Вхідні дані: специфікація функції «<назва функції вашого варіанту>» — нижче, між рядками ===.

Задача: склади чек-лист перевірок цієї функції — позитивні, негативні та межові сценарії.

Критерії приймання:
- кожна перевірка посилається на пункт специфікації (П1, П2, … або «Тексти інтерфейсу»);
- не додавай правил, яких немає в специфікації; якщо для перевірки бракує даних — винеси це в окремий список «Питання до специфікації»;
- щонайменше 15 перевірок;
- окремо познач суперечності в самій специфікації, якщо вони є.

Формат відповіді: таблиця «№ | Перевірка | Тип (позитивна / негативна / межова) | Пункт специфікації», потім список «Суперечності в специфікації» і список «Питання до специфікації».

===
<повний текст qa-spec.md вашого варіанту>
===

Очікуваний результат: Таблиця перевірок із посиланнями на пункти П…, окремі списки суперечностей і питань. Це ще не результат — його треба перевірити (розділ 3).

Якщо не працює

AI відповів без таблиці чи без посилань на пункти — напишіть у тій самій розмові: «Переформатуй за критеріями приймання вище». Вставте в звіт і першу, і виправлену відповідь.

Де / що: BA · будь-який AI-чат або агент, нова розмова

Роль: ти — досвідчений бізнес-аналітик, який готує запит бізнесу до обговорення з командою розробки.

Вхідні дані: лист від <хто автор листа у вашому варіанті> — нижче, між рядками ===.

Задача: зроби структурований розбір цього запиту.

Критерії приймання:
- спирайся лише на текст листа; якщо чогось у листі немає — не вигадуй, а винеси це в уточнювальні питання;
- окремо познач суперечності в самому листі, з короткими цитатами;
- щонайменше п'ять уточнювальних питань до автора листа, кожне конкретне;
- познач, що з листа варто винести в окремий запит.

Формат відповіді: розділи «Мета і проблема», «Користувачі», «Основний сценарій», «В обсязі / Поза обсягом», «Суперечності в запиті», «Уточнювальні питання». Коротко, без вступу.

===
<повний текст ba-request.md вашого варіанту>
===

Очікуваний результат: Шість розділів, суперечності з цитатами з листа, щонайменше п'ять питань. Далі — перевірка за листом (розділ 3).

Якщо не працює

У розборі з'явилися точні ліміти, строки чи ціни, яких у листі немає? Це вигадка AI — саме такі пункти варто внести в перевірку з висновком «вигадано».

Де / що: L2 · окрема нова розмова, промпт «як вийде»

Напиши тест-кейси для цієї функції:

<повний текст qa-spec.md вашого варіанту>

Очікуваний результат: Відповідь без ваших критеріїв: порівняйте її зі структурованою — скільки корисних пунктів, що вигадано, скільки токенів.

Якщо не працює

Для BA: «Проаналізуй цей запит:» і текст листа. Кожен промпт — у новій розмові, щоб попередня відповідь не впливала на наступну.

Чому нова розмова для кожного прогону

Чат пам'ятає все, що було вище. Якщо запустити другий промпт у тій самій розмові, AI бачить і першу відповідь, і порівняння L2 чи L3 стане нечесним.

Чат з файлом чи вставлений текст

Обидва варіанти підходять. Якщо прикріплюєте файл, у промпті замість тексту між === напишіть «у прикріпленому файлі» і назвіть файл. У звіті вкажіть режим: чат, чат із файлом або агент.

3. Перевірка результату

Щонайменше три рядки. Для кожного — що каже AI, що насправді в документі (пункт або цитата) і один із чотирьох висновків.

Де / що: Розділ 4 звіту · таблиця перевірки

| # | Що каже AI | Що в матеріалі | Висновок |
|---|---|---|---|
| 1 | … | П…: «…» | вірно |
| 2 | … | у документі цього немає | вигадано |
| 3 | … | П… і П… суперечать одне одному | проблема в матеріалі |

Очікуваний результат: Кожен рядок посилається на конкретне місце в документі вашого варіанту.

Якщо не працює

Не знаєте, з чого почати? Візьміть з відповіді три пункти й знайдіть кожен у документі. Не знайшли — це кандидат у «вигадано».

Чотири висновки

вірно — AI правильно передав правило документа; вигадано — AI додав правило, число чи обмеження, яких немає в документі; пропущено — правило в документі є, а AI його не врахував; проблема в матеріалі — суперечність або неоднозначність у самому документі. Допишіть, чи помітив її AI.

Найкорисніший прийом

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

4. Токен-звіт

Числа для входу і виходу та звідки їх узято. Чат цифр не показує — тоді оцінка токенайзером.

Де / що: Claude Code · у тій самій сесії, після відповіді

/cost

Очікуваний результат: Вартість і токени сесії. Перепишіть цифри в розділ 5 і вкажіть «Claude Code, /cost».

Якщо не працює

Якщо ви на підписці, /cost може не показувати ціну — тоді запишіть токени і напишіть, що вартість невідома.

Де / що: Claude Code · що вже займає контекстне вікно

/context

Очікуваний результат: Розподіл вікна: системні інструкції, інструменти, ваші повідомлення.

Якщо не працює

Команда не обов'язкова для L1, але добре пояснює, чому вхід агента набагато більший за ваш промпт.

Де / що: Gemini CLI · у тій самій сесії

/stats

Очікуваний результат: Кількість запитів і токенів сесії.

Якщо не працює

Інший агент — пошукайте в його довідці команду статистики або вартості й назвіть її у звіті.

Де / що: Чат у браузері · оцінка токенайзером

https://platform.openai.com/tokenizer

Очікуваний результат: Вставте текст промпта разом із документом — отримаєте вхід; потім текст відповіді — вихід. У звіті: «оцінка, токенайзер OpenAI».

Якщо не працює

Різні моделі рахують токени трохи по-різному. Для навчання оцінки досить — головне, чесно написати, що це оцінка.

Чому в агента вхід більший

Агент надсилає моделі не лише ваш промпт, а й свої системні інструкції та опис інструментів. Тому навіть короткий промпт в агенті може коштувати десятки тисяч вхідних токенів. У демо це видно на реальних цифрах.

5. Здача: merge request у браузері

Git не потрібен. Порядок: акаунт і прихована пошта → Fork → шаблон → New file → Commit changes → Create merge request. Нижче — що саме вписати на кожному кроці.

Де / що: Крок 0 · один раз, до першого коміту: аватар → Edit profile → поле Commit email

Use a private email

Очікуваний результат: Після Update profile settings у комітах замість вашої пошти буде службова адреса …@users.noreply.gitlab.com. Ім'я, прізвище й username з профілю видно в merge request — можна вказати нейтральні.

Якщо не працює

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

Де / що: Крок 1 · сторінка проєкту → кнопка Fork угорі праворуч → namespace: ваш username → Fork project

https://gitlab.com/koldovsky/ai-qa-ba-c1

Очікуваний результат: Відкрилася ваша копія: угорі ваш-username / ai-qa-ba-c1 і позначка «Forked from koldovsky/ai-qa-ba-c1».

Якщо не працює

Форк уже є — не створюйте другий, просто відкрийте свою копію. Fork веде на сторінку входу — спершу увійдіть у свій акаунт gitlab.com.

Де / що: Крок 2 · у своїй копії відкрийте шаблон → Copy file contents

templates/c1-report.md

Очікуваний результат: Текст шаблону скопійовано в буфер обміну.

Якщо не працює

Кнопка Copy file contents — іконка над текстом файлу, поруч із Raw і Download.

Де / що: Крок 3 · головна сторінка копії → + поруч із назвою гілки → New file → поле назви файлу

submissions/ваш-username/c1.md

Очікуваний результат: Косі риски самі створили теки. Вставте шаблон і заповніть: прізвище та ім'я (як у списку курсу, прізвище першим), варіант, роль, промпт, відповідь, перевірку, токени, висновок.

Якщо не працює

Замініть «ваш-username» на свій username з gitlab.com — саме той, що в адресі вашої копії.

Де / що: Крок 4 · Commit changes → поле Commit message

С1: мій звіт

Очікуваний результат: У тому ж вікні оберіть Commit to a new branch.

Якщо не працює

Якщо закрили вікно — файл не збережено. Натисніть Commit changes ще раз.

Де / що: Крок 4 · Commit to a new branch → назва гілки; галочка Create a merge request for this change

c1

Очікуваний результат: Після Commit changes відкривається форма нового merge request.

Якщо не працює

Галочки не було і форма не відкрилася — у своїй копії: Merge requests → New merge request → source: гілка c1 → target: koldovsky/ai-qa-ba-c1, main.

Де / що: Крок 5 · форма merge request → поле Title

С1 · ваш-username · варіант NN

Очікуваний результат: Праворуч від стрілки — koldovsky/ai-qa-ba-c1 і гілка main. Опис — шаблон C1: впишіть прізвище та ім'я, пройдіть чек-лист. Create merge request.

Якщо не працює

Праворуч ваш власний проєкт? Натисніть Change branches і оберіть target project koldovsky/ai-qa-ba-c1, гілку main.

Як виправити після здачі

У своїй копії перемкніться на гілку c1, відкрийте submissions/ваш-username/c1.md → Edit → Commit changes у ту саму гілку c1. Merge request оновиться сам. Новий merge request не потрібен.

Хто це бачить

Репозиторій і merge request публічні. Відгук AI-рев'юера з'явиться в коментарях до merge request, без балів — бали йдуть у рейтинг курсу. Не згодні з відгуком — відповідайте коментарем, тренер розгляне.

gitlab.com не відкривається з робочого комп'ютера

Напишіть у чат когорти. Не пересилайте матеріали курсу через корпоративну пошту чи месенджери. AI-інструмент, який видала компанія для навчання, використовувати можна — лише з матеріалами курсу.