Комментарии 2
Не очень понятно, в чём именно преимущество этого подхода перед простым описанием:
You are the bot for the shopping list. You create JSON:
{
"action": add|remove|list|replace, //add new products, remove products, show list of products, replace one with new value
...}
В ответе приходит JSON с нужной нам структурой. Работает прекрасно!
Чего действительно пока не хватает, так это возможность сразу же из ChatGPT отправить этот запрос на сервер и вернуть в результате уже ответ с сервера в том же JSON.
Во-первых, предполагаю, что иногда ответ может возвращаться в виде "Вот, пожалуйста, ваш json", двоеточие и дальше идет уже сам json.
По крайней мере с текстами у меня так иногда бывает (особенно с gpt-4o-mini кажется что стало чаще). Допустим, я прошу "напиши мне текст, который содержит слово АБВ". Он как правило на такой запрос возвращает текст, но иногда бывает пишет "Вот ваш текст", двоеточие и уже потом текст.
Во-вторых, "простое описание" для более сложной структуры наверняка может давать сбои (названия и структура полей и т.п.). Судя по тому что написано в новой документации на Structured outputs даже Function calling сам по себе может сбоить.
Использование ответов OpenAI API в формате JSON: Введение