Перейти до основного змісту

Prompt engineering

Prompt Engineering означає просто постановку хороших запитань до ІІ. Промпт — це ваш вхід з вашим запитом чи проханням.

Prompt engineering означає, що ми придумуємо цілеспрямовані запитання та підказки, щоб допомогти моделям ІІ давати правильні відповіді під час чатів. З кращими промптами ви отримаєте кращі результати.

Разом із специфікаціями обраної моделі це визначає якість відповіді.

Елементи промпту (питання)

Щоб отримати кращі результати, зважайте на наступні пункти:

  • Мета: чого саме ви хочете від мовної моделі?
  • Роль: яку роль має виконувати мовна модель? (Наприклад, «Маркетинговий аналітик», «Юридичний консультант», «Керівник проекту»)
  • Контекст: довідкова інформація про запит (наприклад, бізнес-цілі, деталі проекту, ринкова інформація)
  • Стиль: який стиль ви хочете застосовувати? (Наприклад, формальний, переконуючий, лаконічний)
  • Вихід: у якому форматі ви хочете отримати результат? (Наприклад, звіт, електронна пошта, конспект презентації, фрагмент коду)

Мета

Точне формулювання мети вашого запиту є суттєвим і не може бути опущеним.

Що ви хочете знати?

  • Фактологічний запит може бути, але майте на увазі обмеження (наприклад, актуальність знань може бути відсутня)
  • Так само як у Google, ви не отримаєте точнієї копії відповіді, якщо запит повторювати
  • Перевагою є функція «чат», де ви можете ставити додаткові запитання

Приклад промпту з чіткою метою:

Prompt з тільки метою

Дайте опис основних викликів при впровадженні нової платформи AI у середньої компанії.

Впровадження нової платформи AI у середній компанії пов'язане з різними викликами. Деякі основні виклики:

  1. Опір змінам: співробітники звикли до існуючих процесів і систем. Нова платформа AI вимагатиме адаптації та може викликати опір, особливо якщо вплив на робочі процеси неясний.
  2. Якість і доступність даних: платформи AI сильно залежать від даних. Збір, очищення та структурування даних для нової платформи може бути складним та тривалим.
  3. Інтеграція з існуючими системами: платформі часто потрібно інтеграція з іншими бізнес-додатками (ERP, джерела даних, BI-інструменти). Це може створювати технічні виклики.
  4. Вартість: окрім ліцензійних витрат, є витрати на впровадження, навчання, інфраструктуру даних та, можливо, залучення спеціалізованого персоналу.
  5. Навчання та впровадження: співробітників потрібно навчити користуватися новою платформою та інтерпретувати вихід. Без якісного навчання та постійної підтримки рівень прийняття може залишитися низьким.
  6. Вибір правильної платформи та кейсів використання: існує багато платформ та технологій. Важливо обрати платформу та визначити релевантні кейси використання, що відповідають потребам та стратегічним цілям компанії.
  7. Етичні міркування та відповідність нормам: залежно від застосування платформи, можуть бути етичні питання та вимоги відповідності (наприклад AVG/GDPR), які потрібно ретельно вирішувати.
  8. Управління проектом: успішна реалізація потребує ґрунтовного управління проектом, чітких цілей та залучення зацікавлених сторін з різних підрозділів.

Додавання ролі та контексту

Додавання ролі та контексту забезпечує кращі та більш конкретні відповіді.

Приклад тієї ж запитання, але з роллю та контекстом:

Prompt з метою, роллю та контекстом

Як керівник проекту, відповідальний за впровадження нової платформи AI для аналізу даних та оптимізації процесів у B2B-сервісній компанії з 150 працівниками, дайте опис основних викликів та можливих стратегій пом’якшення.

Як керівник проекту з впровадження нової платформи AI для аналізу даних та оптимізації процесів у B2B-сервісній компанії з 150 співробітниками, я бачу наступні основні виклики та можливі стратегії мінімізації ризиків:

  1. Опір змінам та прийняття користувачами:
    • Виклик: Співробітники, особливо ті, чия робота напряму залежить від цих змін, можуть опиратися відмові від звичних методів та не зрадіти новим інсайтам, згенерованим AI.
    • Митигaція: Залучайте ключових користувачів на ранніх етапах. Чітко комунікуйте переваги (ефективність, кращі рішення, нові інсайти). Забезпечте всебічне навчання за ролями та постійну підтримку. Призначте «AI-чемпіонів» в підрозділах.
  2. Якість даних, управління даними та міграція:
    • Виклик: Ефективність платформи залежить від високої якості даних. Дані з існуючих систем часто суперечливі, неповні або неправильні.
    • Митигaція: Розпочніть із повної перевірки даних, визначте рамки управління даними та проведіть очищення даних перед інтеграцією/міграцією. Визначте чіткі моделі даних та потоки. Проведіть тестування та ретельно валідуйте дані.
  3. Інтеграція з існуючою ІТ-інфраструктурою:
    • Виклик: Зв'язки з джерелами даних, ERP, CRM та іншими системами повинні працювати плавно та безпечно.
    • Митигaція: Ранньо визначте потрібні інтеграції. Оберіть AI-платформу з надійними API-даними або стандартними конекторами. Ретельно тестуйте інтеграції.
  4. Обсяг робіт, проміжок та бюджет:
    • Виклик: Під час проекту можуть з'являтися нові побажання до застосувань AI, що розширюють обсяг та збільшують витрати.
    • Митигaція: Визначте чіткий межі обсягу з конкретними кейсами використання (MVP) для першого етапу. Впровадьте суворий процес управління змінами. Підтримуйте реалістичне планування та бюджет, з резервом.
  5. Вибір правильної технології та партнера з впровадження:
    • Виклик: Ринок AI складний. Неправильний вибір технології або недосвідчений партнер може зіпсувати проект.
    • Митигaція: Проведіть ґрунтовне дослідження відповідних технологій AI для визначених кейсів використання. Оберіть партнера з підтвердженим досвідом у вашій галузі та з обраними технологіями. Запитайте відгуки.
  6. Відсутність знань та навичок з AI в організації:
    • Виклик: Може не вистачати внутрішньої експертизи для ефективного використання платформи AI, її підтримки та розвитку.
    • Митигaція: Інвестуйте в навчання. Розгляньте найм спеціалізованого персоналу або спільну роботу з партнером з впровадження для передачі знань. Створіть культуру постійного навчання.
  7. Етичні міркування та пояснюваність (Explainable AI):
    • Виклик: Рішення, прийняті або підтримувані AI, повинні бути прозорими та пояснюваними, особливо якщо вони впливають на клієнтів чи співробітників. Переваги даних можуть призвести до несправедливих результатів.
    • Митигaція: Встановіть етичні принципи використання AI. За можливості оберіть моделі, які інтерпретуємо. Впровадьте процеси для виявлення та мінімізації упередженості. Забезпечте людський контроль над критичними рішеннями AI.

Протягом цих викликів проактивно підбираємо рішення для успішної реалізації платформи AI, що справді сприяє досягненню бізнес-цілей.

Техніки

Нижче описано ряд технік, які можна використати для більш просунутих промптів.

Техніка 1 - надання прикладів

Щоб забезпечити використання мовною моделлю того самого стилю, який ви бажаєте, подайте один або два приклади.

Метод називають “one & few-shot prompting”

Техніка 1 - надання прикладів

Напишіть концептуальний електронний лист клієнтам щодо майбутнього запланованого оновлення системи. Використайте нашу внутрішню політику для спілкування з клієнтами (додайте відповідні пункти з політики). Використайте як стиль останню розсилку, але не використовуйте її змісту: (додайте текст розсилки)

Повна промпта звучить так:

Внутрішня політика для спілкування з клієнтами:

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

Використайте стиль цієї розсилки, але не використовуйте інформацію з цієї розсилки. Шановний клієнте,

Ми хочемо повідомити вас про майбутнє оновлення системи, що може вплинути на наші послуги.

Дата та час оновлення: [дата й час] Очікувана тривалість перерви: [тривалість] Задіяні послуги: [послуги]

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

Техніка 1 - відповідь

Нижче наведено відповідь мовної моделі на розгорнуту промпту з прикладами

Шановний клієнте,

Ми хочемо повідомити вас про майбутнє оновлення системи, яке може вплинути на наші послуги.

Дата та час оновлення: [дата й час] Очікувана тривалість перерви: [тривалість] Задіяні послуги: [послуги]

Під час цього періоду наша послуга може бути тимчасово недоступна. Ми докладаємо зусиль, щоб незручності були мінімальними та послуги відновилися якомога швидше.

Якщо у вас є запитання, не соромтеся звертатися до нас.

З повагою, [Ваше ім'я] [Ваша посада] [Назва компанії] [Контактна інформація]

Техніка 2 - надання шаблону

Щоб забезпечити використання певного формату, дайте шаблон та приклад. Це гарантує, що мовна модель відформатує відповідь певним чином або структурно. Ви можете подумати про різні формати, корисні для ситуацій, такі як:

  • csv-вивід для імпорту в Excel або інструмент аналізу даних
  • json-вивід для API-інтеграцій або конфігураційних файлів
  • планування для проектної наради

Приклад промпти: Згенеруйте список з трьох потенційних маркетингових каналів для нового SaaS-продукту, орієнтованого на малі та середні підприємства. Форматуйте відповідь так: Канал: Охоплення аудиторії: Потенційна ROI: Потрібні ресурси:

Наприклад: Канал: Реклама у LinkedIn Охоплення аудиторії: Конкретні посадові титули, галузі, розмір компанії Потенційна ROI: Висока за умови правильної націленості Потрібні ресурси: Бюджет на рекламу, створення контенту, управління кампанією

Метод називають “output templates”

Техніка 2 - надання шаблону

Нижче наведено відповідь мовної моделі на промпт з шаблоном виводу

Канал: Content Marketing (Blog & SEO) Охоплення аудиторії: Компанії, що активно шукають рішення своїх проблем, органічний трафік Потенційна ROI: Висока в довгостроковій перспективі, формує авторитет Потрібні ресурси: Контент-лідери, SEO-спеціаліст, час на дослідження ключових слів та просування контенту

Канал: Google Ads (Search) Охоплення аудиторії: Компанії, які шукають конкретні ключові слова, пов’язані з SaaS-продуктом Потенційна ROI: Середня – висока залежно від конкуренції та CPC Потрібні ресурси: Бюджет на рекламу, дослідження ключових слів, оптимізація лендинґу, управління кампанією

Канал: E-mail Marketing (Lead Nurturing) Охоплення аудиторії: Ліди, зібрані через сайт, вебінари чи інші канали Потенційна ROI: Висока, ефективна для конверсії лідів у клієнтів Потрібні ресурси: Платформа електронної пошти, контент для серій електронних листів, уміння сегментації

Техніка 3 - підказка

Щоб забезпечити, що мовна модель починає та пише певним чином, дайте підказку. Тут підказку додають наприкінці промпту.

Приклад промпту: Чи можете ви підсумувати цей ринковий звіт для мене? (прикліпіть відповідні розділи звіту). Розпочніть відповідь з: Найважливіші висновки з цього ринкового дослідження:

  • ВКЛАДІТЬ ТЕКСТ ЗІ ЗВІТУ

Метод називають «cue- та hints» Цей приклад використовує вигаданий звіт.

Техніка 3 - підказка

Нижче наведено відповідь мовної моделі з підказкою

Найважливіші висновки з цього ринкового дослідження:

  • Попит на хмарні системи управління проектами для МСП за останні два роки зріс на 35%.
  • Основні фактори рішення для МСП: зручність використання, інтеграція з існуючими інструментами та ціна.
  • Ринкова частка Конкурент А — 25%, Конкурент Б — 18%. Є простір для нових гравців, які зосередяться на конкретних нішах або забезпечать кращий користувацький досвід.
  • Найбільші виклики для МСП при впровадженні нового ПО — первинні інвестиції та час на навчання співробітників.
  • Очікується, що ринок протягом наступних п’яти років зростатиме приблизно на 15% щороку.

Техніка 4 - розділення контенту від інструкцій

Іноді промпт занадто довгий через додатковий контент, і модель може неправильно зрозуміти, чого ви хочете. Розділіть контент трьома лапками на початку і наприкінці тексту решти промпту.

Приклад промпту: Чи можете ви підсумувати цю статтю для мене? “”” (текст вашої статті) “”” Почніть відповідь з: Найважливіші пункти цієї статті:

Метод називають “content splitsen” Цей приклад знову використовує статтю з Інтернету: https://www.leraar24.nl/2619420/onderwijs-op-afstand-wat-hebben-we-geleerd/

Техніка 4 - розділення контенту

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

Найважливіші пункти цієї статті:

  • Під час кризи Covid-19 вчителі мусили розробляти стратегії та техніки для максимально ефективного дистанційного навчання, водночас батьки брали на себе більшу роль у підтримці своїх дітей.
  • Важливі чинники успішного дистанційного навчання: структурований розклад дня, підтримання відкритої комунікації між вчителем та учнем, та раціональний вибір між онлайн та паперовими завданнями.
  • Виклики пов’язані з підтримкою вразливих учнів та додатковим тиском на батьків, особливо тих, хто також працює вдома.
  • Спостерігалося швидке зростання цифровізації в школах з додаванням нових цифрових інструментів та методів. У статті згадується приклад вчителя Менді де Фрис, яка використала свої цифрові навички, щоб допомогти колегам.
  • Також підкреслюється важливість постійного контакту та уваги до учнів, особливо тих у спеціальній освіті, і надаються практичні поради для вчителів та батьків.
  • Нарешті, стаття висловлює сподівання, що залученість батьків у дистанційній освіті залишиться після пандемії.

Техніка 5 - спершу запитайте додаткову інформацію

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

Приклад промпта: “Хочу підготувати проектну пропозицію для розробки нового мобільного застосунку для внутрішнього спілкування. У застосунку повинні бути функції для оновлень, довідника та прямого обміну повідомленнями. Перш ніж писати пропозицію, можете задати мені кілька додаткових запитань, щоб покращити пропозицію?”

Метод називають “ask before answer prompting”

Техніка 5 - спочатку додаткові запитання

Нижче наведено відповідь мовної моделі з запитом додаткової інформації

Звісно! Ось кілька запитань, які я можу поставити, щоб покращити проектну пропозицію:

  • Яка основна мета внутрішнього застосунку для спілкування? (наприклад, підвищення залучення, поліпшення розповсюдження інформації, сприяння співпраці)
  • Хто саме є цільовою аудиторією в компанії? (наприклад, всі співробітники, конкретні підрозділи, польові працівники)
  • Чи існують вже системи або платформи, з якими застосунок повинен інтегруватися? (наприклад, внутрішній портал, HR-система, Active Directory)
  • Який бюджет та терміни розробки й впровадження?
  • Чи є конкретні вимоги безпеки або відповідності (наприклад GDPR, політика збереження даних)?
  • які KPI будуть використані для оцінки успіху застосунку?
  • Є думки щодо дизайну чи брендингу застосунку? Чи повинні вони відповідати брендингу організації?
  • Віддаєте перевагу платформі розробки (iOS, Android, крос-платформені рішення)?

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

Техніка 6 - емоційна промпт

Ви можете instruct задати тон тексту відповідно до емоцій або викликати певну емоційну реакцію. Це корисно для сервісної підтримки, внутрішніх комунікацій або маркетингу.

Приклад промпта: “Мені потрібно написати електронного листа клієнту, який незадоволений останнім збоєм сервісу. Клієнт написав: “”” .... “”” (вставити текст клієнта) Я хочу, щоб лист був емпатійним, визнавав роздратування клієнта і пропонував конструктивне рішення.”

Метод називають “emotional prompting” Цей приклад використовується з вигаданою скаргою.

Повна промпта звучить так:

Мені потрібно написати електронного листа клієнту, який незадоволений останнім збоєм сервісу. Клієнт написав: """Шановний пане/пані,

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

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

Техніка 6 - емоційна промпт

Нижче наведено відповідь, яку ми отримали від мовної моделі

Шановний [Ім’я клієнта],

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

Збої була викликана [коротке, чітке пояснення причини, наприклад несподівана технічна поломка в нашому дата-центрі]. Ми негайно вжили заходів, наші технічні фахівці працювали, щоб відновити сервіс якомога швидше. Сервіс відновлено повністю з [часу].

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

Щоб частково компенсувати незручності, ми радо запропонуємо [конкретна пропозиція, наприклад знижка на наступний рахунок / безплатне оновлення на місяць / кредити за сервіс]. Один із наших менеджерів облікових записів зв’яжеться з вами протягом 24 годин, щоб обговорити це особисто та відповісти на додаткові запити.

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

З повагою,

[Ваше ім'я/назва компанії]

Техніка 7 - створення кількох версій

Ви можете запитати кілька версій відповіді, щоб мати різні варіанти. Наприклад, вам потрібні кілька слоганів для нового продукту. Є багато ракурсів, тож варто мати кілька варіантів. Це може ефективно поєднатися з встановленням конкретної ролі для моделі та системної промпти для додаткового настановлення.

Докладніше про ролі можна прочитати в відповідній статті. Цей приклад з кількома версіями знаходиться наприкінці статті. Він повністю не повторюється тут.

Техніка 8 - поєднання з системною промптою

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

Приклади простих і загальних системних промпт:

"Я хочу, щоб ти був дружнім та корисним помічником."

"Завжди залишайся професійним та ввічливим у своїй мові."

"Зосередься на наданні конкретних, по суті відповідей без зайвих деталей."

Системна промпт фактично формує тон та очікування для конкретної розмови або завдання, яке ви хочете підготувати з мовною моделлю.

Також можна розробити більш просунуті системні промпти для конкретних завдань, наприклад підсумовування тексту: "Проаналізуй даний текст уважно та дай стислий, але інформативний підсумок основних пунктів. Визнач ядро повідомлення та головні деталі."

Системні промпти не мають однакового впливу на всі моделі. У chatGPT вони працюють дуже сильно, у Claude також, у інших моделях вплив може бути меншим. Тож варто експериментувати та дивитися, яка модель підходить саме вашому запиту.

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

Більше про ролі можна прочитати в відповідній статті.