pl ▾
Pobierz klucz API

NsfwLocalDokumentacja dla deweloperów

Dokumentacja API

Zacznij korzystać z API LLM bez cenzury w kilka minut. Użyj standardowych narzędzi kompatybilnych z OpenAI, aby wysyłać żądania tekstowe i otrzymywać bezpośrednie, niefiltrowane odpowiedzi.

Szybki start pierwszego żądania

Zacznij generować tekst natychmiast, wskazując klienta na nasz bazowy URL i uwierzytelniając się wygenerowanym kluczem API. Interfejs podąża za standardowymi konwencjami, więc możesz używać istniejących SDK bez nauki nowego protokołu. Wyślesz prompty do uncensored model i otrzymaj odpowiedzi tekstowe, które nie stosują typowych filtrów treści dla użytku legalnego dla dorosłych.

Skonfiguruj adres URL bazowy i klucz

Skonfiguruj swoje zmienne środowiskowe tak, aby kierować żądania do naszego konkretnego punktu końcowego. Zastąp klucz zastępczy tym wygenerowanym podczas rejestracji. Zapewnia to, że wszystkie kolejne wywołania używają prawidłowej instancji modelu uncensored.

  • URL bazowy: https://api.nsfwlocalllm.com/v1
  • Nagłówek Auth: Authorization: Bearer YOUR_API_KEY

Możesz zweryfikować, czy Twój klucz działa, sprawdzając endpoint modeli. Poprawny klucz zwraca dostępny ID modelu natychmiast.

Wyślij żądanie chat completion

Standardowy payload chat completion do generowania tekstu. System przetwarza Twoje wejście i zwraca odpowiedź modelu. Użyj uncensored ID modelu, aby upewnić się, że trafiasz na instancję bez filtrów.

Odpowiedź zawiera wygenerowany tekst oraz statystyki użycia tokenów. Możesz sparsować to bezpośrednio do logiki swojej aplikacji.

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"}]
  }'

Sprawdź standardowe kody statusu HTTP do obsługi przypadków sukcesu lub porażki.

Włącz strumieniowanie dla wyjścia w czasie rzeczywistym

Strumieniuj odpowiedzi, aby zmniejszyć postrzegane opóźnienia dla Twoich użytkowników. Włącz strumieniowanie, ustawiając stream: true w ciele żądania. API zwraca serię zdarzeń wysłanych przez serwer (SSE) zawierających częściowe tokeny.

Aggregate these tokens on the client side to reconstruct the full message. This approach is ideal for chat interfaces where immediate feedback matters. The final SSE event contains the total token usage for the request.

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)

Obsłuż błędy połączenia w sposób elegancki, aby zapewnić płynne doświadczenie użytkownika.

Używaj trybu JSON dla danych strukturalnych

Wymuszaj na modelu poprawne dane JSON do przetwarzania programistycznego. Ustaw response_format do {"type": "json_object"} w Twoim żądaniu. Zmniejsza to błędy parsowania i zapewnia spójne struktury danych.

Użyj tego do generowania struktur promptów, ekstrakcji encji lub budowania dynamicznej treści. Model podporządkowuje się ograniczeniom formatu podanym w instrukcjach systemowych. Jest to kluczowe dla niezawodnej integracji z innymi usługami.

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);

Zweryfikuj wynik JSON po swojej stronie, aby wychwycić wszelkie przypadki brzegowe.

Zaimplementuj wywoływanie funkcji

Zdefiniuj narzędzia, aby rozszerzyć możliwości modelu. Przekaż tools tablicę z definicjami funkcji do żądania. Model może wybrać wywołanie tych funkcji na podstawie kontekstu.

To umożliwia złożone przepływy pracy, w których LLM decyduje, kiedy pobrać dane lub wykonać akcje. Otrzymujesz argumenty funkcji w odpowiedzi i wykonujesz je po swojej stronie. Przekazuj wyniki z powrotem do modelu w celu dalszego rozumowania.

Ustaw tool_choice do auto dla elastycznego podejmowania decyzji. Funkcja ta obsługuje zaawansowane scenariusze roleplay wymagające dostępu do danych zewnętrznych.

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)

Najczęściej zadawane pytania

Jaki jest rozmiar okna kontekstowego?

Okno kontekstowe wynosi 100 000 tokenów, obejmując łącznie prompt i uzupełnienie. Pozwala to na długie rozmowy i duże dokumenty bez utraty kontekstu.

Co się stanie, jeśli zabraknie kredytu?

Żądania nie powiodą się ze statusem 402, gdy Twoje saldo z góry jest niewystarczające. Możesz doładować kryptowalutą, aby natychmiast wznowić usługę. Błędy, takie jak limity szybkości, nie zużywają kredytu.

Jak radzić sobie z limitami szybkości?

API narzuca limit 300 żądań na minutę na klucz. Jeśli go przekroczysz, otrzymasz kod statusu 429. Zaimplementuj wykładnicze backoff w swoim kliencie, aby skutecznie obsługiwać te opóźnienia.

Pobierz swój klucz natychmiast

Zarejestruj się, skopiuj token, zaktualizuj bazowy URL. Konfiguracja zakończona.

Pobierz klucz API