Permulaan Pantas API: Sambungkan Pelanggan Anda ke Model Tanpa Sensor Kami
Permulaan pantas ini menunjukkan cara mengarahkan klien serasi OpenAI ke model teks uncensored kami. Anda memerlukan satu URL asas, satu model id dan kunci anda.
Pengesahan dan URL Asas
Setiap permintaan dihantar ke https://doesgrokhaveanapi.com/v1 dan membawa kunci anda dalam Authorization header sebagai token pembawa. Salin kunci dari halaman Dapatkan Kunci API; ia dipaparkan sekali anda mendaftar, dan anda boleh menggantikannya pada bila-bila masa.
Pendek dan langsung: URL asas dan kunci adalah hanya dua nilai yang berubah apabila anda memindahkan klien sedia ada.
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?"}]
}'
Penamat Chat Completions
Hantar POST /v1/chat/completions dengan senarai mesej. Respons mempunyai bentuk yang sama dengan respons penyelesaian chat OpenAI, jadi parser sedia ada kekal berfungsi.
- Gunakan peranan
useruntuk prompt anda dansystemuntuk arahan. - Baca jawapan daripada
choices[0].message.content. - Kiraan token kembali dalam
usage, dan itulah yang dikreditkan kepada kredit anda.
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)
Model yang Disokong: 'uncensored'
Tetapkan medan model kepada uncensored. Ini adalah satu-satunya model id pada perkhidmatan ini, jadi tiada pilihan untuk dipilih. GET /v1/models mengembalikannya, yang merupakan cara pantas untuk mengesahkan bahawa kunci berfungsi.
Model ini adalah model berat terbuka yang berjalan di pelayan kami sendiri. Ia tidak menolak permintaan dewasa, fiksyen atau kontroversi yang sah. Satu-satunya had keras ialah kandungan seksual melibatkan kanak-kanak.
Pengaliran dan Pemanggilan Fungsi
Tambah stream: true untuk menerima token sebagai acara dihantar pelayan. Chunk akhir membawa nombor penggunaan, jadi anda boleh log kos setiap permintaan tanpa panggilan kedua.
Pemanggilan fungsi berfungsi melalui piawaian tools dan tool_choice medan. Takrifkan setiap fungsi dengan skema JSON dan baca tool_calls array jawapan.
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)
Parameter: Suhu, Top P, dan Henti
Parameter pensampelan yang disokong ialah temperature, top_p, stop, seed, presence_penalty dan frequency_penalty. Gunakan suhu rendah untuk kod dan pengekstrakan, dan suhu yang lebih tinggi untuk fiksyen.
Jika anda tidak menetapkan max_tokens, had output lalai ialah 2,048 token. Had maksimum keras bagi setiap permintaan ialah 16,000 token.
Mod JSON dan Format Respons
Tetapkan response_format ke { 'type': 'json_object' } apabila anda memerlukan output yang boleh dibaca mesin. Minta JSON dalam prompt juga, kerana model mengikuti arahan dan format bersama-sama.
- Terangkan medan yang anda perlukan dalam mesej sistem.
- Kekalkan contoh pendek, dua atau tiga kunci.
- Sahkan keputusan dalam kod anda sebelum anda menyimpannya.
Had Kadar dan Penanganan Ralat
Setiap kunci boleh menghantar 300 permintaan setiap minit dan 8 permintaan serentak. Permintaan dengan badan melebihi 8 MB akan ditolak. Status 401 bermaksud kunci salah, 402 bermaksud kredit habis, dan 429 bermaksud anda mencapai had kadar: tunggu dan cuba semula dengan backoff.
Ralat dan penolakan tidak dikenakan caj. Ingat jendela konteks 100,000 token untuk benang panjang: jumlah prompt dan penyelesaian dikira.
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);Soalan lazim
Apakah URL asas yang harus saya gunakan?
Gunakan https://doesgrokhaveanapi.com/v1 sebagai URL asas. Mana-mana SDK yang serasi dengan OpenAI menerimanya apabila anda menukar URL asas dan kunci, dan tiada apa-apa lagi dalam kod anda perlu diubah.
Model id manakah yang saya hantar?
Hantar tanpa sensor. Ia adalah satu-satunya model pada perkhidmatan ini. Panggil GET /v1/models untuk mengesahkan id dan bahawa kunci anda aktif sebelum anda menjalankan pekerjaan yang lebih besar.
Mengapa permintaan saya mengembalikan 402?
Respons 402 bermakna kredit prabayar dalam akaun telah habis. Tambah baki dengan USDT pada TRC20 atau USDC pada Base bermula $20, dan permintaan seterusnya akan diproses. Permintaan yang gagal tidak akan ditadbir.
Kunci API anda hanya satu langkah lagi
Daftar, salin token anda, kemas kini titik akhir. Itulah keseluruhan proses.