NsfwAiApi/الدليل
ما هو أفضل نموذج LLM محلي لأدوار التمثيل، أم واجهة برمجة API مستضافة؟
أفضل نموذج لغوي محلي لأدوار التمثيل هو أكبر نموذج بدون رقابة يتسع له معالج الرسومات بجودة تقبلها، وهذا الجواب يتغير كل بضعة أشهر. إذا كنت تفضل تخطي الأجهزة، فإن نقطة النهاية المستضافة تمنحك نفس سير عمل الدردشة بتغيير عنوان URL فقط.

محلي أو مستضاف: القرار السريع
اختر المحلي إذا كنت تمتلك بالفعل بطاقة رسومات (GPU) قادرة، وتريد كل شيء دون اتصال، أو تستمتع بضبط النماذج. اختر المستضاف إذا كنت تريد ذاكرة طويلة في القصة، أو تستخدم جهاز لابتوب أو هاتفًا، أو تفضل إنفاق دقائق بدلاً من عطلات نهاية الأسبوع في الإعداد. يقوم الكثير من الأشخاص بكليهما: نموذج محلي للتجارب الخاصة، ومستضاف للحملات الطويلة.
| العامل | نموذج محلي | واجهة برمجة التطبيقات المستضافة |
|---|---|---|
| نموذج التكلفة | الأجهزة والطاقة، بدون رسوم لكل رمز | ادفع لكل رمز من رصيد مسبق الدفع |
| حجم النموذج | محدود بذاكرة بطاقة الرسومات | ما يشغله المزود |
| طول السياق | محدود بالذاكرة، لأن نافذة السياق الأطول تحتاج المزيد منها | 100,000 رمز هنا |
| الخصوصية | لا شيء يغادر جهازك | الموجّهات تنتقل إلى المزود؛ هنا لا تُستخدم للتدريب |
| الإعداد | وقت التشغيل، الأوزان، التكميم، التحديثات | عنوان URL أساسي ومفتاح |
| يعمل من أي جهاز | فقط إذا كنت تعرض جهازك الخاص | نعم |
ما يقرر فعليًا أفضل نموذج محلي
تصنيفات أفضل نموذج لغوي كبير محلي لأدوار التمثيل تصبح قديمة بسرعة، ولا يوجد اسم واحد يناسب الجميع. بدلاً من ذلك، قيّم المرشحين بناءً على الأشياء التي تظهر في جلسة حقيقية.
- سلوك الرفض. تم ضبط العديد من النماذج الأساسية والتعليمية لرفض مواضيع معينة. النماذج المُعدّلة خصيصاً للأدب الخيالي أو التي تُصنّف كـ uncensored ترفض عادةً أقل، لكن الجودة تختلف، لذا اختبرها على مشاهدك الخاصة.
- البقاء في الشخصية. انتبه لنموذج ينحرف إلى سرد إجراءات شخصيتك، أو يكرر نفس العبارات في كل دور، أو ينسى من موجود في الغرفة.
- جودة السرد. اقرأ عشر ردود متتالية. بعض النماذج جيدة لدور واحد لكنها تصبح مرهقة بحلول الدور العاشر.
- معالجة السياق. قد يعلن نموذج عن نافذة سياق طويلة ومع ذلك يفقد تفاصيل من منتصفها. قم بتشغيل اختبار حيث تكون حقيقة من بداية المحادثة مهمة لاحقًا.
- الحجم والتكميم. يمكن أن يفقد نموذج أكبر مضغوطًا في تكميم عالي أكثر من نموذج أصغر يعمل بدقة أعلى. قارن، ولا تفترض.
مواضيع المجتمع وبطاقات النماذج لوقت التشغيل الذي تستخدمه هي المكان المناسب للحصول على التوصيات الحالية. قم بتنزيل اثنين أو ثلاثة مرشحين، وشغّل نفس المشهد على كل منها واحتفظ بالذي يجعلك ترغب في متابعة القصة.
عندما تنفد مساحة التخزين المحلية
الحاجز الذي يواجهه معظم لاعبي الأدوار هو الذاكرة، ويظهر في مكانين. الأول هو النموذج نفسه: النموذج الأكبر يكتب بشكل أفضل لكنه يحتاج إلى المزيد من ذاكرة بطاقة الرسومات. الثاني هو السياق. كل رسالة في قصة طويلة تُرسل مرة أخرى مع كل دور جديد، والكاش الذي يحملها أيضًا ينمو مع الطول، لذا يمكن لحملة طويلة أن تضغط على بطاقة رسومات تتعامل بشكل جيد مع الدردشات القصيرة.
تتضمن الحلول المعتادة تلخيص المحادثات القديمة، واستخدام كتب lorebooks التي تُدخل الحقائق ذات الصلة فقط، وتقليل حجم نافذة السياق. هذه الحلول تعمل، لكنها تتطلب جهداً أيضاً. تتيح لك نقطة النهاية المستضافة ذات نافذة 100,000 رمز الاحتفاظ بجزء أكبر من القصة في العرض المباشر، وهو ما يناسب الحملات الطويلة، والعوالم المشتركة ذات الشخصيات المتعددة، والقصص التي تمتد لأسابيع.
المقايضة هي التكلفة، لذا من المفيد قياسها. لنفترض أن محادثة تحتوي على 30,000 رمز (token) من السجل، والنموذج يكتب 300 رمز (token) في كل رد. دورة واحدة تكلف 30,000 رمز (token) إدخال بسعر $0.15 لكل مليون، أي $0.0045، بالإضافة إلى 300 رمز (token) إخراج بسعر $0.50 لكل مليون، أي $0.00015. هذا $0.00465 لكل دورة، أو $0.465 لـ 100 دورة. أمسية لعب طويلة تكلف أقل بكثير من دولار. صفحة التسعير تعرض الأسعار ومستويات المكافآت للشحنات الأكبر.
إعداد مستضاف يعمل في Python
نقطة النهاية متوافقة مع OpenAI، لذا تعمل حزمة openai الرسمية كما هي باستثناء تغيير عنوان URL الأساسي والمفتاح. معرف النموذج هو uncensored. احصل أولاً على مفتاح من صفحة مفتاح API؛ يمكن للحسابات الجديدة المطالبة برصيد تجريبي بقيمة $0.50 هناك بنقرة واحدة، دون الحاجة لتفاصيل الدفع.
يحتفظ هذا السكربت بسجل متداول، ويبث الرد ويقص المحادثات القديمة بحيث يظل الموجّه صغيراً. الموجّه النظامي هو الجزء الذي يستحق وقتك: فهو يحدد الإعداد والقواعد والأسلوب.
import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.nsfwaiapi.com/v1",
api_key=os.environ["NSFWAIAPI_KEY"],
)
SYSTEM = '''You are the narrator and all non-player characters in an adult fiction roleplay.
Setting: a rain-soaked port city, late autumn, gaslight and smuggler politics.
Rules:
- Write in third person, past tense, 2 to 4 short paragraphs per reply.
- Never write the player's actions, words or thoughts. Stop where the player decides.
- Keep each character's voice and goals consistent. Track who is present in the scene.
- All characters are adults. Do not write sexual content involving minors under any circumstances.
- Stay in the story. No disclaimers or out-of-character commentary unless the player asks with (OOC).'''
history = [{"role": "system", "content": SYSTEM}]
MAX_TURNS = 40 # keep the last 40 messages besides the system prompt
def say(user_text):
history.append({"role": "user", "content": user_text})
trimmed = [history[0]] + history[1:][-MAX_TURNS:]
stream = client.chat.completions.create(
model="uncensored",
messages=trimmed,
temperature=0.9,
top_p=0.95,
frequency_penalty=0.3,
max_tokens=600,
stream=True,
)
reply = ""
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
piece = chunk.choices[0].delta.content
reply += piece
print(piece, end="", flush=True)
print()
history.append({"role": "assistant", "content": reply})
say("I push open the door of the Gull and Anchor and look for the harbor master.")
نظرًا لأن نافذة السياق هي 100,000 رمز (token)، يمكنك رفع MAX_TURNS كثيرًا قبل أن تصبح عملية التقليم مهمة. التقليم عادة جيدة: الموجّهات الأقصر تكلف أقل وتحافظ على تركيز النموذج على الأحداث الأخيرة.
إعدادات العميل لتطبيقات SillyTavern وما شابهها
معظم واجهات لعب الأدوار تحتوي على شاشة اتصال لمصدر إكمال محادثة متوافق مع OpenAI أو مخصص. على سبيل المثال، يسمح لك SillyTavern بإضافة نقطة نهاية متوافقة مع OpenAI. الحقول هي نفسها في كل مكان:
- عنوان URL الأساسي أو نقطة النهاية:
https://api.nsfwaiapi.com/v1. بعض التطبيقات تريد المسار الكامل الذي ينتهي بـ/chat/completions؛ إذا طلب التطبيق عنوان URL الأساسي، توقف عند/v1. - مفتاح API: مفتاحك، يُرسل كرمز حامل (Bearer token).
- النموذج:
uncensored. إذا كان التطبيق قادراً على جلب قائمة النماذج، فيمكنه استدعاءGET /v1/models. - البث المتدفق: تشغيل. تظهر الردود أثناء كتابتها، ويمكن للتطبيق التوقف مبكراً إذا لم يعجبك الاتجاه.
لأخذ العينات، تناسب درجة حرارة (temperature) بين 0.8 و1.0 النصوص السردية، مع قيمة top_p قريبة من 0.95. تقلل عقوبة التكرار أو الوجود الصغيرة من العبارات المتكررة التي تميل المحادثات الطويلة إلى تراكمها. زد العقوبة فقط إذا لاحظت التكرار، لأن القيم العالية تجعل النثر يبدو متحاشياً للتكرار على نحو غريب. تُمرر تسلسلات التوقف كما هي، لذا فإن إضافة اسم اللاعب متبوعاً بنقطتين كسلسلة توقف يساعد إذا حاول النموذج التحدث نيابة عنك. اضبط حجم سياق التطبيق على أي قيمة ترغب في الدفع مقابلها؛ لا تحتاج إلى ملء جميع الـ 100,000 رمز.
خذ في الاعتبار التزامن إذا كنت تشغل عدة علامات تبويب للدردشة أو بوتاً للأصدقاء. يسمح المفتاح الكامل بـ 8 طلبات متزامنة و300 في الدقيقة، ويسمح مفتاح التجربة بـ 2 و60. يحتفظ الرد المتدفق بمكانه حتى ينتهي البث، لذا يمكن لعلامة تبويب عالقة أن تستهلك مكاناً. تذكر الوثائق الحدود وترويسات الاستجابة، بما في ذلك X-Balance-USD، الذي يظهر رصيدك المتبقي.
روتين صغير للحفاظ على صحة القصص الطويلة
تسير جلسات لعب الأدوار الطويلة في طريقها الخطأ بطريقة متوقعة، وبعض العادات تمنع معظمها. اكتب ملخصاً قصيراً للقصة كل 20 أو 30 دوراً واحتفظ به في أعلى الموجّه، بعد رسالة النظام. حدّثه يدوياً أو اطلب من النموذج إنتاجه، ثم تحقق من أن الأسماء والأماكن والوعود نجت. ثبت الحقائق التي يجب ألا تُنسى أبداً، مثل العلاقات والخيوط المفتوحة، في رسالة النظام نفسها.
إذا ذهب رد في اتجاه لا يعجبك، أعد توليده بدلاً من الجدال معه في الدردشة. الجدال يلوث السجل ويعلم النموذج أن المشهد يدور حول الجدال. عندما تريد التوجيه، أضف سطرًا واضحًا واحدًا بين قوسين، مثل ملاحظة حول مزاج المشهد التالي، ودع الرد التالي يحمله. حافظ على اتساق أسماء الشخصيات وأعطِ كل شخصية غير لاعب ملاحظة صوتية من سطر واحد، لأن النماذج تمزج الشخصيات التي تبدو متشابهة.
حدود هذا النموذج الصادقة
إنه نموذج واحد مفتوح الأوزان، يشغله مزود مستقل ومضبط للإجابة بدون رفض المحتوى للاستخدام القانوني للبالغين. إنه ليس API الرسمي لأي بائع نماذج وليس موزعاً عبر عدة نماذج. لا يمكنك الاختيار بين النماذج، ولا ينبغي أن تتوقع أن تتطابق مع أفضل النماذج المغلقة في كل مهمة.
يولد النص فقط. لا توجد صور لشخصياتك، ولا صوت ولا تضمينات للبحث في كتب الحقائق، لذا إذا كنت تريد صوراً شخصية أو كلاماً، فأنت بحاجة إلى إضافة خدمة منفصلة لكل منها. لا يوجد ضبط دقيق أيضاً. الجودة ستعتمد أيضاً على الموجّه الخاص بك: يعطي الموجّه النظامي الغامض خيالاً غامضاً، ويقوم ملف الشخصية الجيد مع حوار المثال بعمل أكثر من أي تعديل في أخذ العينات.
قاعدة واحدة ثابتة. المحتوى الجنسي الذي يتضمن قاصرين غير مسموح به، والإعداد الذي يحاول إنتاجه لن يكون مدعوماً. حافظ على أن تكون الشخصيات بالغة، وحافظ على استخدامك قانونياً. للخيال، تطبيقات الرفقة ودردشة الشخصيات المبنية للبالغين، فإن مجموعة الرفض الأقل ونافذة السياق الطويلة هي الجزء المفيد.
المزيد من الأدلة
أسئلة وأجوبة
هل LLM المحلي أفضل من API المستضاف للعب الأدوار؟
لا يتفوق أي منهما في كل الحالات. يمنحك المحلي خصوصية دون اتصال ولا تكلفة لكل رمز، بينما يمنحك المستضاف سياقاً أطول ولا حدود للأجهزة. يستخدم الكثير من الناس الاثنين.
هل يمكنني استخدام SillyTavern مع هذا API؟
نعم. تقبل تطبيقات مثل SillyTavern ونظائرها نقطة النهاية المتوافقة مع OpenAI. أدخل https://api.nsfwaiapi.com/v1 كعنوان URL، ومفتاحك، ومعرف النموذج uncensored.
كم من السياق يمكن أن تستخدمه جلسة لعب الأدوار؟
نافذة السياق هي 100,000 رمز، وتشمل الموجّه والرد معاً. الدردشات الطويلة تكلف أكثر لأن السجل يُرسل مع كل دور.
هل يولد صوراً أو أصواتاً لشخصياتي؟
لا. الخدمة مخصصة للنصوص فقط، بدون توليد صور أو صوت أو فيديو، وبدون تضمينات.
مفتاحك على بُعد استمارة واحدة
أنشئ حساباً، وانسخ المفتاح، ثم غيّر URL الأساسي. هذه هي الإعدادات الكاملة.
احصل على مفتاح APINsfwAiApiAPI LLM بدون رقابة لتوليد النص NSFW