Instalacja i setup
Zacznij od utworzenia konta, aby uzyskać klucz API. Zarejestruj się za pomocą konta Google lub kombinacji adresu e-mail i hasła. System wyświetla Twój unikalny klucz natychmiast na ekranie. Nie jest wymagana weryfikacja numeru telefonu na tym etapie. Możesz wygenerować nowy klucz w dowolnym momencie, ale na konto przypisany jest tylko jeden aktywny klucz. Nowy klucz natychmiast zastępuje poprzedni. Przechowuj ten klucz bezpiecznie, ponieważ daje on dostęp do Twojej przedpłaconej puli kredytowej. Użyj tych danych uwierzytelniających z dowolnym standardowym SDK zgodnym z OpenAI, aby rozpocząć integrację.
Konfiguracja bazowa
Wskaż klientowi nasz dedykowany adres bazowy do żądań bez cenzury. Użyj standardowego BASE_URL parametru do poprawnego kierowania ruchu. Struktura endpointu odzwierciedla konwencje OpenAI dla łatwego przełączania. Musisz podać swój klucz API w Authorization Nagłówek. Ustaw identyfikator modelu na uncensored w obiekcie konfiguracji. Zapewnia to, że żądanie kieruje się do odpowiedniego modelu językowego LLM uncensored. Zweryfikuj połączenie, wypisując dostępne modele za pomocą /v1/models endpoint. To potwierdza poprawność Twojego uwierzytelnienia przed wysłaniem dużych ładunków danych.
Wysyłanie żądań
Wykonaj standardowe żądanie POST do endpointu uzupełniania czatu. Twoja ładunek musi zawierać model pole ustawione na uncensored. Przekaz swoje wiadomości w tablicy pod messages klucz. System akceptuje standardowe definicje ról takie jak user i assistant.Tokeny wejściowe są rozliczane przezroczystym stawki $0.15 za milion tokenów. Tokeny wyjściowe kosztują $0.50 za milion tokenów. Błędy nie zużywają Twojej zaliczki. Ten model rozliczeń zapewnia, że płacisz tylko za faktycznie wygenerowany tekst. Użyj poniższej komendy cURL, aby wysłać swoją pierwszą wiadomość.
Odpowiedzi strumieniowe
Włącz strumieniowanie, ustawiając stream do true w żądaniu. Serwer zwraca strumień Wydarzeń Wysyłanych Serwerem (SSE). Każdy fragment zawiera część wygenerowanego tekstu. Ostatni fragment zawiera kompletne statystyki użycia tokenów. Pozwala to wyświetlać tekst użytkownikom w czasie rzeczywistym. Strumieniowanie działa identycznie we wszystkich obsługiwanych SDK. Upewnij się, że Twój klient poprawnie obsługuje buforowanie częściowego tekstu. Użyj tej metody do generowania treści długiej formy lub interaktywnych interfejsów czatu. Poniższy przykład demonstruje, jak obsłużyć strumień w Pythonie.
Wywoływanie funkcji
Zdefiniuj narzędzia w żądaniu za pomocą tools parametr. Model zwraca strukturalne wywołania narzędzi, gdy jest to odpowiednie. Możesz określić tool_choice aby wymusić konkretne zachowanie. Przekaż odpowiedź narzędzia z powrotem do modelu do dalszego przetwarzania. To obsługuje złożone przepływy pracy wymagające interakcji z zewnętrznymi API. Model automatycznie formatuje JSON, gdy jest to konieczne. Upewnij się, że definicje funkcji pasują do oczekiwanego schematu. Ta funkcja działa wraz ze standardowymi ustawieniami temperatury i top-p. Użyj Node.js do skutecznej implementacji obsługi narzędzi.
Tryb JSON i limity
Żądaj ścisłego wyjścia JSON, ustawiając response_format do {"type": "json_object"}. Model gwarantuje poprawną strukturę JSON w odpowiedzi. To jest idealne do parsowania danych w logice Twojej aplikacji. Pamiętaj o limicie okna kontekstowego 100 000 tokenów. Obejmuje on zarówno prompt, jak i completion. Maksymalna liczba tokenów na żądanie to 16 000. Jeśli nie określisz max_tokens, limit domyślnie wynosi 2 048. Żądania są ograniczone do 300 na minutę na klucz. Żądania współbieżne są ograniczone do ośmiu jednocześnie. Ciało żądania nie może przekraczać 8 MB. Obsługuj błędy grzecznie, jak pokazano w poniższym przykładzie strumieniowania.
cURL
curl https://api.modelsuncensoredopenrouter.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "list three json keys"}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.modelsuncensoredopenrouter.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.modelsuncensoredopenrouter.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)