pl ▾
Uncensored AI API dla deweloperówdoesgrokhaveanapi.com

Szybki start API: Połącz swój klient z naszym modelem bez cenzury

Ten szybki start pokazuje, jak skierować klienta zgodnego z OpenAI do naszego modelu tekstu uncensored. Potrzebujesz jednego adresu URL bazowego, jednego identyfikatora modelu i swojego klucza.

Uwierzytelnianie i URL bazowy

Każde żądanie kierowane jest do https://doesgrokhaveanapi.com/v1 i przechowuje Twój klucz w Authorization nagłówek jako token nośnika. Skopiuj klucz ze strony Pobierz klucz API; jest wyświetlany po rejestracji i możesz go zastąpić w dowolnym momencie.

Krótko i zwięźle: adres URL bazowy i klucz to jedyne dwie wartości, które zmieniają się podczas przenoszenia istniejącego klienta.

curl https://api.doesgrokhaveanapi.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 endpoint for the model?"}]
  }'

Endpoint Chat Completions

Wyślij POST /v1/chat/completions z listą wiadomości. Odpowiedź ma taki sam kształt jak odpowiedź OpenAI chat completions, więc istniejące parsery działają bez zmian.

  • Użyj roli user dla swojej podpowiedzi i system instrukcje.
  • Przeczytaj odpowiedź z choices[0].message.content.
  • Liczby tokenów zwracane są w usage, i to za to jest naliczana Twoja kredyty.
from openai import OpenAI

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

Obsługiwany model: 'uncensored'

Ustaw pole modelu na uncensored. To jedyny identyfikator modelu w usłudze, więc nie ma czego wybierać. GET /v1/models zwraca go, co jest szybkim sposobem na potwierdzenie, że klucz działa.

Model jest modelem open-weight, który działa na naszych własnych serwerach. Nie odmawia przetwarzania legalnych żądań dla dorosłych, treści fikcyjnych lub kontrowersyjnych. Jedynym twardym limitem jest treść seksualna z udziałem małoletnich.

Strumieniowanie i wywoływanie funkcji

Dodaj stream: true otrzymywanie tokenów jako zdarzenia wysyłane przez serwer. Ostatni fragment zawiera liczby użycia, więc możesz logować koszt żądania bez dodatkowego wywołania.

Wywoływanie funkcji działa poprzez standardowe tools i tool_choice pola. Zdefiniuj każdą funkcję za pomocą schematu JSON i odczytaj tool_calls tablicy odpowiedzi.

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)

Parametry: Temperatura, Top P i Stop

Obsługiwane parametry próbkowania to temperature, top_p, stop, seed, presence_penalty i frequency_penalty. Użyj niskiej temperatury dla kodu i ekstrakcji, a wyższej dla fikcji.

Jeśli nie ustawisz max_tokens, domyślny limit wyjścia to 2 048 tokenów. Maksymalna wartość na żądanie to 16 000 tokenów.

Tryb JSON i formaty odpowiedzi

Ustaw response_format do { 'type': 'json_object' } gdy potrzebujesz wyjścia czytelne dla maszyn. Poproś o JSON w podpowiedzi, ponieważ model podąża za instrukcją i formatem jednocześnie.

  1. Opisz pola, których potrzebujesz w wiadomości systemowej.
  2. Przykład powinien być krótki, dwie lub trzy klucze.
  3. Zweryfikuj wynik w kodzie przed jego zapisaniem.

Limity szybkości i obsługa błędów

Każdy klucz może wysyłać 300 żądań na minutę i 8 żądań jednocześnie. Żądania z ciałem większym niż 8 MB są odrzucane. Kod 401 oznacza, że klucz jest nieprawidłowy, 402 oznacza, że zabrakło środków, a 429 oznacza, że przekroczono limit szybkości: poczekaj i ponów próbę z backoff.

Błędy i odmowy nie są rozliczane. Pamiętaj o oknie kontekstu wynoszącym 100 000 tokenów przy długich wątkach: liczba tokenów promptu i uzupełnienia łącznie.

Node.js

import OpenAI from "openai";

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

Najczęściej zadawane pytania

Jaki adres base URL powinienem użyć?

Użyj https://doesgrokhaveanapi.com/v1 jako bazowego URL. Każde SDK kompatybilne z OpenAI akceptuje go po zmianie bazowego URL i klucza, a reszta kodu pozostaje bez zmian.

Jaki ID modelu powinienem wysłać?

Wyślij niecenzurowane. To jedyny model w ofercie. Wywołaj GET /v1/models, aby potwierdzić identyfikator i aktywność klucza przed uruchomieniem większych zadań.

Dlaczego moje żądanie zwraca błąd 402?

Odpowiedź 402 oznacza, że kredyt prepay na koncie został wyczerpany. Doładuj go USDT na TRC20 lub USDC na Base od $20, a kolejne żądanie przejdzie pomyślnie. Nieudane żądania nie są rozliczane.

Twój klucz API jest oddalony o jeden krok

Zarejestruj się, skopiuj swój token, zaktualizuj punkt końcowy. To cały proces.

Zacznij teraz