Bazowy URL i autoryzacja
Połącz się z API, korzystając z podanego adresu bazowego i swojego klucza API. To endpoint działa ze standardowymi bibliotekami SDK OpenAI poprzez prostą aktualizację konfiguracji. Otrzymujesz jeden aktywny klucz na konto, który generujesz podczas rejestracji za pomocą Google lub e-maila. Klucz uwierzytelnia każde żądanie, które wysyłasz do usługi.
curl https://api.hubuncensored.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Generate a JSON object with user id and role"}]
}'Chroń swój klucz. Jeśli wygenerujesz nowy, poprzedni klucz staje się nieprawidłowy natychmiast. Zapewnia to, że zawsze kontrolujesz dostęp do swojego kredytu z góry bez pozostawiania starych uprawnień.
Punkt końcowy Uzupełnień Czat
Wyślij dane promptu do endpointu chat completions dla generowania tekstu. To jest główny interfejs dla Twoich aplikacji, obsługujący wszystkie wejścia i wyjścia tekstowe. Musisz określić model jako 'uncensored', aby zapewnić spójne zachowanie. API przetwarza Twoje zapytanie i zwraca wygenerowaną odpowiedź tekstową.
from openai import OpenAI
client = OpenAI(base_url="https://api.hubuncensored.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)Błędy takie jak 401 wskazują na nieprawidłowy klucz, podczas gdy 402 oznacza, że potrzebujesz więcej środków. Żądania są rozliczane na podstawie rzeczywistego zużycia tokenów, więc błędy nie obniżają Twojego salda.
Odpowiedzi strumieniowe przez SSE
Otrzymuj tokeny w czasie rzeczywistym za pomocą Server-Sent Events (SSE). Ta metoda zmniejsza postrzegane opóźnienie dla długich wyjść, dostarczając dane w miarę ich generowania. Możesz przeanalizować ostatni fragment, aby uzyskać dokładne statystyki zużycia tokenów do rozliczeń. Strumieniowanie jest idealne dla interfejsów widocznych dla użytkownika, gdzie liczy się natychmiastowa informacja zwrotna.
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)Okno kontekstowe pozwala na łącznie 100 000 tokenów, obejmując zarówno prompt, jak i uzupełnienie. Strumieniowanie nie zmienia podstawowych limitów tokenów ani struktury cenowej.
Wywoływanie funkcji i tryb JSON
Używaj wywoływania funkcji do integracji wyników ustrukturyzowanych w swoim przepływie pracy. Określ narzędzia i tool_choice, aby kierować formatem odpowiedzi modelu. Możesz również wymusić ścisły tryb JSON za pomocą parametru response_format dla niezawodnego parsowania. To zapewnia, że Twoja aplikacja otrzymuje dane w dokładnie tej strukturze, którą zdefiniowałeś.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.hubuncensored.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);Te funkcje działają w ramach jednego niecenzurowanego modelu. Nie ma routingu modeli ani wyboru między różnymi dostawcami. Polegasz na jednym modelu open-weight dostrojonym do treści bez ograniczeń.
Parametry: Temperatura, Top P i Stop
Kontroluj zachowanie generowania za pomocą standardowych parametrów takich jak temperature i top_p. Dostosuj te wartości, aby zbalansować kreatywność i determinizm w swoich wynikach. Parametr stop pozwala zatrzymać generowanie przy określonych sekwencjach. Możesz również ustawić presence_penalty i frequency_penalty, aby wyrefinować styl wyjścia.
Ustaw max_tokens na 16 000 dla długich odpowiedzi. Jeśli pominiesz max_tokens, domyślna wartość to 2 048 tokenów na żądanie. Te ustawienia dają Ci precyzyjną kontrolę nad procesem generowania.
Limity, Błędy i Okno Kontekstu
Monitoruj swoje użycie względem ścisłych limitów prędkości, aby zapewnić płynną pracę. Masz dozwolone 300 żądań na minutę i 8 żądań równoległych na klucz. Maksymalny rozmiar ciała żądania wynosi 8 MB. Przekroczenie tych limitów zwraca błąd limitu prędkości 429. Zrozumienie tych ograniczeń pomaga projektować solidną logikę ponawiania.
Okno kontekstowe obsługuje łącznie 100 000 tokenów. Obejmuje ono zarówno prompt wejściowy, jak i wygenerowane uzupełnienie. Zaplanuj zużycie tokenów odpowiednio, aby uniknąć obcinania lub błędów.