Szybki start: Integracja API tekstu bez cenzury
Zintegruj API uzupełniania tekstu bez cenzury ze swoim potokiem treści za pomocą kilku linii kodu. Użyj standardowego endpointu uzupełnień czatu kompatybilnego z OpenAI, aby generować skrypty, opisy lub dopracowane prompty bez odmów treści.
URL bazowy i uwierzytelnianie
Zacznij od ustawienia bazowego URL na https://api.contentmoderationapis.com/v1. Ten endpoint jest kompatybilny z oficjalnymi SDK OpenAI i dowolnym klientem kompatybilnym z OpenAI. Będziesz potrzebował klucza API, który możesz uzyskać natychmiast po zalogowaniu się tylko adresem e-mail i hasłem na stronie Uzyskaj klucz API. Klucz jest wyświetlany jeden raz; zapisz go bezpiecznie. Każde konto pozwala na jeden klucz, który można wygenerować ponownie w dowolnym momencie, unieważniając poprzedni. Do kredytu próbnego nie jest wymagana karta.
Pierwsze zapytanie
Wyślij żądanie POST do /v1/chat/completions z kluczem w nagłówku Authorization. Użyj ID modelu uncensored, aby uzyskać dostęp do dużego modelu językowego bez cenzury. Model obsługuje dopracowywanie promptów, pisanie scenariuszy i tworzenie opisów bez ograniczeń typowych dla dużych dostawców. Jest to model o otwartych wagach dostosowany do legalnego użytku dorosłego, z wyłączeniem treści seksualnych z udziałem małoletnich. Upewnij się, że ciało żądania mieści się w 8 MB.
curl https://api.contentmoderationapis.com/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."}]
}'
Integracja Python SDK
Użyj oficjalnego SDK Python OpenAI do interakcji z API. Ustaw base_url i api_key w inicjalizacji klienta. To podejście działa bezproblemowo z istniejącymi bazami kodu przeznaczonymi dla OpenAI. Model obsługuje wywoływanie funkcji i strumieniowanie. Skonfiguruj klienta tak, aby wskazywał nasz podstawowy URL i kierował żądania przez nasz silnik wnioskowania bez cenzury. Jest to idealne do przetwarzania tekstu wygenerowanego przez inne modalności lub dopracowywania promptów przed wysłaniem ich do modeli obrazu lub wideo.
from openai import OpenAI
client = OpenAI(base_url="https://api.contentmoderationapis.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)
Przykład Node.js SDK
Zainicjuj klienta Node.js OpenAI z niestandardowym bazowym URL i swoim kluczem API. Model uncensored odpowiada na standardowe parametry uzupełnień czatu. Możesz przekazać prompty systemowe, aby kierować tonem lub formatem odpowiedzi. Jest to przydatne przy generowaniu danych strukturalnych lub spójnych stylów dla opisów i skryptów. API obsługuje komponent generowania tekstu twojego potoku, pozwalając ci skupić się na integracji odpowiedzi z przepływami pracy obrazu, wideo lub głosu.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.contentmoderationapis.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);
Odpowiedzi strumieniowe
Włącz strumieniowanie, ustawiając stream: true w swoim zapytaniu. API zwraca zdarzenia wysyłane serwerowo (SSE) dla dostarczania tokenów w czasie rzeczywistym. Zmniejsza to postrzeganą opóźnienie dla użytkowników oczekujących na długą treść, taką jak skrypty lub szczegółowe opisy. Strumieniowanie działa zarówno z surowym klientem HTTP, jak i SDK. Monitoruj strumień pod kątem błędów lub zdarzeń zakończenia, aby obsłużyć ostateczną odpowiedź. Ta metoda jest wydajna dla dużych okien kontekstu do 100 000 tokenów.
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ń, błędy i limity
API narzuca limit 300 zapytań na minutę na klucz. Jeśli go przekroczysz, otrzymasz kod statusu 429. Błędy uwierzytelniania zwracają 401 dla nieprawidłowych kluczy, a 402 oznacza niewystarczający przedpłacony kredyt. Żądania są rozliczane na podstawie tokenów wejściowych (0,25 USD za 1M) i tokenów wyjściowych (1,00 USD za 1M). Kredyty są przedpłacone, nigdy nie wygasają i nie wymagają subskrypcji. Model nie oferuje generowania obrazu, dźwięku ani wideo, ani nie zapewnia osadzania ani dostrajania. Używaj tego API ściśle do zadań generowania tekstu w swoim potoku treści.
Parametry API
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 |
| Base URL | https://api.contentmoderationapis.com/v1 |
| Uwierzytelnianie | Authorization: Bearer YOUR_KEY |
| Endpointy | POST /v1/chat/completions · GET /v1/models |
| ID modelu | uncensored |
| Wywoływanie funkcji | tak — tools, tool_choice; odpowiedź zawiera tool_calls, także w strumieniu; wyniki jako role: tool |
| Strumieniowanie | tak — server-sent events; ostatni fragment zawiera zużycie tokenów |
| Parametry | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Maks. odpowiedź | do reszty okna 100 000 tokenów; max_tokens opcjonalne (bez osobnego limitu) |
| Okno kontekstu | 100 000 tokenów (wejście + odpowiedź) |
| Tryb JSON | response_format: {"type": "json_object"} |
| Limit zapytań | 300 zapytań na minutę na klucz |
| 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 |
| Rozmiar zapytania | do 8 MB |
| Rozliczenie | przedpłacony kredyt według rzeczywistego zużycia; błędy i odmowy są darmowe |
| 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 |
| Cena | $0,25 za 1 mln tokenów wejścia · $1,00 za 1 mln tokenów wyjścia |
| Bonus | +5% od $50, +10% od $100 |
| Ważność | opłacony kredyt nie wygasa, bez subskrypcji |
| Doładowanie | USDT (TRC20) lub USDC (Base), dowolna pełna kwota od $10 do $500 |
| 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 |
| Klucze | jeden aktywny klucz na konto; nowy zastępuje stary |
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
Jaki jest rozmiar okna kontekstu?
Model obsługuje okno kontekstu 100 000 tokenów dla promptu i uzupełnienia łącznie. Pozwala to na duże dane wejściowe i długie wyjście bez obcinania.
Czy pobieracie opłatę za kredyty próbne?
Nie. Każde nowe konto otrzymuje $0,50 kredytu próbnego ważnego przez 7 dni. Nie jest wymagana karta kredytowa. Płacony przedpłacony kredyt nigdy nie wygasa i można go doładować od $10.
Czy model jest trenowany na moich promptach?
Nie. Prompty wysłane do API nie są używane do trenowania modelu. Potrzebujesz tylko e-maila i hasła do założenia konta, co zapewnia prywatność Twojej treści.
Twój klucz jest o jeden formularz stąd
Utwórz konto, skopiuj klucz, zmień bazowy URL. To cała konfiguracja.