НачатьНачать бесплатно

Интеграция инструментов с вызовом функций

Вы создали инструмент для конвертации часовых поясов с помощью функции convert_timezone() и описали его в формате инструментов OpenAI. Теперь нужно реализовать полный рабочий процесс с вызовом функций. Объект client уже инициализирован, а список tools содержит определение вашего инструмента для конвертации часовых поясов. Функция convert_timezone() также готова к использованию.

Список messages уже создан и содержит пользовательский запрос, для ответа на который требуется информация о часовых поясах из инструмента convert_timezone.

Это упражнение является частью курса

Работа с Responses API OpenAI

Посмотреть курс

Инструкции к упражнению

  • Переберите элементы в выводе первого запроса к Responses API и проверьте, содержит ли он вызов 'function_call' к функции 'convert_timezone'; затем вызовите convert_timezone() с распакованными аргументами из элемента и сохраните результат в переменной timezone_result.
  • Добавьте в список сообщений сообщение типа 'function_call_output', содержащее результат выполнения convert_timezone().
  • Сформируйте итоговый запрос к Responses API, передав список сообщений с результатом функции и, как прежде, список tools.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

messages = [{"role": "user", "content": "What time is 2:30pm on January 20th in New York in Tokyo time?"}]
response = client.responses.create(model="gpt-5.4-mini", input=messages, tools=tools)
messages += response.output

# Process function calls and execute the timezone conversion
for item in response.output:
    if item.type == "____":
        if item.name == "____":
            timezone_result = ____(**json.loads(item.arguments))
            
            # Append function output to messages
            messages.append({"type": "____", "call_id": item.call_id, "output": json.dumps({"convert_timezone": ____})})

# Make second API request with function results
response = client.responses.create(model="gpt-5.4-mini", input=____, tools=____)
print(response.output_text)
Редактировать и запускать код