Часть моих клиентов делают супер простую автоматизацию.
У них нет своего бэкенда и даже n8n они не используют. Все что они делают, это создают Ассистента в личном кабинете разработчика openai, и скидывают его IDшник в какую-то UI обертку.
Это круто, потому что помогает дойти до бизнес-ценности с минимальными техническими затратами (то, за что я часто борюсь и в себе, и в компаниях, с которыми работаю)
Но при таком подходе есть серьезные ограничения. Самое банальное – недавно наткнулись на то, что ассистент не знает дня недели, а это важно для бизнес-процесса.
Классическое решение – дернуть на бэкенде
datetime.now() и подставить в системный промпт (так же делают и openai со своим chatgpt).Но у нас нет бэкенда, что делать?
Для таких ситуаций есть расширения – tools. Они дают LLMке получить информацию извне.
Это работает так:
Вместо текста ответа, она в специальном формате пишет одну из трех штук:
* "я хочу сейчас сделать вот такой запрос к вот этому внешнему сервису"
* "я хочу запустить вот такой код"
* "я хочу сделать семантический поиск текста по файлам, которые мне дали"
После этого, внешний для LLMки детерминированный скрипт выполняет ее желание и подсовывает ей результат. LLMКа запускается заново, но уже с новой инфой – например, результатом выполнения кода или данными о погоде.
В нашем случае, мы просто просим ее в начале любого диалога написать код на python, который вернет дату и день недели. Он выполнится где-то на серверах OpenAI, поэтому уточняем таймзону, чтобы не промахнуться из-за разницы во времени.
———
Это супер простой кейс, но сам паттерн очень мощный – т.к. можно писать любой код, это делает возможности ассистентов практически неограниченными даже для совсем нетехнических пользователей. Можно даже попросить GPT сделать запросы к Google Gemini, хаха
