Dokumentacja API: Chat Completions dla pipeline'ów tekstu
Uruchom swój LLM bez cenzury w swoim pipeline'ie mowa-na-tekst dzięki temu przewodnikowi. Użyj endpointu kompatybilnego z OpenAI, aby wysłać tekst, strumieniować wyniki lub wywoływać narzędzia za pomocą standardowych SDK.
Base URL i uwierzytelnianie
Zacznij od wskazania klienta pod adres bazowy https://api.speechtotextapis.com/v1. Ten endpoint jest w pełni kompatybilny z OpenAI, co oznacza, że możesz użyć dowolnego standardowego SDK openai, po prostu nadpisując parametr base_url. Nie musisz przepisywać logiki zapytań; wystarczy zamienić URL i wstrzyknąć swój klucz API. Twój klucz jest generowany natychmiast po rejestracji na stronie kluczy. Jest powiązany z Twoim kontem i możesz go wygenerować ponownie w dowolnym momencie, co natychmiast unieważnia stary klucz. Nie ma wymogu podania numeru telefonu, a darmowy kredyt próbny aktywuje się bez karty. Ta konfiguracja utrzymuje Twój potok prosty, zapewniając jednocześnie dostęp do modelu bez cenzury, który obsługuje legalną treść dla dorosłych bez łagodzenia odpowiedzi.
Pierwsze zapytanie
Wyślij standardowe zapytanie POST pod adres /v1/chat/completions. Identyfikator modelu to zawsze uncensored. Ten model to wariant o otwartych wagach dostrojony do minimalnej odmowy w przypadku legalnych tematów. Działa na naszych dedykowanych serwerach GPU. Nie dostaniesz GPT ani Claude; otrzymujesz spójne, jednolite doświadczenie z jednym modelem. Treść zapytania zawiera flagi model, messages oraz stream. Poniżej znajduje się podstawowy przykład cURL do sprawdzenia łączności i uzyskania odpowiedzi tekstowej.
curl https://api.speechtotextapis.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'
To zapytanie zwraca obiekt JSON z wygenerowanym tekstem. Jeśli klucz jest nieprawidłowy, otrzymasz błąd 401. Jeśli Twój przedpłacony kredyt zostanie wyczerpany, otrzymasz błąd 402. To główne błędy do sprawdzenia przed debugowaniem logiki.
Integracja z Python SDK
Dla programistów Pythona oficjalna biblioteka openai działa od ręki. Zainicjuj klienta swoim kluczem i niestandardowym adresem bazowym. Przekaż identyfikator modelu uncensored w wywołaniu ukończenia czatu. To podejście jest idealne do postprocesowania wyniku ASR, czyszczenia szumów transkrypcji lub ekstrakcji danych strukturalnych z surowego tekstu. Bezcenzurowa natura zapewnia, że jeśli Twoja transkrypcja zawiera dialogi dla dorosłych lub kontrowersyjne terminy, LLM przetworzy je bez blokowania lub przepisywania dla porządku. Jest to kluczowe dla potoków kreatywnych, gdzie wierność wobec źródłowego audio jest najważniejsza. SDK obsługuje tokenizację i logikę ponownych prób automatycznie.
from openai import OpenAI
client = OpenAI(base_url="https://api.speechtotextapis.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)
Pamiętaj, że identyfikator modelu to ściśle uncensored. Nie zastępuj go gpt-4 ani innymi ogólnymi identyfikatorami, ponieważ mogą nie kierować do naszych konkretnych wag bez cenzury.
Integracja z Node SDK
Programiści Node.js mogą użyć pakietu npm openai w podobny sposób. Ustaw apiKey i baseURL w konstruktorze klienta. Następnie wywołaj chat.completions.create z modelem uncensored. Jest to przydatne dla skryptów transkrypcji w czasie rzeczywistym lub zadań generowania tekstu po stronie serwera. API obsługuje standardowe ładunki JSON. Możesz dołączyć komunikaty systemowe, aby zdefiniować ton lub rolę asystenta. Model bez cenzury reaguje bezpośrednio na te prompty bez dodatkowych warstw bezpieczeństwa, które mogłyby zmienić wynik kreatywny. Upewnij się, że obsługujesz strumień odpowiedzi, jeśli przetwarzasz duże dokumenty. Node SDK abstrahuje szczegóły HTTP, pozwalając Ci skupić się na logice pipeline'ów tekstu.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.speechtotextapis.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);
Limity zapytań obowiązują na poziomie klucza. Jeśli przekroczysz 300 zapytań na minutę, API zwróci błąd 429. Zaimplementuj wykładnicze opóźnienie w logice ponownych prób, aby obsłużyć to w sposób elegancki.
Odpowiedzi strumieniowe (SSE)
Dla aplikacji o niskich opóźnieniach włącz strumieniowanie, ustawiając stream: true w swoim zapytaniu. API zwraca fragmenty zdarzeń wysyłanych przez serwer (SSE). Każdy fragment zawiera częściową deltę tekstu. Jest to niezbędne dla napisów na żywo lub interaktywnych interfejsów czatu. Model bez cenzury obsługuje strumieniowanie natywnie. Nie musisz czekać na pełne ukończenie, aby rozpocząć wyświetlanie tekstu. Znacząco redukuje to postrzegane opóźnienie. Skonfiguruj swoje SDK do obsługi zdarzeń strumienia. W Pythonie iteruj po obiekcie strumienia. W Node użyj iteratora asynchronicznego. Strumień kończy się końcowym fragmentem zawierającym powód zakończenia. Ta metoda jest wydajna pod względem przepustowości i doświadczenia użytkownika.
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)
Strumieniowanie nie zmienia rozliczenia tokenów. Płacisz za całkowitą liczbę tokenów wejściowych i wyjściowych niezależnie od tego, czy strumieniujesz, czy żądasz pełnej odpowiedzi.
Limity i ograniczenia
Twoje konto ma sztywny limit 300 zapytań na minutę na klucz API. Ciało zapytania nie może przekraczać 8 MB. Okno kontekstu wynosi 100 000 tokenów, obejmując zarówno prompt, jak i completion. To wystarczy do większości zadań przetwarzania dokumentów i transkrypcji długiego kontekstu. Jeśli wyślesz prompt przekraczający okno, API zwróci błąd. Model bez cenzury blokuje tylko jeden konkretny limit: treści seksualne z udziałem nieletnich. Cała pozostała prawna treść dla dorosłych jest dozwolona. Dzięki temu jest idealny do potoków mediowych, gdzie spodziewana jest różnorodność treści. Nie ma subskrypcji; płacisz za zużycie. Przedpłacony kredyt nie wygasa. Użyj endpointu GET /v1/models, aby zweryfikować dostępność, jeśli zajdzie taka potrzeba, choć identyfikator modelu to zawsze uncensored.
Parametry API
Wszystkie rzeczywiste limity i funkcje API w jednym miejscu — sprawdź je przed doładowaniem.
| Element | Wartość |
|---|---|
| Format API | zgodne z OpenAI: działa każdy SDK OpenAI — zmień base URL i klucz |
| ID modelu | uncensored |
| Base URL | https://api.speechtotextapis.com/v1 |
| Uwierzytelnianie | Authorization: Bearer YOUR_KEY |
| Endpointy | POST /v1/chat/completions · GET /v1/models |
| Okno kontekstu | 100 000 tokenów (wejście + odpowiedź) |
| Parametry | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Maks. odpowiedź | do reszty okna 100 000 tokenów; max_tokens opcjonalne (bez osobnego limitu) |
| Wywoływanie funkcji | tak — tools, tool_choice; odpowiedź zawiera tool_calls, także w strumieniu; wyniki jako role: tool |
| Strumieniowanie | tak — server-sent events; ostatni fragment zawiera zużycie tokenów |
| Tryb JSON | response_format: {"type": "json_object"} |
| Limit zapytań | 300 zapytań na minutę na klucz |
| Nagłówki odpowiedzi | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| Równoległe zapytania | do 8 jednocześnie na klucz |
| Rozmiar zapytania | do 8 MB |
| Cena | $0,25 za 1 mln tokenów wejścia · $1,00 za 1 mln tokenów wyjścia |
| Darmowy kredyt | $0,50 na 7 dni, bez karty · Klucz próbny: 2 równoległe żądania, 60 na minutę; pełne limity (8 i 300) po pierwszym doładowaniu |
| Bonus | +5% od $50, +10% od $100 |
| Rozliczenie | przedpłacony kredyt według rzeczywistego zużycia; błędy i odmowy są darmowe |
| Ważność | opłacony kredyt nie wygasa, bez subskrypcji |
| Doładowanie | USDT (TRC20) lub USDC (Base), dowolna pełna kwota od $10 do $500 |
| Klucze | jeden aktywny klucz na konto; nowy zastępuje stary |
| Treści | treści dla dorosłych dozwolone; treści seksualne z udziałem nieletnich są odrzucane |
| Logowanie | Google albo e-mail i hasło |
Kody błędów
Błędy wracają jako JSON ze stałym type; nieudane i odrzucone zapytania są bezpłatne.
| Kod | Typ | Znaczenie |
|---|---|---|
400 | bad_request | błędny JSON, puste wiadomości, zły parametr lub za długi kontekst |
401 | missing_key · invalid_key · key_revoked | brak klucza, zły klucz lub klucz zastąpiony nowym |
402 | no_credit | brak kredytu — doładuj, działa od razu |
403 | content_blocked | treści seksualne z nieletnimi — odmowa, bez opłaty |
404 | not_found | nieznany endpoint |
413 | request_too_large | treść większa niż 8 MB |
429 | rate_limited · concurrency | ponad 300/min lub 8 równolegle — odczekaj i ponów |
503 | upstream_busy | model zajęty — ponów za kilka sekund |
Pytania i odpowiedzi
Czy to oficjalne API OpenAI?
Nie, to niezależny serwis. Hostujemy własny model bez cenzury kompatybilny z interfejsem chat completions OpenAI. Nie jest to GPT-4 ani GPT-3.5. Sprawdź dokumentację OpenAI, aby poznać ich konkretne ceny i limity, ponieważ nasze są inne.
Co się stanie, gdy zabraknie kredytu?
Twój klucz API pozostaje aktywny, ale zapytania zwrócą błąd 402 Payment Required. Musisz doładować konto przedpłacone kryptowalutą (USDT lub USDC), aby wznowić korzystanie. Kredyty nigdy nie wygasają, więc możesz doładować środki w dowolnym momencie.
Czy model bez cenzury filtruje treści dla dorosłych?
Filtruje treści seksualne z udziałem małoletnich, co jest ścisłym blokiem. Dla wszystkich innych legalnych treści dla dorosłych, scenariuszy fikcyjnych lub kontrowersyjnych tematów model nie odmawia ani nie zmiękcza odpowiedzi. Zapewnia to, że Twój pipeline zachowuje oryginalny ton i znaczenie tekstu źródłowego.
Twój klucz jest o jeden formularz stąd
Utwórz konto, skopiuj klucz, zmień base URL. To cała konfiguracja.