OpenAI API işlemlerindeki ücret hesaplaması "token" üzerinden yapılıyor. Örneğin şu anda OpenAI'ın en ucuz modeli olan gpt-4o-mini modeli için ücretlendirme:
$0.150 / 1M input tokens
$0.600 / 1M output tokens
Diğer model fiyatları için:
https://openai.com/api/pricing/
Token günlük hayatta kullandığımız bir kavram olmadığı için anlaşılması zor olabilir. Kabaca kelime parçaları olarak tanımlanabilir. Bazen bir 1 kelime = 1 token olabiliyorken bir başka kelime ise 3-4 tokendan meydana gelebiliyor. Bu nedenle kelime bazlı bir fiyatlandırmanın kesin formülü bulunmuyor. Örneğin:
Herkes = 3 token
Merhaba = 2 token
Herkese merhaba = 5 token
selam = 2 token
günaydın = 4 token
nasılsın = 4 token
nasılsın? = 5 token
yazı = 3 token
https://platform.openai.com/tokenizer adresinden yazılarınızı tokine ederek kaç tokendan meydana geldiğini öğrenebilirsiniz.
Ücretlendirme hesaplaması:
1. API'ye gönderdiğiniz promptlar tokenize edilerek input token sayısı bulunuyor ve bunun için bir ücret hesaplanıyor. Örneğin gpt-4o-mini için 1 milyon input token = 0.15$ olacak şekilde bir hesaplama yapılıyor.
2. Daha sonra bu prompt için oluşturulan cevap da tokinize edilerek output token sayısı bulunuyor ve bunun için de bir hesaplama yapılıyor. Örneğin gpt-4o-mini için 1 milyon output token = 0.65$ olacak şekilde bir hesaplama yapılıyor.
3. Input token ücreti + output token ücreti = toplam ücret olarak sizin bakiyenizden düşüyor.
Buradan da anlaşılacağı gibi kelime bazlı bir hesaplamanın kesin formülü yok. Ancak örneğin elindeki promptları 100 kere çalıştırıp toplam kelime sayısı ve ücreti hesaplayıp bir ortalama alabilirsin. Ne demek istediğimi 2 örnek ile anlatayım:
Örnek 1:
Prompt: "Merhaba, nasılsın?"
Cevap : "İyiyim."
Prompt toplamda 8 input token = 0.0000012$
Cevap toplamda 4 output token = 0.0000024$
Toplam 0.0000012$ + 0.0000024$ = 0.0000036$
Yani 1 kelimelik bir cevap için 0.0000036$ ödeniyor.
Örnek 2
Prompt: 'Burada çok uzun bir prompt olduğunu düşünün...'
Cevap : "Evet."
Prompt toplamda 1000 input token = 0,00015$
Cevap toplamda 3 output token = 0.0000018$
Toplam 0.00015$ + 0.0000018$ = 0,0001518$
Yani 1 kelimelik bir cevap için 0.0001518$ ödeniyor.
Yani 1 kelimelik bir cevap için ikinci örnekte birincisine göre ~42 kat daha fazla para ödemiş oluyorsunuz. Bu nedenle kelime bazlı kesin bir formül yok. Sadece ortalama alarak kendi maliyetlerinizi hesaplayabilirsiniz.
Ayrıca bu token sayısının dilden dile değiştiğini de hatırlatmak istiyorum. Örneğin bizim sistemimizde ~1000 kelimelik Türkçe bir makale ile ~2000 kelimelik İngilizce bir makalenin maliyeti aynı.