NsfwLocalمستندات توسعهدهندگان
مستندات API
در عرض چند دقیقه با API LLM بدون سانسور شروع کنید. از ابزارهای استاندارد سازگار با OpenAI برای ارسال درخواستهای متنی و دریافت پاسخهای مستقیم و بدون فیلتر استفاده کنید.
شروع سریع اولین درخواست
با پیکربندی کلاینت خود به سمت URL پایه ما و احراز هویت با کلید API تولیدشده، بلافاصله شروع به تولید متن کنید. رابط ما از استانداردهای رایج پیروی میکند، بنابراین میتوانید از SDKهای موجود بدون یادگیری پروتکل جدید استفاده کنید. شما پرامپتها را به uncensored مدل و پاسخهای متنی را دریافت کنید که فیلترهای محتوای معمولی را برای استفاده بزرگسالان قانونی اعمال نمیکنند.
URL پایه و کلید را پیکربندی کنید
متغیرهای محیطی خود را برای هدایت درخواستها به نقطه پایانی خاص ما تنظیم کنید. کلید جایگزین را با کلیدی که در زمان ثبتنام تولید شده است جایگزین کنید. این تضمین میکند که تمام تماسهای بعدی از نمونه مدل uncensored صحیح استفاده میکنند.
- URL پایه:
https://api.nsfwlocalllm.com/v1 - هدر Auth:
Authorization: Bearer YOUR_API_KEY
میتوانید کارکرد کلید خود را با بررسی endpoint مدلها تأیید کنید. یک کلید معتبر بلافاصله شناسه مدل موجود را برمیگرداند.
یک درخواست تکمیل چت ارسال کنید
یک پیکربندی تکمیل مکالمه استاندارد برای تولید متن ارسال کنید. سیستم ورودی شما را پردازش کرده و پاسخ مدل را برمیگرداند. از uncensored شناسه مدل برای اطمینان از اینکه به نمونه بدون فیلتر متصل میشوید.
پاسخ شامل متن تولید شده و آمار مصرف توکن است. میتوانید این را مستقیماً در منطق برنامه خود پارس کنید.
curl https://api.nsfwlocalllm.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Send me the server uptime stats"}]
}'بررسی کدهای وضعیت HTTP استاندارد برای مدیریت موارد موفقیت یا شکست.
برای خروجی بلادرنگ، جریانیابی را فعال کنید
پاسخها را برای کاهش تأخیر ادراکشده برای کاربران شما جریان دهید. جریان را با تنظیم stream: true در بدنه درخواست خود. API مجموعهای از رویدادهای ارسالشده توسط سرور (SSE) را حاوی توکنهای جزئی برمیگرداند.
این توکنها را در سمت کلاینت تجمیع کنید تا پیام کامل بازسازی شود. این رویکرد برای رابطهای چت که در آنها بازخورد فوری مهم است ایدهآل است. رویداد نهایی SSE شامل کل مصرف توکن برای درخواست است.
from openai import OpenAI
client = OpenAI(base_url="https://api.nsfwlocalllm.com/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)خطاهای اتصال را بهخوبی مدیریت کنید تا تجربه کاربری روانی فراهم شود.
استفاده از حالت JSON برای دادههای ساختاریافته
مدل را مجبور به خروجی JSON معتبر برای مصرف برنامهنویسی کنید. تنظیم response_format به {"type": "json_object"} در درخواست شما. این موضوع خطاهای تجزیه را کاهش میدهد و ساختارهای داده سازگار را تضمین میکند.
از این گزینه برای تولید پرامپتهای ساختاریافته، استخراج موجودیتها یا ساخت محتوای پویا استفاده کنید. مدل به محدودیتهای قالب ارائهشده در دستورات سیستم پایبند است. این موضوع برای یکپارچهسازی قابلاعتماد با سایر سرویسها حیاتی است.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.nsfwlocalllm.com/v1", apiKey: process.env.API_KEY });
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);خروجی JSON را در سمت خود اعتبارسنجی کنید تا هر مورد مرزی را تشخیص دهید.
پیادهسازی فراخوانی تابع
ابزارها را تعریف کنید تا قابلیتهای مدل گسترش یابد. Pass یک tools آرایه شامل تعاریف تابع به درخواست اضافه کنید. مدل میتواند بر اساس زمینه، این توابع را فراخوانی کند.
این مورد، جریانهای کاری پیچیدهای را امکانپذیر میسازد که در آن LLM تصمیم میگیرد چه زمانی داده را دریافت کند یا عملیاتی را انجام دهد. شما استدلالهای تابع را در پاسخ دریافت میکنید و آنها را در سمت خود اجرا میکنید. نتایج را برای استدلال بیشتر به مدل بازگردانید.
تنظیم tool_choice به auto برای تصمیمگیری انعطافپذیر. این ویژگی از سناریوهای پیشرفته نقشآفرینی که به دسترسی به دادههای خارجی نیاز دارند، پشتیبانی میکند.
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)سوالات متداول
اندازه پنجره زمینه چقدر است؟
پنجره زمینه ۱۰۰,۰۰۰ توکن است که هم پیشدرآمد و هم تکمیل را پوشش میدهد. این امکان پردازش مکالمات طولانی یا اسناد بزرگ را بدون از دست دادن زمینه فراهم میکند.
اگر اعتبارم تمام شود چه میشود؟
درخواستها با کد وضعیت 402 شکست میخورند وقتی موجودی پیشپرداخت شما کافی نباشد. میتوانید با ارز دیجیتال شارژ کنید تا بلافاصله سرویس را از سر بگیرید. خطاهایی مانند محدودیت نرخ اعتبار مصرف نمیکنند.
چگونه محدود نرخها را مدیریت کنم؟
API محدودیت ۳۰۰ درخواست در دقیقه به ازای هر کلید را اعمال میکند. اگر از این محدودیت تجاوز کنید، کد وضعیت 429 دریافت میکنید. برای مدیریت موثر این تأخیرها، بازگشت نمایی را در کلاینت خود پیادهسازی کنید.
کلید API خود را به صورت فوری بازیابی کنید
ثبتنام کنید، توکن را کپی کنید و آدرس پایه را بهروز کنید. راهاندازی کامل است.
دریافت کلید API