OpenAI
Для перекладу цієї сторінки виконано машинний переклад. Ви можете переглянути оригінальну статтю англійською.

Перехід від Completions до Chat Completions в OpenAI API

Як перейти зі застарілого OpenAI Completions API до Chat Completions

Оновлено: 10 days ago

Chat Completions — це стандартний API для використання з найновішими моделями OpenAI. Дізнатися, як почати роботу з ним, можна в нашому посібнику розробника з генерації тексту.

Станом на 11 березня 2025 року ми випустили базові компоненти нашої нової платформи агентів. Докладніше див. в нашій документації API для Responses API, інструментів, зокрема вебпошуку, пошуку файлів і використання комп’ютера, а також нашого SDK для агентів із трасуванням.

Від запитів до повідомлень

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

Ось як це працює:

  • Замість надсилати один рядок як запит, ви надсилаєте список повідомлень як вхідні дані.

  • Кожне повідомлення має role і content.

  • Поширені ролі включають system, user, assistant, developer і tool. Повідомлення інструментів використовуються для результатів інструментів/функцій і мають відповідати викликам інструментів асистента. Для зворотної сумісності повідомлення функцій усе ще можуть прийматися й перетворюватися на повідомлення інструментів під час обробки на сервері. Повідомлення розробника можуть перепризначатися залежно від підтримки моделлю.

  • content містить текст повідомлення від ролі.

  • Системна інструкція може задавати високорівневі вказівки для розмови

  • Повідомлення обробляються в тому порядку, у якому вони з’являються в списку, і асистент відповідає відповідно.

Навіть базові запити Completions можна виконувати через Chat Completions, як показано нижче:

| Тоді | Тепер | | 'prompt' : 'tell me a joke' | 'messages': <br>[{'role':'user', 'content':'tell me a joke'}] |

Тепер вести діалог із моделлю стало простіше, ніж будь-коли: достатньо розширювати список повідомлень у розмові.

'messages': [{'role':'user', 'content':'розкажи мені жарт'}, 
{'role':'assistant', 'content':'чому курка перейшла дорогу'},
{'role':'user', 'content':'Я не знаю, чому курка перейшла дорогу'}]

Системні інструкції

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

'messages': [{'role':'system', 'content':'Ви — помічник, який говорить у стилі Шекспіра.'}, 
{'role':'user', 'content':'розкажи мені жарт'},

призведе до чогось на кшталт

{...
'message': {'role':'assistant',
'content':'Чому курка перейшла дорогу? Щоб дістатися на інший бік, але, воістину, той бік був сповнений ризику й небезпеки, тож вона хутко повернулася звідки прийшла, істинно!'}
...}

Якщо ви хочете розглянути варіанти, які не вимагають самостійно керувати історією розмови з повідомленнями, ознайомтеся з Assistants API.

Чи була ця стаття корисною?