pl ▾
Otwórz konto

Dokumentacja API

Dodaj model bez cenzury do istniejącej bazy kodu bez nakładów konfiguracyjnych. Przewodnik obejmuje endpointy zgodne z OpenAI, uwierzytelnianie i konfigurację strumieniowania dla natychmiastowej integracji.

Szybki start: Integracja z Pythonem

Pierwszym krokiem jest zainstalowanie oficjalnego SDK OpenAI i skonfigurowanie adresu URL bazowego. Zapewnia to, że Twój klient kieruje żądania do naszego punktu końcowego LLM uncensored bez modyfikacji istniejącej logiki.

  • Zainstaluj pakiet przez pip.
  • Ustaw klucz API i URL bazowy.
  • Wyślij standardowe żądanie chat completion.

To rozwiązanie działa zarówno dla lokalnych skryptów, jak i serwerów produkcyjnych.

Uwierzytelnianie i URL bazowy

Twój klucz API uwierzytelnia każde żądanie do podstawowego adresu URL HTTPS://api.chatbotsemfiltro.com/v1. Klucz jest generowany natychmiast po rejestracji i pozostaje ważny do momentu jego unieważnienia.

Przechowuj klucz w zmiennej środowiskowej, aby uniknąć sztywnego kodowania sekretów. SDK automatycznie wstrzykuje nagłówki.

Punkt końcowy Uzupełnień Czat

Podstawowe punkty końcowe akceptują żądania POST do /v1/chat/completions. Oczekują one ciała JSON z wiadomościami i parametrami modelu.

  • Zdefiniuj rolę (system, user, assistant).
  • Specify the model as "uncensored".
  • Otrzymuj tekst.

Ta struktura odzwierciedla standardowy format OpenAI, zapewniając kompatybilność.

Strumieniowanie i wywoływanie funkcji

Włącz strumieniowanie, ustawiając stream na true. API zwraca fragmenty zdarzeń wysyłanych serwerowo (SSE), dostarczając tokeny w miarę ich generowania.

Wywoływanie funkcji jest obsługiwane poprzez parametr tools. Model zwraca wywołania narzędzi w formacie JSON, które możesz sparsować i wykonać.

Parametry: Temperatura i Top P

Dostosuj temperaturę dla kreatywności lub determinizmu. Wartości między 0 a 2 kontrolują losowość. Top P filtruje słowa według prawdopodobieństwa kumulacyjnego.

Połącz te parametry, aby dostroić styl wyjścia. Użyj seed dla odtwarzalnych wyników podczas testowania.

Okno kontekstu i limity

Model obsługuje okno kontekstowe o rozmiarze 100 000 tokenów. Maksymalna liczba generowanych tokenów wynosi 16 000 w jednym żądaniu.

Limity szybkości to 300 żądań na minutę. Przekroczenie tego limitu powoduje błąd 429. Zarządzaj współbieżnością, aby uniknąć throttlingu.

Obsługa błędów i tokeny

Obsłuż błędy HTTP w sposób graceful. 401 oznacza nieprawidłowy klucz. 402 oznacza niewystarczające środki. 429 sygnalizuje limitowanie szybkości.

Zużycie tokenów jest rozliczane dokładnie. Błędy nie zużywają kredytu. Śledź zużycie przez panel.

cURL

curl https://api.chatbotsemfiltro.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "List the top ten libraries for Rust async programming"}]
  }'

Python

from openai import OpenAI

client = OpenAI(base_url="https://api.chatbotsemfiltro.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)

Node.js

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.chatbotsemfiltro.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);

Strumieniowanie

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)

Typowe pytania

Czy to oficjalny API OpenAI?

Nie. To API kompatybilne z OpenAI obsługujące odrębny bezcenzuralny model. Użyj tego samego SDK, ale identyfikator modelu i bazowy URL są inne.

Jak radzić sobie z błędami strumieniowania?

Sprawdź typ zdarzenia SSE. Jeśli jest to zdarzenie błędu, przeanalizuj komunikat i obsłuż go bez zużywania tokenów.

Co się stanie, jeśli przekroczę limit szybkości?

API zwraca kod statusu 429. Poczekaj i ponów żądanie z wykładniczym wygasaniem, aby uniknąć powtarzających się niepowodzeń.

Uzyskaj klucz API natychmiast

Zarejestruj się, pobierz klucz i zaktualizuj swój adres URL bazowy. To kompletna konfiguracja.

Otwórz konto