SSD Nodes Learn Hosting plans →
راهنماها Matt Connorتوسط Matt Connor · به‌روزرسانی شده 2026-08-27

هزینه قابلیت حافظه Claude چقدر است؟

قابلیت حافظه در Claude هزینه مجزایی ندارد اما به دلیل بازپخش متن در هر درخواست، توکن‌های ورودی بیشتری مصرف می‌کند. با استفاده از prompt caching هزینه‌ها را مدیریت کنید.

آیا قابلیت‌های حافظه Claude هزینه اضافی دارند؟

قابلیت‌های حافظه Claude هزینه مستقلی ندارند. نرخ‌های اعلام‌شده توسط Anthropic بر اساس هر میلیون توکن ورودی و هر میلیون توکن خروجی محاسبه می‌شوند و هزینه‌های اضافی برای prompt caching وجود دارد، اما هیچ‌کدام از آن‌ها تحت عنوان توکن حافظه شناخته نمی‌شوند. ذخیره‌سازی خودِ حافظه در Claude API (رابط برنامه‌نویسی اپلیکیشن) هزینه‌ای ندارد، زیرا ابزار حافظه در سمت کلاینت (client-side) قرار دارد و فایل در فضای ذخیره‌سازی متعلق به شما نگهداری می‌شود.

حافظه همچنان بر صورت‌حساب شما تأثیر می‌گذارد، زیرا یک واقعیتِ به‌خاطر سپرده‌شده تنها زمانی پاسخ را تغییر می‌دهد که درون درخواستی باشد که Claude می‌خواند. به‌خاطر سپردن به معنای ارسال مجدد است. آن متن به عنوان توکن‌های ورودی وارد می‌شود و با نرخ عادی ورودی مدل محاسبه می‌گردد. دو عدد تعیین‌کننده میزان هزینه هستند: تعداد توکن‌های متن به‌خاطر سپرده‌شده که در هر نوبت بازپخش می‌کنید، و اینکه آیا آن متن بازپخش‌شده می‌تواند از طریق prompt cache ارائه شود یا خیر.

در اشتراک Pro یا Max، شما اصلاً بر اساس توکن صورت‌حساب دریافت نمی‌کنید، بنابراین حافظه به جای پول، از سهمیه مصرف (usage allowance) شما استفاده می‌کند. مکانیزم زیر یکسان است و تنها واحد تغییر می‌کند. آن سهمیه محدود است، بنابراین پیش از آنکه تصمیم بگیرید هر نوبت باید چه مقدار حافظه داشته باشد، بهتر است بدانید هزینه Claude Pro چقدر است و محدودیت‌های آن در چه نقطه‌ای شما را متوقف می‌کنند. وضعیت Claude Enterprise متفاوت است، زیرا علاوه بر هزینه صندلی، هر توکن را با نرخ‌های API محاسبه می‌کند، بنابراین یک بلوک حافظه بیش‌ازحد بزرگ، به جای سهمیه، دوباره به هزینه مالی تبدیل می‌شود. اگر هرس کردن حافظه، مصرف شما را به‌راحتی به زیر سقف یک طرح کوچک‌تر بازمی‌گرداند، تغییر از Max به Pro اقدامی است که ارزش انجام دادن دارد و این تغییر در پایان دوره‌ای که قبلاً پرداخت کرده‌اید، اعمال می‌شود. اگر مقایسه‌ای که در حال بررسی آن هستید بین ارائه‌دهندگان مختلف است و نه بین سطوح مختلف خودِ Anthropic، مقایسه طرح‌های Claude با ChatGPT بر اساس قیمت‌های فعلی نقطه شروع مناسبی است.

معنای «حافظه» در هر یک از سطوح Claude

سه محصول مجزا از این واژه استفاده می‌کنند و خلط مبحث میان آن‌ها، دلیل اصلی سردرگمی در این پرسش است.

ابزار حافظه در API مربوط به Claude. شما یک ورودی به آرایه tools اضافه می‌کنید و عملیات فایل را در کد خود پیاده‌سازی می‌کنید.

{"type": "memory_20250818", "name": "memory"}

از اوت 2026، این ابزار در Messages API بدون نیاز به هدر بتا، برای مدل‌های Claude 4 و نسخه‌های پس از آن در دسترس عمومی است. این ابزار سمت کلاینت (client-side) است: Claude درخواستی برای عملیاتی مانند view /memories ارسال می‌کند، هندلر شما آن را روی حافظه‌ای که تحت کنترل دارید اجرا می‌کند و شما نتیجه را در یک بلوک tool_result بازمی‌گردانید. Anthropic هرگز فایل را نگهداری نمی‌کند، بنابراین هزینه ذخیره‌سازی به شما تحمیل نمی‌شود. در عوض، شما هزینه رفت‌وبرگشت (round trip) را پرداخت می‌کنید. تعریف ابزار در هر درخواست ارسال می‌شود و محتوای فایلی که بازگردانده می‌شود، از آن لحظه به بعد در گفتگو باقی می‌ماند.

Anthropic بخش ثابت این سربار را منتشر می‌کند. در Claude Opus 5 با انتخاب ابزار auto، پرامپت سیستمی استفاده از ابزار طبق مستندات اوت 2026، معادل 286 توکن است. این مقدار هر بار که ابزاری (چه حافظه و چه غیره) در درخواست وجود داشته باشد، یک‌بار پرداخت می‌شود.

Claude Code. دو مکانیزم در ابتدای هر نشست (session) بارگذاری می‌شوند. فایل‌های CLAUDE.md حاوی دستورالعمل‌هایی هستند که شما می‌نویسید. حافظه خودکار (Auto memory) یادداشت‌هایی را نگه می‌دارد که Claude برای خودش در مسیر ~/.claude/projects/<project>/memory/ می‌نویسد. تنها 200 خط اول یا 25KB از MEMORY.md (هر کدام که زودتر محدودیت را پر کند) بارگذاری می‌شود و فایل‌های موضوعیِ کنار آن، به‌جای بارگذاری در زمان شروع، در صورت نیاز خوانده می‌شوند. هر چیزی که در زمان شروع بارگذاری شود، بخشی از پیشوندی (prefix) می‌شود که تمام درخواست‌های بعدی در آن نشست با خود حمل می‌کنند. نحوه بازیابی حافظه بین نشست‌ها در Claude Code ترتیب بارگذاری فایل به فایل را پوشش می‌دهد.

Claude در وب. در claude.ai، حافظه مجموعه‌ای از ورودی‌هاست که Claude هنگام گفتگو با شما می‌نویسد و به‌روزرسانی می‌کند؛ هر پروژه فضای حافظه جداگانه‌ای دارد. در بخش Settings > Memory، لیست موارد ذخیره‌شده نمایش داده می‌شود و گزینه موجود در آنجا، امکان Pause memory یا Reset memory را فراهم می‌کند. این سطح از طریق اشتراک صورت‌حساب می‌شود، بنابراین حافظه در اینجا از سقف استفاده (usage limits) شما کسر می‌کند.

چرا متن به‌خاطر سپرده‌شده به‌عنوان توکن ورودی محاسبه می‌شود

رابط برنامه‌نویسی Messages بدون وضعیت (stateless) است. این رابط هیچ‌چیز را بین فراخوانی‌ها ذخیره نمی‌کند، بنابراین کلاینت شما در هر نوبت کل گفتگو را ارسال می‌کند و مدل دوباره تمام آن را می‌خواند. حافظه (Memory) نیز از این قاعده مستثنی نیست. حافظه صرفاً یک بلوک متنی دیگر در همان درخواست است.

این تفکیک در شیء usage در هر پاسخ قابل مشاهده است.

"usage": {
  "input_tokens": 412,
  "cache_creation_input_tokens": 0,
  "cache_read_input_tokens": 18240,
  "output_tokens": 236
}

input_tokens فقط توکن‌هایی را می‌شمارد که نه از حافظه پنهان (cache) خوانده شده‌اند و نه برای ایجاد آن استفاده شده‌اند؛ که در عمل به معنای توکن‌های پس از آخرین نقطه شکست حافظه پنهان (cache breakpoint) است. مجموع ورودی برای درخواست برابر است با cache_read_input_tokens به علاوه cache_creation_input_tokens به علاوه input_tokens. یک فایل حافظه که Claude سه نوبت پیش باز کرده است، در هر نوبت پس از آن، درون این مجموع قرار می‌گیرد. تا زمانی که پیشوند حافظه پنهان معتبر باشد، این فایل تحت cache_read_input_tokens قرار می‌گیرد و زمانی که معتبر نباشد، تحت input_tokens محاسبه می‌شود. متن یکسان، اما با دو قیمت بسیار متفاوت. توکن‌های ورودی و خروجی قیمت‌های متفاوتی دارند و حافظه همیشه در سمت ورودی محاسبه می‌شود.

نحوه مشاهده این اعداد در استفاده شخصی

به هیچ عددی از پست‌های وبلاگ، از جمله همین متن، اکتفا نکنید. بلوک حافظه خود را اندازه بگیرید. شمارش توکن رایگان است و محدودیت نرخ (rate limit) خاص خود را دارد، بنابراین این اندازه‌گیری هزینه‌ای برای شما نخواهد داشت.

curl https://api.anthropic.com/v1/messages/count_tokens \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "content-type: application/json" \
  -H "anthropic-version: 2023-06-01" \
  -d '{
    "model": "claude-opus-5",
    "system": "You are a scientist",
    "messages": [{"role": "user", "content": "Hello, Claude"}]
  }'

پاسخ یک عدد است، مانند { "input_tokens": 14 }. یک بار آن را با چسباندن متن حافظه خود در فیلد system و یک بار بدون آن اجرا کنید؛ اختلاف این دو، هزینه‌ای است که آن حافظه در هر نوبت برای شما دارد. دو نکته را در نظر داشته باشید. این شمارش یک تخمین است و توکن‌های اضافی که Anthropic برای بهینه‌سازی‌های سیستمی خود اضافه می‌کند، برای شما محاسبه نمی‌شود. همچنین، شمارش را با مدلی که واقعاً قصد اجرای آن را دارید انجام دهید، زیرا Claude 4.7 و نسخه‌های بعد از آن از توکنایزر جدیدتری استفاده می‌کنند که برای متن مشابه، حدود 30 درصد توکن بیشتری تولید می‌کند.

در داخل Claude Code، همین پرسش بدون نیاز به هیچ دستور curl پاسخ داده می‌شود.

  • دستور /context نشان می‌دهد که در حال حاضر چه چیزی بارگذاری شده است (شامل فایل‌های حافظه)، بنابراین می‌توانید قبل از تایپ هر چیزی، سهم آن‌ها از پنجره کانتکست را ببینید.
  • دستور /memory فایل‌های CLAUDE.md شما را فهرست کرده و پوشه حافظه خودکار را باز می‌کند.
  • دستور /usage مجموع مقادیر نشست (session)، شامل خواندن و نوشتن در کش را چاپ می‌کند.
  • خط وضعیت (status line) می‌تواند میزان استفاده از پنجره کانتکست را به‌طور مداوم نمایش دهد تا رشد آن در حین وقوع قابل مشاهده باشد.

بلاک نشست /usage به این شکل است:

Total cost:            $0.55
Total duration (API):  6m 20s
Total duration (wall): 6h 33m 10s
Total code changes:    0 lines added, 0 lines removed
Usage by model:
   claude-sonnet-4-6:  1.2k input, 5.3k output, 940.0k cache read, 50.0k cache write ($0.55)

خط آخر را با دقت بخوانید. عدد 940.0k در بخش cache read، نشان‌دهنده کل گفتگو و حافظه است که در هر نوبت با نرخ کش مجدداً ارسال می‌شود. عدد 1.2k در بخش input، تنها بخشی است که جدید بوده است. Claude Code این مبلغ دلاری را به‌صورت محلی و بر اساس قیمت‌های لیست محاسبه می‌کند، بنابراین تخفیف‌های شما را نادیده می‌گیرد و ممکن است با صورت‌حساب نهایی متفاوت باشد. صفحه Usage در Claude Console مرجع اصلی و دقیق برای این اعداد است.

سپس مقایسه را مستقیماً انجام دهید. همان پرسش آغازین را در دو نشست جدید مطرح کنید؛ یکی به صورت عادی و دیگری با خاموش بودن حافظه خودکار.

CLAUDE_CODE_DISABLE_AUTO_MEMORY=1 claude

دستور /context را در هر کدام اجرا کرده و ورودی فایل‌های حافظه را مقایسه کنید. اختلاف این دو، هزینه‌ای است که حافظه انباشته‌شده شما در ابتدای هر نشست، پیش از انجام هر کاری، به شما تحمیل می‌کند. مطالعه تحلیل کامل نحوه مصرف توکن در Claude Code در کنار این دو عدد، بسیار مفید خواهد بود.

هزینه بازخوانی حافظه به ازای هر میلیون توکن چقدر است؟

کش کردن پرامپت (Prompt caching) دلیل این است که یک بلوک حافظه مشابه، ممکن است در یک نوبت ده برابر نوبت دیگر هزینه داشته باشد. Anthropic نرخ‌های کش را به صورت ضریبی از قیمت پایه ورودی هر مدل منتشر می‌کند، بنابراین این رابطه حتی با تغییر قیمت‌های دلاری نیز برقرار می‌ماند.

ChartAnthropic's published prompt caching rates, as a multiple of base input price
The data behind this chart
[
  {
    "label": "Base input",
    "price_multiple": 1
  },
  {
    "label": "5 minute cache write",
    "price_multiple": 1.25
  },
  {
    "label": "1 hour cache write",
    "price_multiple": 2
  },
  {
    "label": "Cache read",
    "price_multiple": 0.1
  }
]

هزینه خواندن از کش برابر با 0.1 برابر قیمت پایه ورودی است. نوشتن یک ورودی با طول عمر 5 دقیقه، 1.25 برابر قیمت پایه و طول عمر 1 ساعته، 2 برابر قیمت پایه هزینه دارد. Anthropic نقطه سربه‌سر را به وضوح بیان می‌کند: کش کردن پس از یک بار خواندن در مدت زمان 5 دقیقه، یا پس از دو بار خواندن در مدت زمان 1 ساعت، صرفه اقتصادی پیدا می‌کند. نقطه سربه‌سر برای کش کردن پرامپت محاسباتی است که باید پیش از تصمیم‌گیری درباره محل قرارگیری حافظه انجام دهید.

این ضرایب، تعداد دفعات بازخوانی را به یک مسئله ریاضی تبدیل می‌کنند. بلوک بعدی، محاسباتی است که از ضرایب منتشرشده در بالا به دست آمده و اندازه‌گیری یک workload واقعی نیست. این بخش، یک بلوک حافظه را در یک نشست 100 نوبتی به سه روش قیمت‌گذاری می‌کند که به صورت تعداد توکن‌های معادل با نرخ پایه ورودی بیان شده است.

ChartA memory block over 100 turns, expressed as base-rate input tokens
The data behind this chart
[
  {
    "label": "4,000 tokens, never cached",
    "base_rate_equivalent_tokens": "400,000"
  },
  {
    "label": "4,000 tokens, 1 write and 99 reads",
    "base_rate_equivalent_tokens": "44,600"
  },
  {
    "label": "1,000 tokens, 1 write and 99 reads",
    "base_rate_equivalent_tokens": "11,150"
  }
]

یک بلوک حافظه 4,000 توکنی که در هر 100 نوبت از کش استفاده نمی‌کند (cache miss)، هزینه‌ای معادل 400,000 توکن با نرخ پایه دارد. همان بلوک با یک بار نوشتن در کش 5 دقیقه‌ای و 99 بار خواندن از آن، هزینه‌ای معادل 44,600 دارد. اگر آن را به یک‌چهارم اندازه اصلی کاهش دهید و کش کردن را حفظ کنید، هزینه آن معادل 11,150 خواهد بود. قابلیت مورد نظر در این 3 ردیف تغییری نکرده است؛ تنها رفتار بازخوانی تغییر کرده است. این‌ها همچنان تعداد توکن هستند و نه مبلغ ریالی/دلاری، و تبدیل تعداد توکن به رقمی در صورت‌حساب ماهانه با یک ضرب ساده در نرخ «به ازای هر میلیون توکن» مدل شما انجام می‌شود. آن نرخ توسط مدلی که اجرا می‌کنید تعیین می‌شود؛ بنابراین اگر قرار است ایجنت روی Claude Fable 5 اجرا شود، از نرخ‌های منتشرشده به ازای هر میلیون توکن و کاربردهای مناسب آن شروع کنید. اگر ارائه‌دهنده سرویس هنوز مشخص نیست و فقط مدل را انتخاب کرده‌اید، مقایسه هزینه کارهای مشابه در API مدل Claude و ChatGPT نشان می‌دهد که این ضرب چگونه نتایج متفاوتی ایجاد می‌کند؛ ایجنت‌هایی که حافظه زیادی مصرف می‌کنند، به شدت تحت تأثیر هزینه‌های بخش ورودی (input) قرار می‌گیرند.

ردیف دوم فرض می‌کند که هر یک از 99 درخواست بعدی، در حالی می‌رسند که ورودی کش هنوز فعال است. این همان فرضی است که اکثر صورت‌حساب‌های واقعی در آن دچار خطا می‌شوند.

چرا هزینه یک پرسش مشابه پس از یک وقفه افزایش می‌یابد؟

هر ورودی در cache دارای یک طول عمر مشخص است و زمان‌سنج آن از لحظه ثبت یا خواندن درخواست آغاز می‌شود. مقدار پیش‌فرض این زمان 5 دقیقه است. گزینه 1 ساعته، هزینه نوشتن 2 برابری که در بالا ذکر شد را به همراه دارد. در Claude Code، طول عمر در اشتراک‌های عادی یک ساعت است، اما به محض استفاده از اعتبار مصرفی (usage credits)، این زمان به 5 دقیقه کاهش می‌یابد؛ در استفاده از API key یا ارائه‌دهندگان ابری نیز مقدار پیش‌فرض 5 دقیقه است. تنظیم ENABLE_PROMPT_CACHING_1H=1 باعث می‌شود طول عمر یک ساعته حتی در زمان استفاده از اعتبار مصرفی نیز حفظ شود.

بنابراین، یک پرسش تک‌خطی که در جلسه‌ای که هنگام ناهار باز گذاشته‌اید تایپ می‌کنید، گران تمام می‌شود؛ زیرا ورودی cache در مدتی که دور بوده‌اید منقضی شده است. کل پیشوند (prefix)، شامل حافظه، دوباره با نرخ ورودی پایه پردازش شده و مجدداً در cache نوشته می‌شود. طول این وقفه تعیین‌کننده آن قیمت است.

شما می‌توانید به جای پذیرش این موضوع، آن را بررسی کنید. در طرح‌های Pro، Max، Team یا Enterprise، تفکیک /usage هر رفتاری را که مسئول 10 درصد یا بیشتر از مصرف اخیر باشد مشخص می‌کند و هم context طولانی و هم cache missها با نام در آنجا ظاهر می‌شوند. در API، افزایش cache_creation_input_tokens به اندازه کامل پیشوند خود را در اولین درخواست پس از یک دوره سکوت مشاهده کنید.

چه چیزی به‌طور نامحسوس کش را باطل می‌کند

پیشوند کش‌شده به ترتیب شامل ابزارها، سپس سیستم و در نهایت پیام‌ها است. تغییر در هر سطح، آن سطح و تمام سطوح پس از آن را باطل می‌کند. ویرایش تعریف یک ابزار، کل کش را دور می‌ریزد. ویرایش پرامپت سیستم، کش سیستم و پیام‌ها را دور می‌ریزد.

این همان دامی است که برای کسانی که حافظه را در پرامپت سیستم نگه می‌دارند و همزمان با یادگیری عامل (agent) آن را بازنویسی می‌کنند، وجود دارد. هر بازنویسی، نسخه کش‌شدهٔ تمام موارد پس از خود را دور می‌ریزد، بنابراین درخواست بعدی دوباره هزینه کامل نوشتن را متحمل می‌شود. مطالب ثابت را در ابتدا نگه دارید و آن‌ها را تغییر ندهید، و اجازه دهید مطالب متغیر در انتهای لیست پیام‌ها قرار بگیرند که باطل کردن آن‌ها هزینه کمی دارد.

یک خطای دوم و نامحسوس‌تر نیز وجود دارد. هر مدل یک حداقل پیشوند قابل کش شدن دارد: 512 توکن برای Claude Opus 5، 1,024 توکن برای Claude Sonnet 5، و 4,096 توکن برای Claude Haiku 4.5، طبق اطلاعات منتشر شده در اوت 2026. مستندات Anthropic به‌صراحت درباره آنچه زیر این مقدار رخ می‌دهد می‌گوید: «هر درخواستی برای کش کردن کمتر از این تعداد توکن، بدون کش شدن پردازش می‌شود و هیچ خطایی بازگردانده نمی‌شود.» بنابراین، یک فایل حافظه کوچک که با cache_control علامت‌گذاری شده است، عملاً هیچ کاری انجام نمی‌دهد و این اتفاق بی‌صدا رخ می‌دهد. نشانه‌ای که می‌توانید مشاهده کنید این است که cache_creation_input_tokens روی 0 باقی می‌ماند، در حالی که پرامپت شما به‌وضوح حاوی یک breakpoint است.

پاک‌سازی حافظه‌ای که دیگر کارایی ندارد

هر خط از حافظه در هر دور از گفتگو، توکن مصرف می‌کند؛ بنابراین پرسش اصلی برای هر خط این است که آیا اخیراً در تغییر پاسخ‌ها نقش داشته است یا خیر. Claude Code این محدودیت‌ها را ملموس می‌کند. سعی کنید حجم فایل CLAUDE.md را زیر 200 خط نگه دارید، زیرا فایل‌های طولانی‌تر، فضای کانتکست بیشتری اشغال کرده و دقت Claude در پیروی از دستورالعمل‌ها را کاهش می‌دهند. MEMORY.md در زمان بارگذاری به 200 خط اول یا 25KB محدود شده است و هر محتوایی فراتر از این حد در شروع نشست بعدی حذف می‌شود؛ بنابراین یک ایندکس بیش‌ازحد بزرگ، هم توکن هدر می‌دهد و هم عملاً بی‌فایده است.

دو عادت به حفظ حجم کم فایل کمک می‌کند. جزئیات را از ایندکس خارج کرده و به فایل‌های موضوعی منتقل کنید؛ فایل‌هایی که Claude به‌جای بارگذاری در شروع کار، در صورت نیاز آن‌ها را می‌خواند. دستورالعمل‌های گردش کار را از CLAUDE.md خارج کرده و به بخش مهارت‌ها (skills) منتقل کنید که فقط هنگام فراخوانی بارگذاری می‌شوند. برای فایل‌های حافظه‌ای که از قبل دارای frontmatter هستند، Claude Code زمان نوشتن را در فیلد modified با فرمت ISO 8601 در نسخه 2.1.214 یا بالاتر ثبت می‌کند. این برچسب زمانی، سریع‌ترین راه برای شناسایی اطلاعاتی است که اعتبار خود را از دست داده‌اند. پاک‌سازی حافظه قدیمی عامل این فرایند بازبینی را با جزئیات بیشتری بررسی می‌کند.

زمانی که بازیابی اطلاعات از بارگذاری کامل در کانتکست بهینه‌تر است

ابزار حافظه برای پشتیبانی از بازیابی اطلاعات در لحظه (just-in-time) طراحی شده است. به‌جای بارگذاری همه چیز در ابتدای کار، ایجنت آنچه را می‌آموزد ثبت می‌کند و تنها زمانی که یک وظیفه به فایل نیاز داشته باشد، آن را می‌خواند. این رویکرد محاسبات را تغییر می‌دهد؛ زیرا خواندن یک فایل تنها یک‌بار هزینه توکن دارد و سپس در پیشوند کش‌شده (cached prefix) باقی می‌ماند، در حالی که یک بلوک که به‌طور دائم بارگذاری شده، در هر نوبت هزینه مصرف می‌کند.

یک قاعده ساده از دو نمودار بالا استخراج می‌شود. متنی که تقریباً در هر نوبت استفاده می‌شود، باید در پیشوند کش‌شده و پایدار قرار گیرد. متنی که در یک نوبت از هر بیست نوبت استفاده می‌شود، باید پشت یک فراخوانی view قرار بگیرد. نقطه سربه‌سر (break-even) با تعداد دفعات تکرار شما تغییر می‌کند، نه با تعرفه‌های Anthropic.

در API، شما همچنین می‌توانید به پلتفرم اجازه دهید گفتگو را کوتاه کند. ویرایش کانتکست، نتایج قدیمی ابزارها را پس از عبور گفتگو از آستانه‌ای که شما تعیین کرده‌اید، پاک می‌کند.

{
  "edits": [
    {
      "type": "clear_tool_uses_20250919",
      "trigger": {"type": "input_tokens", "value": 30000},
      "keep": {"type": "tool_uses", "value": 3},
      "clear_at_least": {"type": "input_tokens", "value": 5000}
    }
  ]
}

مقادیر پیش‌فرض شامل آستانه 100,000 توکن ورودی و نگهداری 3 استفاده از ابزار است. پیش از فعال‌سازی، تعامل با کش را مطالعه کنید: پاک‌سازی محتوا باعث ابطال پیشوند کش‌شده در نقطه پاک‌سازی می‌شود، بنابراین در درخواست بعدی هزینه نوشتن در کش را پرداخت خواهید کرد. این همان دلیلی است که clear_at_least برای آن وجود دارد. این قابلیت پاک‌سازی را تا زمانی که میزان صرفه‌جویی به‌اندازه کافی برای توجیه هزینه نوشتن بزرگ باشد، به تعویق می‌اندازد. پاسخ سیستم دقیقاً گزارش می‌دهد که چه اتفاقی تحت context_management رخ داده است، با استفاده از cleared_tool_uses و cleared_input_tokens؛ بنابراین این مبادله به‌جای تئوری بودن، قابل اندازه‌گیری است. مدیریت پنجره کانتکست در Claude Code همین ایده را در یک نشست کدنویسی اعمال می‌کند.

چه مواردی ردیف هزینه جداگانه دارند

حافظه (Memory) هزینه مستقلی ندارد، اما برخی قابلیت‌ها واقعاً هزینه‌بر هستند و آگاهی از آن‌ها اهمیت دارد. این‌ها نرخ‌های منتشرشده برای Claude API در اوت 2026 هستند. برخی عملیات هیچ هزینه‌ای ندارند، اما هیچ سطح رایگانی برای Claude API وجود ندارد و تنها یک اعتبار اولیه هنگام ثبت‌نام ارائه می‌شود؛ بنابراین تمام موارد زیر از همان اولین درخواست، هزینه واقعی محسوب می‌شوند.

  • جستجوی وب (Web search): مبلغ 10 دلار به ازای هر 1,000 جستجو، به‌علاوه هزینه توکن معمولی برای تمام محتوایی که جستجو به کانتکست اضافه می‌کند.
  • اجرای کد (Code execution): ماهانه 1,550 ساعت رایگان برای هر سازمان، و پس از آن 0.05 دلار به ازای هر ساعت برای هر کانتینر. در صورت استفاده همزمان با جستجوی وب یا دریافت محتوای وب (Web fetch)، رایگان است.
  • ایجنت‌های مدیریت‌شده Claude (Claude Managed Agents): زمان اجرای نشست (session runtime) با نرخ 0.08 دلار به ازای هر ساعت-نشست، علاوه بر هزینه‌های معمول توکن.
  • دریافت محتوای وب (Web fetch): بدون هزینه اضافی، تنها هزینه توکن محتوای دریافت‌شده محاسبه می‌شود.

حافظه در هیچ‌کدام از این ردیف‌ها قرار نمی‌گیرد. حافظه در شمارش توکن‌های ورودی شما ظاهر می‌شود؛ دقیقاً همان‌جایی که می‌توانید آن را اندازه‌گیری کنید و دقیقاً همان‌جایی که هرس کردن (pruning) و کش کردن (caching) می‌توانند آن را کاهش دهند. اگر در حال بودجه‌بندی برای ایجنتی هستید که به‌صورت خودکار روی یک سرور مجازی (VPS) اجرا می‌شود، کنترل‌های هزینه برای یک ایجنت هوش مصنوعی روی VPS گام بعدی است که باید پیاده‌سازی کنید؛ زیرا ایجنتی که فایل حافظه آن به‌طور مداوم رشد می‌کند و هرس نمی‌شود، بدون اینکه گزارشی از آن دریافت کنید، هر هفته گران‌تر می‌شود.

FAQ

آیا برای قابلیت‌های حافظه Claude هزینه جداگانه‌ای دریافت می‌شود؟

خیر. لیست قیمت Anthropic شامل نرخ‌هایی به ازای هر میلیون توکن ورودی، هر میلیون توکن خروجی و ضرایب prompt caching است و هیچ ردیفی برای حافظه ندارد. در API مربوط به Claude، ابزار حافظه سمت کلاینت (client-side) است؛ بنابراین فایل‌ها روی فضای ذخیره‌سازی‌ای قرار می‌گیرند که شما از قبل هزینه آن را پرداخت کرده‌اید. آنچه حافظه اضافه می‌کند، توکن‌های ورودی است که در هر نوبت (turn) که این داده‌ها را حمل می‌کنند، با نرخ عادی ورودی مدل محاسبه می‌شوند.

آیا خاموش کردن حافظه باعث ارزان‌تر شدن Claude می‌شود؟

این کار تعداد توکن‌های هر درخواست را کاهش می‌دهد که منجر به کاهش هزینه هر درخواست می‌شود. اینکه آیا این کار در مجموع باعث صرفه‌جویی در هزینه می‌شود یا خیر، به اتفاقات بعدی بستگی دارد. اگر Claude مجبور شود سه فایل را دوباره بخواند و دو سوال از شما بپرسد تا آنچه را که حافظه قبلاً در اختیار داشت بازسازی کند، هزینه آن توکن‌ها بیشتر از هزینه حافظه خواهد بود. به‌جای حدس زدن، اندازه‌گیری کنید: /context را در یک نشست با حافظه خودکار فعال و در نشستی که با CLAUDE_CODE_DISABLE_AUTO_MEMORY=1 شروع شده اجرا کنید، سپس مجموع توکن‌های مصرف‌شده برای یک کار مشابه را مقایسه کنید.

چرا با اینکه تغییری ایجاد نکردم، میزان مصرف من افزایش یافت؟

شایع‌ترین علت، cache miss پس از یک وقفه است. ورودی‌های کش به‌طور پیش‌فرض 5 دقیقه یا در تنظیمات گسترده یک ساعت زنده می‌مانند؛ بنابراین اولین درخواست پس از یک وقفه، کل پیشوند (prefix) شما را با نرخ پایه ورودی دوباره پردازش کرده و مجدداً می‌نویسد. دومین علت رایج، ویرایش پیشوند است: تغییر تعریف یک ابزار، کل کش را باطل می‌کند و تغییر system prompt، کش سیستم و پیام‌ها را باطل می‌کند. در طرح‌های اشتراکی، بخش /usage زمانی که این رفتار 10 درصد یا بیشتر از مصرف اخیر را تشکیل دهد، آن را گزارش می‌کند.

آیا حافظه باید در system prompt قرار بگیرد یا پشت یک فراخوانی ابزار (tool call)؟

وقتی تقریباً در هر نوبت از حافظه استفاده می‌شود، آن را در system prompt قرار دهید؛ زیرا در این صورت در پیشوند کش‌شده قرار می‌گیرد و با نرخ خواندن کش محاسبه می‌شود. وقتی فقط برخی از کارها به آن نیاز دارند، آن را پشت یک فراخوانی view قرار دهید؛ زیرا فایلی که یک‌بار خوانده می‌شود، توکن‌هایش فقط یک‌بار محاسبه می‌شود، نه در هر نوبت. عدد تعیین‌کننده، تعداد دفعات تکرار (replay count) شماست و شیء usage این عدد را مستقیماً به شما می‌دهد.

آیا قابلیت‌های حافظه در محدودیت‌های مصرف اشتراک لحاظ می‌شوند؟

بله، به‌طور غیرمستقیم؛ زیرا محدودیت‌های اشتراک توسط توکن‌هایی که هر درخواست حمل می‌کند، مصرف می‌شوند. مستندات راهنمای Anthropic بیان می‌کند که مکالمات طولانی‌تر که مدیریت خودکار محتوا (context management) را فعال می‌کنند، بخش بیشتری از محدودیت مصرف شما را اشغال می‌کنند. حافظه باعث می‌شود هر درخواست کمی طولانی‌تر شود و یک نشست طولانی، آن طول را در هر نوبت تکرار می‌کند. نحوه عملکرد واقعی محدودیت‌های مصرف Claude توضیح می‌دهد که چه چیزی و در چه زمانی بازنشانی می‌شود.