Files
MathApp/docs/model-prices.md
Zareian 947f946909 Question packs removed at the root; all subscriptions 4 assistant questions a day; Bazaar is subscription-only
- subscription.0017/0018, payment.0013: pack plans deleted, QuestionCredit/HeartsPass models and Plan.kind /
  question_credits / hearts_days / Order.question_credits / hearts_days dropped. The only paid pack order was the
  company owner's test account (user 26).
- Assistant: no credit spending; quota is the daily cap only (free 2, every plan 4, gift subscription 4).
- Bazaar: verify_purchase is subscription-only (no inapp guess), start/purchase responses lose productType,
  verify refuses an order without a subscription. A paid order with no subscription now logs ERROR.
- Removed POST /api/payment/orders (internal; no caller). Its permission tests stay.
- Pack-based tests rewritten on subscriptions (refund, security, Bazaar token); pack-only test files deleted.
- docs: profit table for 4/day on both payment routes plus free users; handbook, operations, CLAUDE.md current.
949 tests green.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 20:33:38 +03:30

7.0 KiB
Raw Permalink Blame History

دفترِ قیمتِ مدل‌ها (اندازه‌گیری‌شده، نه از جدولِ قیمت)

این فایل یک دفتر است: هر بار قیمت یا مدل عوض شد، ردیفِ تازه اضافه کنید و ردیفِ قدیمی را پاک نکنید. هدف این است که اگر GapGPT یا OpenAI روزی قیمت را بالا برد، بشود دید قبلاً چه بوده، از کِی عوض شده، و هر عدد با چه آزمایشی به دست آمده.

همه‌ی قیمت‌ها به دلارِ آمریکا هستند. «سنت» یعنی یک‌صدمِ دلار. تبدیل به تومان در docs/ai-cost-and-guardrails.md است، چون نرخِ دلار جدا از قیمتِ مدل عوض می‌شود.

مدل‌هایی که الان استفاده می‌شوند

کار مدل تنظیم از کِی
جوابِ دستیار (چت) gpt-4.1-mini OPENAI_CHAT_MODEL ۲۰۲۶-۰۹-۲۶ (پیش از آن gpt-4o-mini)
خواندنِ صفحه‌ی کتاب (vision) gpt-4.1-mini OPENAI_VISION_MODEL ۲۰۲۶-۰۹-۲۰
embedding برای Qdrant text-embedding-3-small OPENAI_EMBEDDING_MODEL از ابتدا

همه از راهِ GapGPT (OPENAI_BASE_URL) صدا زده می‌شوند. کلید با سرورِ زنده و تیمِ دیگر مشترک است.

قیمتِ هر توکن، همان‌طور که GapGPT واقعاً حساب کرد

تاریخِ سنجش مدل ورودی (دلار / ۱ میلیون توکن) خروجی (دلار / ۱ میلیون توکن) مدرک
۲۰۲۶-۰۹-۲۵/۲۶ gpt-4.1-mini ۰٫۴۰ ۱٫۶۰ ۵۴۱ فراخوانی (۱)
۲۰۲۶-۰۹-۲۵/۲۶ gpt-4o-mini ۰٫۱۵ ۰٫۶۰ ۳۱۱ فراخوانی (۱)

(۱) docs/benchmarks/2026-09-26-tutor-model/*.json: هر جواب promptTokens، completionTokens و costUsd دارد، و costUsd همان usage.costی است که خودِ GapGPT برگرداند. در ۲۰۲۶-۱۰-۰۲ دوباره حساب شد. برای gpt-4.1-mini، ۳۹۰ فراخوانی دقیقاً برابرِ (0.40 × ورودی + 1.60 × خروجی) / 1e6 بودند و ۱۵۱ فراخوانیِ دیگر (۲۸٪) ارزان‌تر، چون کشِ خودکارِ ورودی خورده بودند. هیچ فراخوانی‌ای گران‌تر نبود. برای gpt-4o-mini، ۲۹۷ فراخوانی دقیقاً برابر بودند و ۱۴ فراخوانی ارزان‌تر. یعنی برای این دو مدل در آن تاریخ، قیمتِ GapGPT همان قیمتِ رسمیِ OpenAI بود.

این را به همه‌ی مدل‌ها تعمیم ندهید: برای ورودِ کتاب، gemini-3.6-flash سه برابرِ gpt-4o تمام شد، یعنی خلافِ چیزی که از جدولِ قیمت انتظار می‌رفت (docs/extraction-playbook.md، بخشِ ۱).

هزینه‌ی هر کار (اندازه‌گیری‌شده)

تاریخ کار مدل هزینه چطور اندازه گرفته شد
۲۰۲۶-۰۹-۲۰ خواندنِ یک صفحه‌ی کتاب gpt-4.1-mini ۰٫۲۲ سنت /dashboard/billing/usage پیش و پس از ۳ صفحه
۲۰۲۶-۰۹-۲۰ خواندنِ یک صفحه‌ی کتاب gpt-4o ۰٫۷۷ سنت همان
۲۰۲۶-۰۹-۲۰ خواندنِ یک صفحه‌ی کتاب gemini-3.6-flash ۲٫۱۳ سنت همان
۲۰۲۶-۰۹-۲۰ ساختِ یک سوالِ چهارگزینه‌ای o4-mini ۰٫۷۷ سنت همان
۲۰۲۶-۰۹-۲۵ یک جوابِ دستیار، پرامپتِ v3 gpt-4o-mini ۰٫۰۴۴ سنت rag_model_benchmark
۲۰۲۶-۰۹-۲۵ یک جوابِ دستیار، پرامپتِ v3 gpt-4.1-mini ۰٫۱۱۶ سنت همان
۲۰۲۶-۰۹-۲۵ یک جوابِ دستیار، پرامپتِ v3 gpt-5-mini ۰٫۱۷۱ سنت همان
۲۰۲۶-۰۹-۲۵ یک جوابِ دستیار، پرامپتِ v3 gpt-5.4-mini ۰٫۲۹ سنت همان
۲۰۲۶-۰۹-۲۵ یک جوابِ دستیار، پرامپتِ v3 o4-mini ۰٫۴۱ سنت همان
۲۰۲۶-۰۹-۲۶ میانگینِ همه‌ی جواب‌های سنجش gpt-4.1-mini ۰٫۰۹۶ سنت میانگینِ costUsdِ ۵۴۱ فراخوانی (۱)
۲۰۲۶-۱۰-۰۱ یک جوابِ دستیار، پرامپتِ tutor-v11-math-only، ۱۰۳ مسئله‌ی کتاب gpt-4.1-mini ۰٫۱۶۲ سنت (دبستان ۰٫۱۲۹، دبیرستان ۰٫۲۲۵) توکنِ ورودی تخمینی (۰٫۳۸۷ توکن به ازای هر حرف)، خروجی از جوابِ واقعی، ضربدر قیمتِ بالا
۲۰۲۶-۱۰-۰۱ یک سوالِ زنده در اپ (۱۲ سوال) gpt-4.1-mini ۰٫۲۲۵ سنت فراخوانیِ واقعی
۲۰۲۶-۱۰-۰۴ یک جوابِ دستیار در لودتستِ سرورِ زنده (۵۰ جواب، استریم، سوال‌های تصادفیِ بانکِ سوالِ ده پایه) gpt-4.1-mini ۰٫۱۸۳ سنت (میانگین: ۳٬۱۸۱ توکنِ ورودی، ۳۴۸ خروجی) prompt_tokens/completion_tokensِ ذخیره‌شده روی پیام‌ها ضربدر قیمتِ بالا؛ داشبوردِ GapGPT خوانده نشد

عددِ برنامه‌ریزیِ قیمت‌گذاری ۰٫۲۰ سنت برای هر سوالِ دستیار است و حدودِ ۷۰٪ِ آن ورودی است. هزینه‌ی embedding جدا اندازه گرفته نشده است. قیمتِ رسمیِ text-embedding-3-small بسیار کمتر از چت است، ولی این را روی GapGPT نسنجیده‌ایم.

وقتی قیمت عوض شد یا شک کردید

۱. هزینه‌ی واقعیِ اپ، بی‌خرج: از ۲۰۲۶-۱۰-۰۱ هر جوابِ دستیار prompt_tokens و completion_tokens را روی ai_tutor.Message ذخیره می‌کند. جمعِ توکن‌های یک بازه را در قیمتِ این فایل ضرب کنید (پرس‌وجو در docs/ai-cost-and-guardrails.md).

۲. قیمتِ امروزِ GapGPT، با چند سنت: یک سوالِ کوتاه بفرستید و usage.cost را با (ورودی × قیمتِ ورودی + خروجی × قیمتِ خروجی) / 1e6 مقایسه کنید. اگر نخواند، قیمت عوض شده است. موجودی را پیش و پس با /dashboard/billing/usage بسنجید (rag_model_benchmark._usage_cents)؛ این تنها عددِ قابلِ اتکاست، چون hard_limit_usd موجودی نیست.

۳. ردیفِ تازه اضافه کنید، با تاریخ، مدل، عدد و مدرک. ردیفِ قدیمی را نگه دارید. اگر قیمتِ دستیار عوض شد، سقفِ روزانه‌ی اشتراک‌ها (Plan.ai_daily_quota) را هم دوباره بسنجید: سهمِ هزینه از درآمدِ هر اشتراک در docs/ai-cost-and-guardrails.md با همین عددها حساب شده است.