Uwierzytelnianie i klucze API
Zacznij od utworzenia konta, aby natychmiast uzyskać klucz API. Możesz zarejestrować się za pomocą Google lub adresu e-mail i hasła bez konieczności podawania numeru telefonu. System generuje jeden aktywny klucz na konto, a utworzenie nowego klucza natychmiast zastępuje stary. Do rozpoczęcia potrzebujesz tylko adresu e-mail, a Twoje prompty nie są używane do trenowania modeli. Użyj tego klucza w Authorization nagłówek jako token Bearer dla wszystkich żądań.
Pierwsze żądanie
Wykonaj swoje pierwsze wywołanie do endpointu uzupełniania czatu używając swojego klucza API. Podstawowy URL to https://api.aidphn.com/v1 i działa z standardowymi klientami kompatybilnymi z OpenAI. Musisz określić model uncensored do dostępu do nieograniczonego dużego modelu językowego. Błędy i odrzucenia nie zużywają Twoich z góry opłaconych kredytów, więc możesz testować bezpiecznie.
curl https://api.aidphn.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List the top 5 Rust crates for async HTTP clients"}]
}'
Zweryfikuj działanie klucza, sprawdzając endpoint listy modeli. Potwierdza to łączność przed wysłaniem złożonych promptów. API przyjmuje tekst na wejściu i zwraca tekst na wyjściu, obsługując standardowe parametry takie jak temperatura i top_p.
Integracja SDK Python
Użyj oficjalnej biblioteki Python OpenAI do interakcji z naszym punktem końcowym. Ustaw URL bazowy na nasz serwer API i podaj swój klucz. To podejście pozwala na ponowne użycie istniejącego kodu z projektów OpenAI bez większych zmian. Identyfikator modelu pozostaje uncensored dla wszystkich uzupełnień.
from openai import OpenAI
client = OpenAI(base_url="https://api.aidphn.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)
Możesz skonfigurować parametry takie jak max_tokens do kontrolowania długości wyjścia. Maksymalna domyślna wartość wyjścia to 2 048 tokenów, ale możesz ją zwiększyć do 16 000 w jednym żądaniu. Strumieniowanie jest dostępne dla długich odpowiedzi, aby zmniejszyć opóźnienia.
Użycie SDK Node
Zintegruj interfejs API ze swoimi aplikacjami Node.js za pomocą standardowego pakietu SDK. Ustaw klienta na nasz adres bazowy i uwierzytelnij się swoim kluczem. Metoda ta obsługuje zarówno żądania synchroniczne, jak i asynchroniczne, zapewniając elastyczną integrację. Możesz przekazywać narzędzia do wywoływania funkcji lub wymuszać tryby wyjścia JSON.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.aidphn.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);
Obsłuż odpowiedzi, parsując pole content z obiektu completion. API obsługuje standardowe parametry takie jak stop sekwencje i seed dla powtarzalności. Obsługa błędów powinna uwzględniać limity szybkości i dostępność kredytów.
Odpowiedzi strumieniowe przez SSE
Włącz strumieniowanie, ustawiając stream: true w Twoim żądaniu. API zwraca zdarzenia wysyłane przez serwer (SSE) dla dostarczania tokenów w czasie rzeczywistym. Każda cząstka zawiera częściową zawartość, umożliwiając wyświetlanie wyniku w miarę jego generowania. Ostatnia cząstka zawiera całkowite użycie tokenów dla przejrzystości rozliczeń.
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 zmniejsza postrzeganą opóźnienie dla użytkowników oczekujących na długie odpowiedzi. Możesz przetwarzać tokeny inkrementalnie lub buforować je do późniejszego użycia. Okno kontekstowe obsługuje do 100,000 tokenów dla promptu i uzupełnienia łącznie.
Limity i błędy
Monitoruj swoje użycie względem ścisłych limitów prędkości i sald kredytów. Możesz wysyłać 300 żądań na minutę i mieć 8 żądań równoległych na klucz. Maksymalny rozmiar ciała żądania wynosi 8 MB. Błędy takie jak 401 wskazują na nieprawidłowy klucz, podczas gdy 402 oznacza, że musisz doładować. Błędy 429 sygnalizują, że przekroczyłeś limit prędkości. Doładuj tylko kryptowalutą, zaczynając od $20, aby kontynuować korzystanie z usługi bez przerw.