Claude Sonnet 4.5 یا Gemini 2.5 Pro؟
هر دو با همان کلید و همان کد در یوتاپن کار میکنند؛ فقط مقدار model عوض میشود. پس میتوانی بدون تغییر معماری، هر دو را روی کار واقعی خودت تست کنی. از نظر هزینه، Gemini 2.5 Pro حدود ۱٫۶ برابر ارزانتر تمام میشود.
| ویژگی | Claude Sonnet 4.5 | |
|---|---|---|
| تأمینکننده | Anthropic | |
| شناسهٔ مدل | anthropic/claude-sonnet-4.5 | google/gemini-2.5-pro |
| context | 1,000,000 توکن | 1,048,576 توکن |
| حداکثر خروجی | 64,000 توکن | 65,536 توکن |
| ورودی / ۱M توکن | 870,375 تومان | 362,656 تومان |
| خروجی / ۱M توکن | 4,351,875 تومان | 2,901,250 تومان |
| ≈ یک درخواست ۱٬۰۰۰ کلمهای | 6,789 تومان | 4,243 تومان |
| cache ورودی | 87,038 تومان / ۱M | 36,266 تومان / ۱M |
| ورودی تصویر | دارد | دارد |
| ورودی فایل | دارد | دارد |
| tool calling | دارد | دارد |
| خروجی JSON | دارد | دارد |
| حالت استدلال | دارد | دارد |
کدام برای چه کاری؟
Claude Sonnet 4.5
- مسئلههای چندمرحلهای، ریاضی و دیباگ
- تحلیل اسناد بلند و کدبیس در یک درخواست
- خواندن تصویر، فاکتور و فرم
- ایجنت و اتصال به API و دیتابیس
6,789 تومان برای هر ۱٬۰۰۰ کلمه · صفحهٔ مدل
Gemini 2.5 Pro
- مسئلههای چندمرحلهای، ریاضی و دیباگ
- تحلیل اسناد بلند و کدبیس در یک درخواست
- خواندن تصویر، فاکتور و فرم
- ایجنت و اتصال به API و دیتابیس
4,243 تومان برای هر ۱٬۰۰۰ کلمه · صفحهٔ مدل
تست هر دو با یک کد
فقط model را بین دو شناسه عوض کن و همان درخواست را دو بار بفرست؛ هزینهٔ هر پاسخ در هدر X-Uttapen-Cost-Toman برمیگردد.
curl https://api.uttapen.ir/v1/chat/completions \
-H "Authorization: Bearer sk-up-…" \
-H "Content-Type: application/json" \
-d '{
"model": "anthropic/claude-sonnet-4.5",
"messages": [{"role": "user", "content": "سلام! خودت را معرفی کن."}],
"stream": true
}'from openai import OpenAI
client = OpenAI(
base_url="https://api.uttapen.ir/v1",
api_key="sk-up-…",
)
stream = client.chat.completions.create(
model="anthropic/claude-sonnet-4.5",
messages=[{"role": "user", "content": "سلام! خودت را معرفی کن."}],
stream=True,
)
for chunk in stream:
print(chunk.choices[0].delta.content or "", end="", flush=True)import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.uttapen.ir/v1",
apiKey: "sk-up-…",
});
const stream = await client.chat.completions.create({
model: "anthropic/claude-sonnet-4.5",
messages: [{ role: "user", content: "سلام! خودت را معرفی کن." }],
stream: true,
});
for await (const chunk of stream) {
process.stdout.write(chunk.choices[0]?.delta?.content ?? "");
}<?php
// composer require openai-php/client guzzlehttp/guzzle
$client = OpenAI::factory()
->withBaseUri('https://api.uttapen.ir/v1')
->withApiKey('sk-up-…')
->make();
$result = $client->chat()->create([
'model' => 'anthropic/claude-sonnet-4.5',
'messages' => [['role' => 'user', 'content' => 'سلام! خودت را معرفی کن.']],
]);
echo $result->choices[0]->message->content;package main
import (
"context"
"fmt"
"github.com/openai/openai-go"
"github.com/openai/openai-go/option"
)
func main() {
client := openai.NewClient(
option.WithBaseURL("https://api.uttapen.ir/v1"),
option.WithAPIKey("sk-up-…"),
)
resp, err := client.Chat.Completions.New(context.Background(), openai.ChatCompletionNewParams{
Model: "anthropic/claude-sonnet-4.5",
Messages: []openai.ChatCompletionMessageParamUnion{openai.UserMessage("سلام! خودت را معرفی کن.")},
})
if err != nil {
panic(err)
}
fmt.Println(resp.Choices[0].Message.Content)
}model = "google/gemini-2.5-pro"
مقایسههای دیگر: همهٔ جفتها · رتبهبندی مدلها · فهرست کامل
base_url = https://api.uttapen.ir/v1