Začněte nyníZačněte zdarma

Integrace nástrojů pro volání funkcí

Vytvořil/a jsi nástroj pro převod časových zón pomocí funkce convert_timezone() a definoval/a ho ve formátu nástrojů OpenAI. Teď je potřeba implementovat kompletní workflow volání funkce. client je již inicializován a seznam tools obsahuje definici tvého nástroje pro převod časových zón. Funkce convert_timezone() je také připravena k použití.

Seznam messages byl zahájen a obsahuje uživatelský vstup, který vyžaduje informace o časové zóně z tvého nástroje convert_timezone.

Toto cvičení je součástí kurzu

Working with the OpenAI Responses API

Zobrazit kurz

Pokyny k cvičení

  • Projdi položky výstupu odpovědi z prvního požadavku Responses API a zkontroluj, zda obsahují 'function_call' na 'convert_timezone'; poté zavolej convert_timezone() s rozbaleými argumenty z dané položky a výsledek ulož do timezone_result.
  • Přidej do seznamu zpráv zprávu typu 'function_call_output' obsahující výsledek z convert_timezone().
  • Vytvoř finální požadavek Responses API se zprávami obsahujícími výsledek funkce a znovu předej seznam tools.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

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)
Upravit a spustit kód