Instalacja i konfiguracja
Zacznij od zainstalowania oficjalnego pakietu SDK dla Twojego języka. Klient wymaga tylko Twojego klucza API i prawidłowego bazowego URL do kierowania żądań na nasze serwery. Ta konfiguracja działa z dowolnym standardowym klientem zgodnym z OpenAI.
Skonfiguruj zmienne środowiskowe lub przekaż je bezpośrednio do konstruktora klienta. Nie musisz zarządzać złożoną logiką routingu ani przełączać się między wieloma modelami. Pojedynczy model uncensored obsługuje wszystkie żądania.
- Zainstaluj pakiet za pomocą menedżera pakietów.
- Ustaw klucz API z panelu.
- Wskaż klienta na endpoint API.
Wykonywanie pierwszego żądania
Wyślij żądanie POST do endpointu chat completions z identyfikatorem modelu ustawionym na "uncensored". Zwraca to bezpośrednią odpowiedź tekstową od modelu, omijając standardowe filtry treści. Możesz wysyłać proste prompty lub złożone instrukcje systemowe.
API akceptuje standardowe parametry takie jak temperatura i top_p. Użyj poniższego polecenia cURL, aby natychmiast sprawdzić łączność i jakość odpowiedzi.
curl https://api.chatbotunrestricted.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Fetch current temperature in Tokyo."}]
}'Ta odpowiedź potwierdza, że model jest aktywny i gotowy do ruchu produkcyjnego.
Obsługa odpowiedzi strumieniowych
Włącz strumieniowanie, ustawiając parametr stream na true. API zwraca strumień zdarzeń wysyłanych serwerowo (SSE), dostarczając tokeny, gdy są generowane. Znacznie zmniejsza to postrzeganą latencję dla użytkowników końcowych.
Przetwarzaj fragmenty SSE, aby aktualizować interfejs użytkownika w czasie rzeczywistym. Ostatni fragment zawiera całkowite użycie tokenów dla żądania. To podejście jest kluczowe dla interfejsów czatu, gdzie użytkownicy oczekują natychmiastowej informacji zwrotnej.
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)Upewnij się, że Twój klient poprawnie obsługuje zdarzenie zakończenia strumienia.
Używanie narzędzi i wywoływania funkcji
Zdefiniuj narzędzia w żądaniu, aby pozwolić modelowi zwracać dane strukturalne. Przekaz definicje narzędzi w tablicy tools i określ tool_choice dla automatycznego wyboru. Model zwraca wywołania funkcji w zawartości odpowiedzi.
Przeanaluj argumenty funkcji i wykonaj je w swoim kodzie. Następnie przekaż wyniki z powrotem do modelu w kolejnej wiadomości. Ten cykl pozwala na złożone wieloetapowe przepływy pracy bez zewnętrznej logiki parsowania.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.chatbotunrestricted.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);Zawsze waliduj schemat wyjściowy przed wykonaniem.
Zarządzanie tokenami i limitami
Okno kontekstowe obsługuje 100,000 tokenów łącznie dla promptu i uzupełnienia. Każde żądanie może zwrócić do 16,000 tokenów lub 2,048, jeśli pominięto parametr max_tokens. Monitoruj swoje zużycie poprzez liczniki tokenów w odpowiedzi.
Ograniczenia częstotliwości pozwalają na 300 żądań na minutę i 8 żądań równoległych na klucz. Przekroczenie tych limitów wywołuje błąd 429. Zachowaj unikalność klucza dla każdego konta, aby uniknąć dzielenia się limitami.
Błędy takie jak 401 wskazują na nieprawidłowy klucz, podczas gdy 402 oznacza, że potrzebujesz więcej środków. Odrzucenia spowodowane drobnymi naruszeniami treści są darmowe i nie zużywają tokenów.
Obsługa błędów i rozwiązywanie problemów
Obsłuż błędy HTTP w sposób graceful w logice swojej aplikacji. Status 401 oznacza, że Twój klucz API jest nieprawidłowy lub wygasł. Sprawdź w panelu, czy klucz jest aktywny.
Błąd statusu 402 oznacza niewystarczające pre-paidowe środki. Doładuj konto za pomocą USDT lub USDC, aby wznowić usługę. Błąd 429 oznacza, że przekroczyłeś limit szybkości. Poczekaj i ponów żądanie z wykładniczym opóźnieniem.
Nieprawidłowe ciała żądań zwracają błąd 400. Zweryfikuj, czy struktura JSON odpowiada specyfikacji API. Te błędy są darmowe i nie pobierają środków z Twojego salda.
Python
from openai import OpenAI
client = OpenAI(base_url="https://api.chatbotunrestricted.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)