id ▾
Dapatkan kunci API

ai Unrestricted: Pemecahan Masalah Kesalahan Umum

Pengembang sering menghadapi tembok saat beralih ke penyedia AI tanpa batasan karena asumsi standar tentang format, batas, dan perilaku streaming tidak lagi berlaku. Panduan ini membantu Anda men-debug error integrasi paling umum sehingga Anda dapat menerapkan model Anda tanpa kredit terbuang atau alur kerja yang rusak.

Terakhir diperbarui

Ringkasan

  1. Jendela konteks mencakup prompt dan completion, sehingga Anda harus memesan ruang untuk output agar menghindari pemotongan.
  2. Mode JSON memerlukan kepatuhan skema yang ketat, dan model mungkin mengembalikan teks tambahan jika promptnya ambigu.
  3. Respons streaming melalui SSE mengharuskan Anda menangani token parsial dengan aman tanpa merusak parser Anda.
  4. Batas laju diterapkan per kunci, sehingga pola lalu lintas yang terburu-buru memerlukan strategi backoff yang hati-hati untuk menghindari error 429.

1. Batas Atas Jendela Konteks

Setiap permintaan menghitung token dari prompt dan kelengkapan yang dihasilkan terhadap batas total Anda. Jika Anda mengirim konteks besar dan meminta respons panjang, Anda akan mencapai batas sebelum model selesai menghasilkan teks. Model uncensored kami mendukung jendela konteks 100.000 token, tetapi output maksimum per permintaan dibatasi hingga 16.000 token kecuali Anda menentukan sebaliknya. Selalu hitung token yang tersisa setelah prompt sistem dan riwayat percakapan Anda untuk memastikan model memiliki ruang yang cukup untuk menyelesaikan pemikirannya. Kegagalan untuk memperhitungkan ini sering kali menghasilkan respons terpotong yang membingungkan parser downstream.

from openai import OpenAI

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

2. Mode JSON & Format Ketat

Mode JSON memaksa model untuk menghasilkan JSON yang valid, tetapi tidak menjamin kepatuhan skema yang sempurna di setiap kasus tepi. Ketika Anda mengatur format respons menjadi json_object, model mengutamakan validitas sintaksis daripada penegakan tipe yang ketat. Jika skema Anda terlalu kompleks, model mungkin menghasilkan bidang yang tidak nyata atau melewatkan bidang opsional untuk menjaga struktur tetap valid. Selalu validasi output di sisi Anda sebelum menguraikannya sebagai tipe ketat. Ini terutama berlaku untuk model uncensored yang mungkin mengambil kebebasan kreatif dengan konten di dalam nilai JSON.

import OpenAI from "openai";

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

3. Respons Parsial Streaming

Streaming memungkinkan Anda menerima token saat token tersebut dihasilkan, yang mengurangi latensi yang dirasakan untuk respons besar. Anda harus menangani stream Server-Sent Events (SSE) dengan benar untuk menghindari kehilangan data atau kesalahan parser. Setiap potongan berisi token parsial, dan potongan terakhir menyertakan total penggunaan token untuk permintaan tersebut. Jika Anda terputus lebih awal, Anda kehilangan data penggunaan terakhir dan mungkin membuat server berada dalam keadaan tidak konsisten. Selalu pastikan klien Anda dapat menangani fragmen JSON yang tidak lengkap jika Anda melakukan streaming data terstruktur.

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)

4. Kesalahan Pemilihan Alat & Function Calling

Pemanggilan fungsi memerlukan definisi skema yang presisi dan sering gagal jika model tidak dapat memetakan input pengguna ke alat tertentu. Jika Anda menentukan tool_choice, model mungkin memaksa panggilan alat bahkan ketika tidak tepat, yang mengarah pada argumen kosong atau tidak relevan. Pastikan definisi alat Anda sederhana dan dijelaskan dengan jelas. Model mendukung format alat kompatibel OpenAI standar, sehingga Anda dapat menggunakan SDK yang ada. Namun, selalu verifikasi bahwa argumen yang diteruskan ke alat sesuai dengan tipe yang Anda harapkan secara tepat.

curl https://api.chatgptunrestricted.cc/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Summarize the technical specs of the new GPU architecture"}]
  }'

5. Pengaturan Suhu & Kreativitas

Menyesuaikan temperatur mengubah bagaimana model memilih token, yang memengaruhi keacakan output. Temperatur yang lebih tinggi menghasilkan respons yang lebih kreatif dan beragam, sedangkan temperatur yang lebih rendah membuat output lebih deterministik dan terfokus. Jika Anda menggunakan model untuk generasi kode atau pengambilan fakta, pertahankan temperatur rendah untuk menghindari halusinasi. Untuk penulisan kreatif atau brainstorming, tingkatkan temperatur untuk menjelajahi ide yang lebih bervariasi. Eksperimen dengan top_p juga untuk mengontrol pengumpulan inti dan lebih memperbaiki kualitas output.

from openai import OpenAI

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

6. Menangani Payload Besar

Payload besar dapat melebihi batas body permintaan 8 MB, menyebabkan panggilan API Anda gagal secara diam-diam atau dengan error 413. Jika Anda mengirim riwayat percakapan panjang, pertimbangkan untuk memangkas pesan lama atau meringkasnya sebelum dikirim. Model dapat menangani 100,000 token, tetapi ukuran fisik payload JSON juga penting. Pastikan pustaka klien Anda mengompresi atau memformat data secara efisien. Selalu periksa panjang konten sebelum membuat permintaan untuk menghindari pemborosan kredit pada upaya yang gagal.

import OpenAI from "openai";

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

7. Throttling Batas Kecepatan

Batas laju diterapkan per kunci API, dengan maksimum 300 permintaan per menit dan 8 permintaan simultan. Jika Anda melebihi batas ini, Anda akan menerima error 429. Terapkan backoff eksponensial di klien Anda untuk menangani percobaan ulang dengan lancar. Lalu lintas yang melonjak dapat dengan cepat menghabiskan batas konkurensi Anda, jadi sebarkan permintaan seiring waktu jika memungkinkan. Memantau penggunaan Anda dan menyesuaikan pengaturan konkurensi dapat membantu Anda tetap berada dalam batas tanpa mengorbankan kinerja. Ini sangat penting untuk menjaga pengalaman pengguna yang lancar di lingkungan produksi.

curl https://api.chatgptunrestricted.cc/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Summarize the technical specs of the new GPU architecture"}]
  }'

8. Ketidaksesuaian Penghitungan Token

Tokenisasi yang berbeda mungkin menghitung token secara berbeda, menyebabkan ketidaksesuaian antara hitungan lokal Anda dan hitungan API. Selalu gunakan tokenisasi yang sama dengan model untuk akuntansi yang akurat. API membebankan biaya berdasarkan token aktual yang diproses, sehingga memahami perbedaan ini membantu Anda memprediksi biaya secara akurat. Jika Anda melihat variasi signifikan, tinjau implementasi tokenisasi Anda. Ini sangat penting saat mengintegrasikan dengan perpustakaan pihak ketiga yang mungkin menggunakan strategi tokenisasi yang berbeda.

from openai import OpenAI

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

Pertanyaan yang sering diajukan

Apa keunggulan utama menggunakan model AI tanpa batasan dibandingkan penawaran standar?

Model AI tanpa batasan biasanya tidak menolak topik dewasa yang sah, kreatif, atau kontroversial, memberikan lebih banyak kebebasan untuk kasus penggunaan tertentu. Model ini memungkinkan pengembang menghasilkan konten tanpa kendala filter keamanan korporat, menjadikannya ideal untuk aplikasi khusus atau yang bersifat edgy.

Bagaimana cara menangani error parsing JSON saat menggunakan streaming?

Streaming mengirim data parsial, jadi Anda harus melakukan buffering chunk hingga stream selesai atau memproses secara inkremental jika klien Anda mendukungnya. Selalu validasi struktur JSON terakhir sebelum menggunakannya dalam aplikasi Anda. Jika terjadi kesalahan, periksa output model untuk teks tambahan yang mungkin merusak sintaks JSON.

Apakah saya bisa menggunakan API ini untuk pemanggilan fungsi dengan alat yang ada?

Ya, API ini mendukung function calling standar yang kompatibel dengan OpenAI. Anda dapat mendefinisikan tools dalam permintaan Anda dan model akan mencoba memanggilnya jika konteks mengisyaratkannya. Pastikan skema tools Anda jelas dan sesuai dengan tipe argumen yang diharapkan.

Apa yang terjadi jika saya melebihi batas output 16.000 token?

Jika Anda meminta lebih dari 16.000 token untuk kelengkapan, model akan berhenti menghasilkan pada batas tersebut. Untuk mendapatkan respons yang lebih panjang, Anda mungkin perlu menerapkan strategi untuk melanjutkan generasi dalam permintaan berikutnya atau menyesuaikan prompt Anda agar lebih ringkas.

Buka kunci API Anda

Daftar, ambil kunci Anda, dan arahkan klien Anda ke URL dasar baru. Itu saja yang perlu Anda lakukan.

Dapatkan kunci API