0Pricing
AI Agents · درس

الوعي بالتكلفة: عدّ الرموز والميزانيات

عدّ الرموز باستخدام tiktoken، وقدّر التكلفة قبل الإرسال، وطبّق ميزانيات لكل طلب ولكل يوم.

الوعي بالتكلفة: عدّ الرموز والميزانيات درس مجاني في AI Agents على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في AI Agents، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة AI Agents 4 دروس في المجموع.

لماذا يهم عدّ الرموز

أنتم تدفعون مقابل كل رمز. وقد تنفق حلقة وكيل لا نهائية من دون ميزانية للرموز مئات الدولارات خلال دقائق.

يُعدّ عدّ الرموز أهم عادة منفردة للتحكم في التكلفة.

ما الرمز؟

الرمز هو جزء من النص يعالجه النموذج. القواعد التقريبية العامة للغة الإنجليزية:

  • الرمز الواحد يساوي نحو 4 أحرف
  • الرمز الواحد يساوي نحو 0.75 كلمة
  • 100 رمز تساوي نحو 75 كلمة

تستخدم التعليمات البرمجية والرموز التعبيرية والنصوص غير الإنجليزية رموزًا أكثر لكل حرف.

عدّ الرموز باستخدام tiktoken (OpenAI)

يوفّر OpenAI أداة تقسيم رموز دقيقة:

# pip install tiktoken
import tiktoken

enc = tiktoken.encoding_for_model('gpt-4o-mini')
tokens = enc.encode('Hello, world!')
print(len(tokens))   # 4
print(tokens)        # [9906, 11, 1917, 0]

عدّ الرموز في الرسائل

يشمل العدد الكامل النفقات الإضافية لبنية الرسالة:

def count_message_tokens(messages, model='gpt-4o-mini'):
    enc = tiktoken.encoding_for_model(model)
    total = 0
    for m in messages:
        total += 4  # role + structural
        total += len(enc.encode(m['content']))
    return total + 2  # priming

عدّ الرموز باستخدام Anthropic

يوفّر Anthropic نقطة نهاية لحساب العدد على الخادم:

count = client.messages.count_tokens(
    model='claude-sonnet-4-5',
    system='You are helpful.',
    messages=[{'role': 'user', 'content': 'Hello'}],
)
print(count.input_tokens)

تقدير التكلفة قبل الإرسال

اضربوا عدد الرموز في سعر الرمز (من صفحة الأسعار الخاصة بالمزود):

INPUT_PRICE = 0.150 / 1_000_000   # gpt-4o-mini: $0.15 / 1M input tokens
OUTPUT_PRICE = 0.600 / 1_000_000

input_tokens = count_message_tokens(messages)
est_input_cost = input_tokens * INPUT_PRICE
print(f'Estimated input cost: ${est_input_cost:.6f}')

تتبّع التكلفة الفعلية

بعد كل استدعاء، اجمعوا بيانات الاستخدام:

total_cost = 0

response = client.chat.completions.create(...)
cost = (
    response.usage.prompt_tokens * INPUT_PRICE +
    response.usage.completion_tokens * OUTPUT_PRICE
)
total_cost += cost

الميزانيات لكل تشغيل

ضعوا حدًا أقصى صارمًا لكل تشغيل للوكيل:

MAX_COST_PER_RUN = 0.50  # USD

if total_cost > MAX_COST_PER_RUN:
    raise BudgetExceeded(f'Cost {total_cost} exceeds limit')

الميزانيات اليومية لكل مستخدم

تتبّعوا التكلفة لكل مستخدم في Redis وأعيدوا ضبطها يوميًا:

key = f'cost:{user_id}:{today_date}'
current = float(redis.get(key) or 0)
if current + cost > 5.0:
    raise QuotaExceeded()
redis.incrbyfloat(key, cost)
redis.expireat(key, midnight_tomorrow_ts)

تحديد حد أقصى لـ max_tokens لكل استدعاء

أكبر مصدر للتكلفة غير المقصودة هو إنشاء استجابة مكوّنة من 50,000 رمز. ضعوا لها حدًا أقصى:

response = client.chat.completions.create(
    model='gpt-4o-mini',
    messages=messages,
    max_tokens=2048,  # never more than 2k output
)

تحديد حد للخطوات في الوكلاء

اجمعوا بين حدود الرموز وحدّ للخطوات (الحد الأقصى للتكرارات):

MAX_STEPS = 20
for step in range(MAX_STEPS):
    response = run_step(...)
    if response.is_final():
        break
else:
    raise StepLimitExceeded()

حد رموز المخرجات

لماذا يجب ضبط max_tokens صراحةً؟

مراجعة

عدّ الرموز، وmax_tokens لكل استدعاء، والميزانيات لكل تشغيل، والحصص لكل مستخدم، وحدود الخطوات. اجمعوا بين هذه العناصر الخمسة كلها لضمان أمان بيئة الإنتاج.

الأسئلة الشائعة

هل درس «الوعي بالتكلفة: عدّ الرموز والميزانيات» مجاني؟

نعم — نص درس «الوعي بالتكلفة: عدّ الرموز والميزانيات» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة AI Agents، انتقل إلى CoddyKit PRO. تتضمن دورة AI Agents 4 دروس في المجموع.

ماذا ستتعلم في «الوعي بالتكلفة: عدّ الرموز والميزانيات»؟

عدّ الرموز باستخدام tiktoken، وقدّر التكلفة قبل الإرسال، وطبّق ميزانيات لكل طلب ولكل يوم. تتمرن على AI Agents مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ AI Agents؟

لا تُشترط خبرة سابقة. AI Agents على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.

كم من الوقت يستغرق درس «الوعي بالتكلفة: عدّ الرموز والميزانيات»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس AI Agents هذا؟

نعم. كل درس في AI Agents يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. استدعاء OpenAI API: chat.completions
  2. استدعاء Anthropic API: messages
  3. بث الاستجابات (SSE)
  4. الوعي بالتكلفة: عدّ الرموز والميزانيات
← العودة إلى AI Agents