انتقل إلى المحتوى
كل التوثيق

وكلاء البرمجة

إعداد OpenCode

يقبل OpenCode أي واجهة متوافقة مع OpenAI كمزوّد مخصص. أضف nokeep في opencode.json، وجرّب بالمفتاح المجاني، ثم شغّل وكيلك على نموذج بسياق بحجم مليون توكن ومدخلات مخبّأة رخيصة.

تم التحقق في 29 أكتوبر 2026

القيم

الرابط الأساسي
https://nokeep.ai/v1
مفتاح API
sk-nokeep-test to test, then your own sk-nokeep-… key
النموذج
deepseek-v4.1-flash-uncensored
نافذة السياق
1000000
أقصى عدد توكنات للإخراج
32768

ابدأ بالمفتاح المجاني للاختبار: يرد على كل طلب برسالة ثابتة واحدة دون استدعاءات أدوات، وهذا يثبت صحة الرابط والمفتاح دون إنفاق أي شيء. ثم الصق مفتاحك من لوحة التحكم. رصيد من $5، دون اشتراك.

الاتصال

  1. في OpenCode، شغّل /connect، ومرّر إلى Other واختره.
  2. أدخل nokeep كمعرّف للمزوّد.
  3. الصق sk-nokeep-test كمفتاح API. يحفظه OpenCode لهذا المعرّف.
  4. أضف المزوّد أدناه إلى opencode.json في مشروعك، أو إلى ~/.config/opencode/opencode.json لكل المشاريع.
  5. شغّل /models واختر DeepSeek V4.1 Flash Uncensored.
  6. أرسل أي رسالة. إذا بدأ الرد بـ“Connected to” فالإعداد يعمل.
  7. شغّل /connect مرة أخرى بالمعرّف نفسه، والصق مفتاحك من لوحة التحكم.
opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "model": "nokeep/deepseek-v4.1-flash-uncensored",
  "provider": {
    "nokeep": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "nokeep",
      "options": {
        "baseURL": "https://nokeep.ai/v1"
      },
      "models": {
        "deepseek-v4.1-flash-uncensored": {
          "name": "DeepSeek V4.1 Flash Uncensored",
          "limit": {
            "context": 1000000,
            "output": 32768
          }
        },
        "glm-5.3-flash-uncensored": {
          "name": "GLM 5.3 Flash Uncensored",
          "limit": {
            "context": 128000,
            "output": 32768
          }
        }
      }
    }
  }
}

يجب أن يتطابق معرّف المزوّد في /connect مع المفتاح تحت provider: nokeep في الاثنين.

لقراءة المفتاح من البيئة بدلًا من /connect، أضف "apiKey": "{env:NOKEEP_API_KEY}" تحت options.

إعدادات تستحق المعرفة

  • يخبر limit.context OpenCode بالمساحة المتبقية، ليتمكن من ضغط المحادثة قبل أن تفيض. النموذج المخصص لا حد له ما لم تضبطه.
  • يُرسل limit.output سقفًا للتوكنات في كل رد. تكفي 32,768 للتعديلات الطويلة، ويسمح DeepSeek بما يصل إلى 131,072.
  • المفتاح model على المستوى الأعلى يجعل DeepSeek الافتراضي، بصيغة provider/model.
  • تعمل استدعاءات الأدوات كما هي: يرسل OpenCode أدواته بصيغة OpenAI، ويرد DeepSeek بالاستدعاءات.

أي نموذج

deepseek-v4.1-flash-uncensoredglm-5.3-flash-uncensored
السياق1,000,000 توكن128,000 توكن
أطول رد131,072 توكنًا32,768 توكنًا
استدعاءات الأدواتنعم، كل tool_choiceنعم، tool_choice بقيمة auto أو none
يقرأ لقطات الشاشةنعم، حتى 10 لكل طلبلا، نص فقط
التفكيرمغلق إلا إذا طُلبدائمًا، بإيجاز
لكل مليون توكن$0.45 داخل · $0.011 مخبّأ · $1.75 خارج$0.20 داخل · $0.04 مخبّأ · $0.65 خارج

استخدم DeepSeek لأعمال الوكيل. يتسع مستودع كامل في سياقه، ويستدعي الأدوات بكل صيغها، ويُفوتر السجل الذي يعيد الوكيل إرساله في كل استدعاء بسعر المخبّأ $0.011 لكل مليون. استخدم GLM للمهام القصيرة المنفردة التي لا تعيد إرسال سجل طويل، حيث تفوز أسعاره الأقل للإدخال الجديد والإخراج.

تمت إزالة الرفض من أوزان النموذجين، لذا فالعمل قرب موضوع حساس، مثل اختبار الأمان على أنظمتك أو أدوات الإشراف، يحصل على كود بدلًا من الرفض. قارن النماذج.

التفكير

يرد DeepSeek فورًا ما لم يذكر الطلب reasoning_effort، وهذا يناسب حلقة التعديل والتشغيل السريعة للوكيل. للتخطيط أو لخطأ صعب، اطلب منه التفكير: يقبل none وlow وhigh وmax. تُشغَّل القيم minimal وmedium وxhigh في التطبيقات الأخرى على أقرب هذه القيم؛ وأي قيمة أخرى تُرفض بـ400 invalid_reasoning_effort. يُفوتر التفكير كإخراج.

في OpenCode، أضف متغيرًا يرسل مستوى جهد، ثم انتقل إليه باختصار لوحة المفاتيح variant_cycle حين تحتاج المهمة إلى تفكير. ادمج هذا في المزوّد أعلاه.

opencode.json
{
  "provider": {
    "nokeep": {
      "models": {
        "deepseek-v4.1-flash-uncensored": {
          "variants": {
            "think": {
              "reasoningEffort": "high"
            }
          }
        }
      }
    }
  }
}

تكلفة الجلسة

يرسل الوكيل المحادثة كاملة في كل استدعاء: التعليمات والملفات التي قرأها وكل خطوة سبقت. لنفترض أن الاستدعاء يرسل 60,000 توكن، منها 55,000 هي البداية نفسها من الاستدعاء السابق، ويكتب 1,000. على DeepSeek يكلّف هذا الاستدعاء نحو $0.0046، فتكون 200 استدعاء نحو $0.92. دون مخبّأ يكون الاستدعاء نفسه $0.0288.

  • التخزين المؤقت تلقائي: لا شيء لتفعيله. البداية التي تبلغ نحو 1,000 توكن أو أكثر، والمتكررة خلال دقائق قليلة، تُفوتر بسعر المخبّأ.
  • يحجز كل استدعاء تكلفته المحتملة، أي مطالبته وأقصى إخراج له، ثم يُسوّى على ما استخدمه فعلًا. عند أقصى إخراج 32,768 توكنًا يكون جزء الإخراج من الحجز نحو $0.0573.
  • تُظهر لوحة التحكم التوكنات الحقيقية لكل استدعاء، والتوكنات المخبّأة، والرصيد. قد لا يعرف عداد التكلفة في الوكيل سعر المخبّأ، فيقرأ مرتفعًا.

كيف تعمل الفوترة.

إذا لم يعمل

ما يعرضه الوكيلالحل
401المفتاح خاطئ أو ملغى. الصقه من جديد دون مسافات أو علامات تنصيص.
402نفد الرصيد المدفوع في الحساب. اشحن من $5 في لوحة التحكم، وفعّل التعبئة التلقائية هناك حتى لا تتوقف مهمة طويلة في منتصفها: عندما ينخفض الرصيد عن المبلغ الذي تختاره، يضيف رصيدًا ببطاقتك المحفوظة.
429تجاوزت 120 طلبًا في الدقيقة على مفتاح واحد، أو تجاوزت سقفًا يوميًا وضعته عليه. الوكلاء الذين يشغّلون عدة وكلاء فرعيين معًا يصطدمون بهذا أولًا. انتظر الثواني المذكورة في Retry-After، أو ارفع السقف من لوحة التحكم، أو امنح كل وكيل مفتاحه الخاص.
400 invalid_reasoning_effortأرسل الوكيل جهدًا لا يقبله النموذج. يقبل DeepSeek القيم none وlow وhigh وmax، ويقبل GLM القيمتين low أو high.
404الرابط خاطئ أو فيه المسار مرتين. استخدم https://nokeep.ai/v1 دون /chat/completions، وتحقق من معرّف النموذج في /v1/models.
503النموذج مشغول. أعد المحاولة بعد ثوانٍ؛ لم يُخصم شيء.
رسالة الاختبار الثابتةالإعداد يعمل. استبدل مفتاحك لتحصل على ردود حقيقية.

كل خطأ مدرج مع حله في الأخطاء.

أسئلة

هل يُحفظ كودي؟

لا. نحتفظ بسطر واحد من الأعداد لكل استدعاء: الوقت والمفتاح والنموذج والتوكنات والرصيد والحالة. لا نحتفظ أبدًا بالمطالبة أو الملفات أو الرد. ما نحتفظ به.

لماذا يكلّف الاستدعاء الثاني أقل من الأول؟

يبدأ الاستدعاء الثاني بالطريقة نفسها التي بدأ بها الأول، فتُقرأ تلك البداية من المخبّأ بسعر $0.011 لكل مليون توكن بدلًا من $0.45. معظم إدخال الوكيل يُخبَّأ بعد استدعائه الأول.

هل يمكنني الاحتفاظ بمزوّديّ الآخرين؟

نعم. nokeep مجرد مدخل إضافي تحت provider، و/models يسرده إلى جانب البقية.