- Nsfwchat
- NSFW Chat: Szybki start: Zintegruj LLM bez cenzury
Czat NSFW: Szybki start: Integracja LLM bez cenzury
Zintegruj nasze API LLM bez cenzury, używając standardowych endpointów kompatybilnych z OpenAI. Ten przewodnik obejmuje uwierzytelnianie, formaty zapytań i strumieniowanie dla generowania tekstu w dużych ilościach.
URL bazowy i Uwierzytelnianie
Użyj dedykowanego podstawowego URL do wszystkich zapytań. Uwierzytelnianie opiera się na jednym kluczu API wygenerowanym podczas rejestracji. Dołącz klucz w nagłówku Authorization jako token Bearer. Twój klucz jest wyświetlany natychmiast po utworzeniu. Każde konto posiada jeden aktywny klucz; wygenerowanie nowego zastępuje poprzedni.
Podstawowy URL to: https://api.nsfwchat.cc/v1. Nie są wymagane dodatkowe warstwy routingu ani proxy. Ta konfiguracja działa z dowolnym klientem kompatybilnym z OpenAI po dostosowaniu podstawowego URL i klucza API.
Uzupełnienia czatu
Wyślij prompty tekstowe do endpointu POST /v1/chat/completions. ID modelu to uncensored. Endpoint akceptuje standardowe wiadomości czatu i zwraca wygenerowany tekst. Nie obsługuje embeddingów, obrazów ani audio. Model jest dostrojony do generowania odpowiedzi bez cenzury na zgodne z prawem treści dla dorosłych.
Upewnij się, że payload zawiera identyfikator modelu i historię wiadomości. API przetwarza tekst wejściowy i zwraca tekst wyjściowy bezpośrednio.
curl https://api.nsfwchat.cc/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'
SDK Pythona
Użyj oficjalnego SDK Pythona OpenAI do integracji. Ustaw base_url na endpoint naszego API i podaj swój klucz API. SDK automatycznie obsługuje serializację i parsowanie błędów. Skonfiguruj parametry takie jak temperature i top_p, aby kontrolować losowość wyjścia.
Zainicjuj klienta swoim kluczem i podstawowym URL. Wywołaj chat.completions.create() z ID modelu i wiadomościami. To podejście redukuje kod szkieletowy dla prostych zadań generowania tekstu.
from openai import OpenAI
client = OpenAI(base_url="https://api.nsfwchat.cc/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)
SDK Node.js
SDK OpenAI dla Node.js działa identycznie jak wersja Pythona. Skonfiguruj klienta z niestandardowym podstawowym URL i swoim kluczem API. Użyj metody chat.completions.create do wysyłania zapytań.
Ta metoda jest idealna do integracji po stronie serwera. SDK zarządza pulą połączeń i ponownymi próbami. Ustaw model na uncensored, aby zapewnić odpowiedzi bez cenzury. Przekaż wiadomości jako tablicę obiektów roli i treści.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.nsfwchat.cc/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);
Odpowiedzi strumieniowe
Włącz strumieniowanie, ustawiając stream: true w zapytaniu. API zwraca zdarzenia wysyłane serwerowo (SSE). Każdy chunk zawiera częściowy tekst. Szczegóły użycia tokenów pojawiają się w ostatnim chunku.
Strumieniowanie zmniejsza postrzegane opóźnienie dla długich uzupełnień. Przetwarzaj każdy chunk sekwencyjnie, aby odtworzyć pełną odpowiedź. Ta metoda jest niezbędna do aktualizacji interfejsu użytkownika w czasie rzeczywistym. Obsługuj błędy w zdarzeniach strumienia, aby utrzymać stabilność połączenia.
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)
Limity zapytań i błędy
Respektuj limity zapytań, aby uniknąć przerw w usłudze. API pozwala na 300 zapytań na minutę i 8 równoległych zapytań na klucz. Maksymalny rozmiar ciała zapytania to 8 MB. Status 401 oznacza nieprawidłowy lub brakujący klucz API. Status 429 oznacza przekroczenie limitu zapytań.
Okno kontekstu wynosi 100 000 tokenów dla promptu i generacji łącznie. Jeśli przekroczysz ten limit, zapytanie zostanie odrzucone. Nie ma obcinania; upewnij się, że Twoje wejście mieści się w oknie. Status 402 oznacza niewystarczający stan przedpłaconego kredytu. Błędy i odrzucenia nie zużywają kredytu.
Specyfikacja techniczna
Wszystkie rzeczywiste limity i funkcje API w jednym miejscu — sprawdź je przed doładowaniem.
| Element | Wartość |
|---|---|
| Format API | zgodne z OpenAI: działa każdy SDK OpenAI — zmień base URL i klucz |
| ID modelu | uncensored |
| Uwierzytelnianie | Authorization: Bearer YOUR_KEY |
| Base URL | https://api.nsfwchat.cc/v1 |
| Endpointy | POST /v1/chat/completions · GET /v1/models |
| Tryb JSON | response_format: {"type": "json_object"} |
| Okno kontekstu | 100 000 tokenów (wejście + odpowiedź) |
| Strumieniowanie | tak — server-sent events; ostatni fragment zawiera zużycie tokenów |
| Parametry | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Wywoływanie funkcji | tak — tools, tool_choice; odpowiedź zawiera tool_calls, także w strumieniu; wyniki jako role: tool |
| Maks. odpowiedź | do reszty okna 100 000 tokenów; max_tokens opcjonalne (bez osobnego limitu) |
| Rozmiar zapytania | do 8 MB |
| Nagłówki odpowiedzi | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| Równoległe zapytania | do 8 jednocześnie na klucz |
| Limit zapytań | 300 zapytań na minutę na klucz |
| Ważność | opłacony kredyt nie wygasa, bez subskrypcji |
| Rozliczenie | przedpłacony kredyt według rzeczywistego zużycia; błędy i odmowy są darmowe |
| Doładowanie | USDT (TRC20) lub USDC (Base), dowolna pełna kwota od $10 do $500 |
| Darmowy kredyt | $0,50 na 7 dni, bez karty · Klucz próbny: 2 równoległe żądania, 60 na minutę; pełne limity (8 i 300) po pierwszym doładowaniu |
| Bonus | +5% od $50, +10% od $100 |
| Cena | $0,25 za 1 mln tokenów wejścia · $1,00 za 1 mln tokenów wyjścia |
| Klucze | jeden aktywny klucz na konto; nowy zastępuje stary |
| Logowanie | Google albo e-mail i hasło |
| Treści | treści dla dorosłych dozwolone; treści seksualne z udziałem nieletnich są odrzucane |
Kody błędów
Błędy wracają jako JSON ze stałym type; nieudane i odrzucone zapytania są bezpłatne.
| Kod | Typ | Znaczenie |
|---|---|---|
400 | bad_request | błędny JSON, puste wiadomości, zły parametr lub za długi kontekst |
401 | missing_key · invalid_key · key_revoked | brak klucza, zły klucz lub klucz zastąpiony nowym |
402 | no_credit | brak kredytu — doładuj, działa od razu |
403 | content_blocked | treści seksualne z nieletnimi — odmowa, bez opłaty |
404 | not_found | nieznany endpoint |
413 | request_too_large | treść większa niż 8 MB |
429 | rate_limited · concurrency | ponad 300/min lub 8 równolegle — odczekaj i ponów |
503 | upstream_busy | model zajęty — ponów za kilka sekund |
Pytania i odpowiedzi
Czy API obsługuje wywoływanie funkcji?
Tak, API obsługuje wywoływanie funkcji za pomocą parametrów <code>tools</code> i <code>tool_choice</code>. Możesz zdefiniować narzędzia w zapytaniu, a model zwróci strukturalny JSON do ich użycia. Ta funkcja działa ze standardowymi klientami kompatybilnymi z OpenAI.
Jaki jest rozmiar okna kontekstu?
Okno kontekstu wynosi 100 000 tokenów, obejmując zarówno prompt, jak i uzupełnienie. Maksymalna długość odpowiedzi na zapytanie to 32 000 tokenów, lub 2048, jeśli nie ustawiono <code>max_tokens</code>. Zapytania przekraczające to okno są odrzucane.
Jak obsługiwane są błędy?
Odpowiedzi błędów zawierają kod statusu i komunikat. Kod <code>401</code> oznacza nieprawidłowy klucz API. Kod <code>429</code> oznacza przekroczenie limitu zapytań. Kod <code>402</code> oznacza niewystarczający przedpłacony kredyt. Błędy nie zużywają kredytu tokenów.
Twój klucz jest o jeden formularz stąd
Utwórz konto, skopiuj klucz, zmień podstawowy URL. To cała konfiguracja.