Szybki start: Twoje pierwsze żądanie
Wyślij pierwszą wiadomość do modelu uncensored natychmiast. Użyj standardowego endpointu chat-completions do generowania tekstu. Model odpowiada na prompty w języku naturalnym bez odmów treści dla legalnego użytku dorosłego. To rozwiązanie działa z dowolnym klientem kompatybilnym z OpenAI.
Zacznij od zainstalowania SDK dla preferowanego języka. Następnie skonfiguruj swój klucz API. Poniższy przykład pokazuje podstawowe żądanie curl do przetestowania łączności.
Możesz dostosować parametry takie jak temperatura, aby kontrolować losowość. Odpowiedź zwraca wygenerowany tekst bezpośrednio. Ten prosty przepływ pozwala zweryfikować działanie API przed zbudowaniem bardziej złożonej logiki.
curl https://api.apiaicharacter.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "What is the current API rate limit status?"}]
}'
Bazowy URL i autoryzacja
Połącz się, używając dedykowanego adresu bazowego dla tego API. Zastąp domyślny endpoint adresem naszego serwera hostowanego. Zapewnia to, że Twoje żądania trafiają bezpośrednio do modelu bez cenzury. Uwierzytelnianie opiera się na jednym kluczu API na konto.
Wygeneruj swój klucz przez panel. Przekaż go w nagłówku Authorization jako token Bearer. Ta metoda jest kompatybilna ze standardowymi SDK OpenAI. Możesz przełączać dostawców, zmieniając tylko podstawowy adres URL i klucz.
Chroń swój klucz. Zapewnia pełny dostęp do Twojego kredytu z góry. Klucz natychmiast zastępuje dowolny poprzedni aktywny klucz po wygenerowaniu.
Punkty końcowe: Chat Completions
Wchodź w interakcję z modelem poprzez endpoint chat completions. To jedyny dostępny endpoint do generowania tekstu. Przyjmuje wiadomości i zwraca wygenerowany tekst. Nie obsługiwane są embeddingi, obrazy ani audio.
Wyślij żądanie POST do trasy chat. Dołącz w ciele żądania swoje wiadomości systemowe i użytkownika. Model przetwarza kontekst i generuje odpowiedź. Możesz użyć trybu JSON dla danych strukturalnych.
Wywoływanie funkcji jest również obsługiwane. Zdefiniuj narzędzia i pozwól modelowi zdecydować, kiedy ich używać. Ta elastyczność pozwala na złożone przepływy pracy agentów. Odpowiedź zawiera wygenerowaną treść oraz zużycie tokenów.
from openai import OpenAI
client = OpenAI(base_url="https://api.apiaicharacter.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)
Parametry: Temperatura, Top P i Stop
Steruj stylem outputu za pomocą standardowych parametrów. Dostosuj temperaturę, aby zmienić poziom kreatywności. Niższe wartości sprawiają, że odpowiedzi są bardziej deterministyczne. Wyższe wartości wprowadzają większą różnorodność.
Używaj top P do filtrowania mało prawdopodobnych słów. Pomaga to zachować spójność, pozwalając jednocześnie na kreatywność. Ustaw sekwencje stop, aby zakończyć generowanie w określonych znacznikach. Jest to przydatne do kontrolowania struktury dialogu.
Parametr seed pozwala na uzyskanie powtarzalnych wyników. Używaj go podczas debugowania swoich promptów. Parametry te dają Ci precyzyjną kontrolę nad zachowaniem modelu. Dostosuj je, aby pasowały do potrzeb Twojej aplikacji.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.apiaicharacter.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 i zużycie tokenów
Otrzymuj odpowiedzi w czasie rzeczywistym za pomocą server-sent events. Strumieniowanie zmniejsza postrzeganą opóźnienie dla użytkowników. API wysyła tokeny w miarę ich generowania. Tworzy to płynniejsze doświadczenie czytania.
Użycie tokenów jest raportowane w końcowym kawałku. Pozwala to na dokładne śledzenie kosztów. Rozliczenia opierają się na rzeczywistym zużyciu tokenów. Błędy i odrzucenia nie generują kosztów.
Wdróż handler strumienia do przetwarzania danych. Aktualizuj swój interfejs użytkownika, gdy przybywają tokeny. To podejście jest idealne dla interfejsów czatu. Model obsługuje strumieniowanie dla wszystkich typów żądań.
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)
Limity szybkości i ograniczenia
Zrozum limity, aby uniknąć przerw w usłudze. Możesz wysyłać 300 żądań 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 w sposób elegancki. Status 401 oznacza, że Twój klucz jest nieprawidłowy. Status 402 oznacza niewystarczający kredyt. Status 429 oznacza, że osiągnąłeś limit szybkości.
Okno kontekstowe obsługuje łącznie 100 000 tokenów. Obejmuje ono zarówno prompt, jak i uzupełnienie. Maksymalna długość odpowiedzi to 16 000 tokenów na żądanie. Ustaw max_tokens, aby kontrolować długość odpowiedzi. Błędy są darmowe, więc logika ponawiania jest bezpieczna.
Typowe pytania
Jaka jest alternatywa dla API Character.ai dla aplikacji bez cenzury?
To API oferuje alternatywę w postaci niecenzurowanego LLM-a do budowania aplikacji tolerancyjnych dla treści NSFW. Korzysta z tej samej struktury chat-completions co API character.ai, ale zapewnia bezpośrednią kontrolę nad moderacją i promptami. Możesz zintegrować je z istniejącymi projektami, aktualizując bazowy URL.
Jak radzić sobie z limitami szybkości i błędami?
Limity wynoszą 300 żądań na minutę i osiem żądań równoległych. Błędy takie jak 401 (nieprawidłowy klucz) lub 402 (brak kredytu) wymagają działania. Błąd 429 oznacza, że powinieneś poczekać przed ponowną próbą. Błędy nie zużywają kredytu, więc możesz bezpiecznie ponowić próbę.
Jaki jest rozmiar okna kontekstowego?
Model obsługuje okno kontekstowe o rozmiarze 100 000 tokenów. Łączna liczba obejmuje zarówno tokeny wejściowe, jak i wyjściowe. Możesz określić maksymalną liczbę tokenów wyjściowych na poziomie 16 000. Pozwala to na długie rozmowy bez utraty kontekstu.
Pobierz swój klucz API teraz
Zarejestruj się, skopiuj swój klucz i zaktualizuj swój bazowy adres URL. To jedyna wymagana konfiguracja.