Fonksiyon Çağırma Araçları: Tüm İş Akışı

OpenAI Responses API ile Çalışmak

James Chapman

AI Curriculum Manager, DataCamp

def convert_currency(amount, from_currency, to_currency):
    url = f"https://api.frankfurter.dev/v1/latest?base={from_currency}&symbols={to_currency}"

    try:
        response = requests.get(url)
        response.raise_for_status()

        data = response.json()
        rate = data['rates'].get(to_currency)

        if rate is None:
            return f"Could not find exchange rate for {from_currency} to {to_currency}"

        converted_amount = amount * rate
        return f"{amount} {from_currency} = {converted_amount:.2f} {to_currency} (Rate: {rate})"

    except requests.exceptions.RequestException as e:
        return f"Error converting currency: {str(e)}"
OpenAI Responses API ile Çalışmak

Fonksiyon Çağırma Araçları

fct6.jpg

OpenAI Responses API ile Çalışmak

Araç Tanımları: Bir LLM'in Kılavuzu

tools = [

{ "type": "function", "name": "convert_currency", "description": "Gerçek zamanlı kurla bir para biriminden diğerine tutar çevir.",
"parameters": { "type": "object",
"properties": {
"amount": {"type": "number", "description": "Çevrilecek para tutarı"}, "from_currency": {"type": "string", "description": "Kaynak para birimi kodu (örn. 'USD', 'EUR')"}, "to_currency": {"type": "string", "description": "Hedef para birimi kodu (örn. 'USD', 'EUR')"}
},
"required": ["amount", "from_currency", "to_currency"], "additionalProperties": False
}
}
]
OpenAI Responses API ile Çalışmak
response = client.responses.create(
    model="gpt-5.4-mini",
    input=[{"role": "user", "content": "How much is $100 in euros?"}],
    tools=tools
)

for item in response.output: print(item)
ResponseReasoningItem(id='rs_0a46aaf8050644c4006924978291a481909d5f50b8b9f7e959',
                      summary=[], type='reasoning', content=None, encrypted_content=None, status=None)

ResponseFunctionToolCall(arguments='{"amount":100,"from_currency":"USD","to_currency":"EUR"}',
                         call_id='call_xTbWJuO6TiuFw84TK0hU9hRT', name='convert_currency',
                         type='function_call',
                         id='fc_0a46aaf8050644c40069249784fa248190874283efa2fc2c46', status='completed')
OpenAI Responses API ile Çalışmak
messages = [{"role": "user", "content": "How much is $100 in euros?"}]

response = client.responses.create( model="gpt-5.5", input=messages, tools=tools )
messages += response.output
OpenAI Responses API ile Çalışmak
for item in response.output:
    if item.type == "function_call":
        if item.name == "convert_currency":

currency_result = convert_currency(**json.loads(item.arguments))
messages.append({ "type": "function_call_output", "call_id": item.call_id, "output": json.dumps({"convert_currency": currency_result}) })
response = client.responses.create( model="gpt-5.4-mini", instructions="Aracın çıktısını kullanarak kullanıcı girdisine yanıt ver.", tools=tools, input=messages, )
OpenAI Responses API ile Çalışmak
print(response.output_text)
100 USD = 86.62 EUR (kullanılan kur: 1 USD = 0.86625 EUR).

Not: kurlar dalgalanır; ücretler veya kullandığın sağlayıcıya göre gerçek tutar değişebilir. Farklı bir tutarı ya da başka bir para birimini çevirmek ister misin?
OpenAI Responses API ile Çalışmak

Hadi pratik yapalım!

OpenAI Responses API ile Çalışmak

Preparing Video For Download...