fa ▾

Dolphin NSFW

API بدون سانسور. بدون رد درخواست. فقط کد.

چت‌بات NSFW: راهنمای عیب‌یابی

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

آخرین به‌روزرسانی

خلاصه

  • پنجره زمینه شما به ۱۰۰,۰۰۰ توکن در مجموع محدود است، بنابراین داستان‌های بلند NSFW نیاز به استراتژی‌های برش دقیق دارند.
  • پاسخ‌های جریان‌دار (Streaming) از طریق SSE توکن‌ها را به صورت تدریجی ارسال می‌کنند، اما باید قطعه نهایی را برای آمار مصرف مدیریت کنید.
  • فراخوانی تابع و حالت JSON به طور قابل اعتماد کار می‌کنند اگر اعتبارسنجی سخت‌گیرانه طرحواره را روی مدل uncforced اعمال کنید.
  • حد نرخ‌ها ۳۰۰ درخواست در دقیقه است، بنابراین برای جلوگیری از خطاهای 429 در حین تولید دسته‌ای، از بازگشت نمایی استفاده کنید.

چرا محتوای NSFW من مسدود می‌شود؟

مسدودسازی محتوا معمولاً از دو منبع ناشی می‌شود: منطق ردّ ذاتی مدل یا فیلترینگ سمت کلاینت شما. مدل بدون فیلتر ما برای پاسخ‌دهی بدون ردّ در استفاده‌های بزرگسالان قانونی تنظیم شده است، اما یک محدودیت سخت بر محتوای جنسی مرتبط با کودکان اعمال می‌کند. اگر ردّ دریافت کردید، بررسی کنید که آیا پرامپت شما به طور غیرمستقیم این محدودیت خاص را فعال می‌کند یا خیر. برخلاف مدل‌های شرکتی که کل ژانرها را ممنوع می‌کنند، این API موضوعات جنجالی یا صریح را تا زمانی که قانونی و داستانی باشند، مجاز می‌داند.

مشکل رایج دیگر پردازش پس از اجرا در سمت کلاینت است. اگر خروجی را قبل از نمایش از یک فیلتر ثانویه عبور دهید، آن فیلتر ممکن است محتوایی که مدل به‌درستی تولید کرده است را مسدود کند. بررسی کنید که لایه برنامه شما بر اساس کلمات کلیدی سلیقه‌ای، توکن‌های معتبر را رد نمی‌کند. API برای تولیدهای موفق، پاسخ‌های استاندارد HTTP 200 برمی‌گرداند، بنابراین مسدودسازی معمولاً نشان‌دهنده یک خطای منطقی در لایه اعتبارسنجی خود شماست، نه رد API.

درک پنجره‌های متن و محدودیت‌های توکن

پنجره زمینه شما به ۱۰۰,۰۰۰ توکن برای مجموع ورودی و خروجی محدود است که نیاز به مدیریت دقیق برای داستان‌های بلند NSFW دارد. اگر داستان شما از این حد فراتر رود، مدل یا پیام‌های قدیمی‌تر را برش می‌دهد یا شکست می‌خورد، بسته به پیاده‌سازی شما. شما باید تعداد توکن‌ها را خودتان ردیابی کنید زیرا API به صورت خودکار برش نمی‌دهد. به محدودیت حداکثر خروجی که به طور پیش‌فرض ۲,۰۴۸ توکن است توجه داشته باشید مگر اینکه مقدار دیگری تنظیم کنید max_tokens.

برای نقش‌آفری‌های پیچیده، تاریخچه مکالمه می‌تواند به سرعت توکن‌ها را مصرف کند. اگر پاسخ‌های طولانی و دقیق تولید می‌کنید، مطمئن شوید که کل تاریخچه چت را با هر درخواست ارسال نمی‌کنید. از استراتژی پنجره لغزان یا خلاصه‌سازی نوبت‌های قدیمی‌تر برای حفظ محدوده ۱۰۰,۰۰۰ توکن استفاده کنید. این کار از خطاهای غیرمنتظره جلوگیری کرده و عملکرد ثابت را برای برنامه‌های AI بدون سانسور شما تضمین می‌کند.

پاسخ‌های استریم: مدیریت خروجی‌های ناقص

استریم از طریق رویدادهای ارسال‌شده سرور (SSE) به شما امکان می‌دهد توکن‌ها را تدریجی ارسال کنید، اما باید قطعه نهایی را به‌درستی مدیریت کنید تا آمار مصرف را دریافت کنید. هر قطعه شامل یک پاسخ جزئی است و قطعه آخر شامل تعداد کل توکن‌ها می‌باشد. اگر زودتر از موعد گوش دادن را متوقف کنید، ممکن است داده‌های مصرف را از دست بدهید یا اتصالات باز بمانند.

یک شنونده رویداد قوی پیاده‌سازی کنید که هر دلتا را پردازش کند و همزمان وضعیت جریان را ردیابی کند. این برای چت‌بات‌های NSFW که در آن‌ها تأخیر مهم است حیاتی است. کاربران انتظار افکت‌های تایپینگ در زمان واقعی دارند، اما باید مطمئن شوید که جریان قبل از اینکه تولید را به‌عنوان انجام‌شده علامت بزنید کامل شود. بررسی کنید choices آرایه در قطعه نهایی برای تأیید اینکه finish reason برابر با stop یا length.

stream = client.chat.completions.create(
    model="uncensored",
    messages=[{"role": "user", "content": "Tell the story in second person."}],
    stream=True,
)
for chunk in stream:
    if chunk.choices and chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="", flush=True)

فراخوانی تابع با مدل‌های بدون سانسور

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

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

تنظیمات دما و Top_P برای NSFW

تنظیم دما (temperature) و top_p مستقیماً بر آزادی خلاق در خروجی‌های uncensored تأثیر می‌گذارد.

top_p نمونه‌گیری هسته‌ای را کنترل می‌کند و توکن‌های با احتمال کم را فیلتر می‌کند. ترکیب این تنظیمات امکان تنظیم دقیق را فراهم می‌کند. اگر خروجی تکراری شد، temperature را کاهش دهید یا top_p را تنظیم کنید. اگر خروجی نامفهوم شد، مقادیر را کمی افزایش دهید. با آزمایش این پارامترها، نقطه تعادل مناسب برای سبک محتوای خاص خود را بیابید.

حالت JSON: ساختاردهی خروجی بدون سانسور

حالت JSON اعتبارسنجی طرحواره سخت‌گیرانه را اعمال می‌کند، تضمین می‌کند که LLM بدون سانسور شما اشیاء JSON معتبر بازگرداند. این برای یکپارچه‌سازی API با چارچوب‌های فرانت‌اند یا پایگاه‌های داده ضروری است. تنظیم response_format به {"type": "json_object"} در درخواست.

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

مدیریت دنباله‌های 'Stop' در محتوای بزرگسالان

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

Pass the stop پارامتری با لیستی از رشته‌ها. مدل تولید را به محض مواجه با هر یک از این دنباله‌ها متوقف می‌کند. این برای پایان گفتگوها یا اعلام تغییر صحنه مفید است. دنباله‌های توقف مختلف را آزمایش کنید تا بهترین گزینه را برای نوع محتوای خود بیابید.

اشکال‌زدایی خطاهای API و محدودیت‌های نرخ

حد نرخ‌ها ۳۰۰ درخواست در دقیقه به ازای هر کلید است، بنابراین برای جلوگیری از خطاهای 429، از بازگشت نمایی (exponential backoff) استفاده کنید. اگر از حد مجاز فراتر روید، API کد وضعیت 429 را برمی‌گرداند. این خطا را با تلاش مجدد با تأخیر، به‌خوبی مدیریت کنید.

سایر خطاهای رایج شامل کلیدهای API نامعتبر (401) یا درخواست‌های نادرست (400) است. بدنه درخواست خود را برای خطاهای نحوی بررسی کنید، به ویژه هنگام استفاده از حالت JSON. از error field in the response to identify the issue. Logging these errors helps you spot patterns and optimize your usage.

حریم خصوصی: آیا از درخواست‌ها برای آموزش استفاده می‌شود؟

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

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

پرسش‌های رایج

آیا مدل بدون سانسور هر محتوای NSFW را رد می‌کند؟

بله، به‌طور دقیق یک محدودیت سخت برای محتوای جنسی مرتبط با کودکان اعمال می‌کند. سایر موضوعات قانونی، بزرگسالان، تخیلی یا بحث‌برانگیز معمولاً بدون رد شدن پذیرفته می‌شوند. این موضوع سازگاری گسترده‌ای برای موارد استفاده NSFW فراهم می‌کند و هم‌زمان یک مرز ایمنی پایه را حفظ می‌نماید.

چگونه پاسخ‌های جریان را در چت‌بات NSFW خود مدیریت کنم؟

اندپوینت SSE را برای دریافت توکن‌ها به صورت افزایشی استفاده کنید. به هر قطعه گوش دهید و deltas را پردازش کنید. قطعه نهایی آمار مصرف را شامل می‌شود، بنابراین مطمئن شوید کد شما انتهای استریم را به درستی برای ثبت تعداد توکن‌ها مدیریت می‌کند.

اگر از محدودیت 300 درخواست در دقیقه عبور کنم چه اتفاقی می‌افتد؟

API خطای 429 Too Many Requests را برمی‌گرداند. باید در کد کلاینت خود از بازگشت نمایی (exponential backoff) برای تلاش مجدد پس از یک تأخیر کوتاه استفاده کنید. این کار از بارگذاری بیش از حد سرور جلوگیری کرده و پایداری چت‌بات شما را در زمان‌های اوج مصرف تضمین می‌کند.

آیا می‌توانم از این API برای فراخوانی تابع و حالت JSON استفاده کنم؟

بله، مدل بدون سانسور از فراخوانی تابع و حالت JSON پشتیبانی می‌کند. ابزارها یا طرحواره خود را در درخواست تعریف کنید و مدل داده‌های ساختاریافته را بازگردانی می‌کند. این برای یکپارچه‌سازی API با برنامه‌های پیچیده NSFW یا بازی‌ها ایده‌آل است.

کلید API خود را تولید کنید

ثبت‌نام کنید، کلید را کپی کنید، URL پایه را به‌روزرسانی کنید. این تمام چیزی است که وجود دارد.

کلید ایجاد کنید