ID ▾
Dapatkan kunci API

Model LLM Abliterated Terbaik untuk Roleplay: Panduan Setup API

Model Abliterated adalah model bahasa besar di mana mekanisme penegakan penolakan keamanan telah dihapus, memungkinkan model menjawab pertanyaan kontroversial, dewasa, atau niche tanpa terkena filter konten. Pendekatan ini memberikan pengembang kontrol penuh atas suara model dan batas pengetahuan, yang sangat berharga untuk pemrograman, permainan peran, dan penulisan kreatif di mana pagar pembatas standar mungkin memblokir output yang berguna.

Panggung dengan topeng dan gelembung obrolan bercahaya yang terhubung ke terminal kode, mewakili roleplay melalui API

Poin utama

  • Roleplay rusak ketika model menolak atau memberi ceramah di tengah adegan, jadi perilaku penolakan lebih penting daripada skor benchmark mentah.
  • Jendela 100.000 token menampung kartu karakter panjang plus riwayat obrolan berjam-jam.
  • SillyTavern terhubung melalui sumber OpenAI-compatible kustom dengan URL dasar, kunci, dan ID model uncensored.
  • Sesi 50 putaran dengan prompt rata-rata 6.000 token biayanya sekitar $0,05.

Apa yang membuat model bagus untuk bermain peran

Bermain peran adalah ujian berat bagi model bahasa. Model harus mempertahankan suara selama ratusan pesan, mengingat apa yang terjadi tiga adegan yang lalu, tetap dalam karakter saat alur cerita menjadi gelap, dan tidak pernah keluar dari peran untuk menjelaskan dirinya sendiri. Model asisten standar paling sering gagal pada poin terakhir. Model ini menulis paragraf yang bagus, lalu menambahkan peringatan atau menolak putaran alur cerita yang jelas-jelas fiksi.

Model abliterated atau tanpa sensor disesuaikan untuk menghilangkan penolakan tersebut. Itu membantu, tetapi itu hanya salah satu dari lima ciri yang perlu Anda periksa sebelum Anda berkomitmen pada penyedia:

  • Perilaku penolakan. Apakah model mengikuti dialog penjahat atau adegan abu-abu moral tanpa komentar?
  • Panjang konteks. Bisakah kartu karakter, catatan dunia dan riwayat obrolan muat dalam satu permintaan?
  • Konsistensi. Apakah karakter mempertahankan kebiasaan bicara yang sama selama sesi panjang?
  • Kontrol sampling. Dapatkah Anda mengubah suhu, top_p, penalti, dan urutan berhenti?
  • Streaming. Apakah teks muncul token demi token, sehingga balasan terasa seperti percakapan?

Tidak ada yang bisa dengan jujur menamai pemenang tunggal untuk setiap gaya cerita. Selera itu penting, dan dua penulis akan memeringkat model yang sama secara berbeda. Jawaban praktisnya adalah menjalankan adegan Anda sendiri melalui kandidat dan menilai outputnya sendiri.

Apa yang diberikan API ini untuk bermain peran

Layanan menjalankan satu model bobot terbuka, dihosting oleh penyedia independen dan disesuaikan untuk menjawab tanpa penolakan konten untuk penggunaan dewasa yang sah. ID modelnya adalah uncensored. Tidak ada pengalihan antar vendor, sehingga suara yang Anda uji pada hari Senin adalah suara yang Anda dapatkan pada hari Jumat.

Kebutuhan bermain peranYang Anda dapatkan
Memori panjang100.000 token konteks, prompt ditambah hasil
Efek mengetik langsungStreaming melalui SSE dengan stream: true
Kontrol gayatemperature, top_p, stop, seed, dan kedua penalti diteruskan
Dukungan klienKompatibel OpenAI, sehingga SillyTavern dan alat serupa berfungsi dengan perubahan URL
PrivasiPrompt tidak digunakan untuk pelatihan

Satu batas keras berlaku dan tidak bisa dinegosiasikan: tidak ada konten seksual yang melibatkan anak di bawah umur. Jaga karakter dan skenario Anda di sisi yang benar dari garis itu dan dalam penggunaan dewasa yang sah. Detail keluarga model ada di halaman model tanpa sensor.

Hubungkan SillyTavern dalam lima langkah

SillyTavern dapat berbicara ke endpoint OpenAI-kompatibel apa pun. Label menu bergeser sedikit antar versi, tetapi alurnya sama.

  1. Buat akun dan klaim kunci Anda di halaman kunci API. Pengguna baru dapat mengambil $0,50 kredit uji coba dengan satu klik, valid selama 7 hari, tanpa kartu.
  2. Di SillyTavern, buka ikon steker (Koneksi API) dan atur jenis API menjadi Chat Completion.
  3. Pilih sumber Kustom (Kompatibel OpenAI).
  4. Masukkan https://api.abliterated.cc/v1 sebagai URL endpoint dan tempel kunci Anda ke bidang kunci API.
  5. Ketik uncensored sebagai ID model, lalu tekan Hubungkan. Status hijau berarti permintaan ke /v1/models berhasil.

Jika koneksi gagal, periksa URL terlebih dahulu. URL harus berakhir dengan /v1 tanpa jalur tambahan dan tanpa /chat/completions tambahan. Klien menambahkan bagian itu sendiri.

Pengaturan awal yang disarankan

Temperature antara 0,8 dan 1,0 memberikan prosa yang hidup. Pertahankan top_p di dekat 0,9. Tambahkan penalti frekuensi kecil, sekitar 0,2, jika balasan mulai mengulang frasa yang sama. Atur ukuran konteks dekat dengan jendela nyata, tetapi sisakan ruang untuk balasan. Kemudian sesuaikan berdasarkan perasaan setelah beberapa adegan.

Bangun loop roleplay Anda sendiri di Python

Jika Anda menulis front end Anda sendiri atau bot Discord, SDK OpenAI sudah cukup. Skrip ini menyimpan riwayat lengkap, melakukan streaming balasan, dan menghentikan model dari menulis baris Anda untuk Anda.

from openai import OpenAI

client = OpenAI(
    base_url="https://api.abliterated.cc/v1",
    api_key="YOUR_KEY",
)

system = (
    "You are Mara, a smuggler captain in a sea-faring fantasy setting. "
    "Write in third person, past tense, two short paragraphs per reply. "
    "Never write the actions or words of the player character."
)
history = [{"role": "system", "content": system}]

while True:
    user = input("> ")
    history.append({"role": "user", "content": user})

    stream = client.chat.completions.create(
        model="uncensored",
        messages=history,
        temperature=0.9,
        top_p=0.9,
        frequency_penalty=0.2,
        stop=["\nPlayer:"],
        stream=True,
    )
    reply = ""
    for chunk in stream:
        if chunk.choices and chunk.choices[0].delta.content:
            piece = chunk.choices[0].delta.content
            reply += piece
            print(piece, end="", flush=True)
    print()
    history.append({"role": "assistant", "content": reply})

Panggilan yang sama berfungsi dari Node, curl, atau klien OpenAI lainnya. Hanya base URL, kunci API, dan ID model yang berubah. panduan cepat di dokumentasi menunjukkan setiap varian.

Tulis kartu karakter yang bisa diikuti model

Kebanyakan masalah kualitas roleplay adalah masalah prompt. Kartu yang kabur menghasilkan karakter yang kabur. Kartu yang bagus muat dalam 300 hingga 600 token dan mencakup empat hal: siapa karakternya, bagaimana mereka berbicara, apa yang mereka inginkan sekarang, dan apa yang tidak boleh mereka lakukan.

Konkret mengalahkan puitis. Bandingkan "Mara misterius dan berbahaya" dengan "Mara menjawab pertanyaan dengan pertanyaan, tidak pernah memberikan nama aslinya kepada orang asing, dan menjaga satu tangan di dekat pisau miliknya ketika seseorang berdiri di belakangnya." Baris kedua memberikan perilaku model yang dapat direproduksinya pada setiap putaran.

  • Sampel suara. Tambahkan dua atau tiga baris dialog contoh. Model meniru ritme dan kosakata dari contoh lebih andal daripada dari kata sifat.
  • Aturan format. Nyatakan sudut pandang, kala, panjang dan apakah menggunakan asterisk untuk tindakan. Model menyimpang pada pemformatan kecuali diberi tahu sekali, dengan jelas.
  • Status adegan. Masukkan tempat, waktu, dan alur terbuka saat ini di bagian akhir prompt, di mana informasi terbaru memiliki pengaruh terkuat.
  • Batasan. Jika cerita hanya melibatkan orang dewasa, sebutkan hal tersebut dalam kartu karakter. Kalimat seperti "semua karakter adalah orang dewasa" membuat pengaturan tetap jelas bagi Anda dan bagi siapa pun yang membaca log.

Perbaiki karakter yang datar, berulang, atau mendominasi

Masalah-masalah ini muncul setelah satu jam pertama, dengan solusi umum sebagai berikut.

Karakter mengulang-ulang diri sendiri

Frasa muncul kembali setiap beberapa balasan. Naikkan frequency_penalty menjadi 0,3 dan presence_penalty menjadi 0,1, naikkan temperature sebesar 0,1, dan periksa apakah ringkasan atau dialog contoh Anda sendiri tidak mengandung frasa tersebut. Model menyalin apa yang dilihatnya.

Balasan menjadi semakin panjang

Balasan panjang mengajarkan model bahwa balasan panjang adalah hal yang normal. Potong beberapa balasan dari riwayat, nyatakan kembali aturan panjang, dan atur max_tokens menjadi batas atas yang Anda terima. Bidang ini bersifat opsional, sehingga hanya berfungsi sebagai batas saat Anda mengaturnya.

Model memutuskan apa yang dilakukan karakter Anda

Tambahkan aturan keras dalam pesan sistem dan urutan stop pada awalan nama karakter Anda, seperti dalam skrip di atas. Jika Anda menggunakan front end, periksa apakah itu memformat riwayat dengan tag nama yang sama.

Cerita terhenti

Berikan karakter tujuan dan batas waktu. "Dia membutuhkan peta sebelum air pasang" menghasilkan pergerakan. Karakter yang tidak memiliki keinginan akan menunggu Anda bertindak, dan adegan menjadi kaku.

Jaga koherensi cerita panjang

Jendela konteks 100.000 token memang besar, namun kampanye yang berlangsung berbulan-bulan akan melebihi kapasitasnya. Rencanakan hal ini sejak awal.

  • Sematkan hal-hal penting. Simpan kartu karakter dan tujuan adegan saat ini di bagian atas pesan sistem, di mana elemen tersebut tidak akan dipotong.
  • Ringkas giliran lama. Setiap 30 atau 40 pesan, minta model untuk memadatkan bagian tertua dari percakapan menjadi ringkasan singkat, lalu ganti pesan-pesan tersebut dengan ringkasan tersebut.
  • Gunakan daftar lore. Simpan nama, tempat, dan janji dalam blok pendek yang Anda segarkan setiap putaran. Model melupakan detail kecil dari 80 pesan yang lalu lebih sering daripada fakta yang dinyatakan dalam prompt terakhir.
  • Gunakan seed saat debugging. Saat Anda menyesuaikan prompt, seed yang tetap membuat perbandingan lebih adil.

Kegagalan umum: model berbicara atas nama karakter Anda. Perbaiki hal ini dalam prompt sistem dengan aturan langsung dan dukung dengan urutan henti seperti di atas. Masalah lain: setiap balasan dibuka dengan cara yang sama. Naikkan suhu (temperature) sedikit dan tambahkan penalti frekuensi.

Biaya sesi

Harga adalah $0,15 per 1 juta token input dan $0,50 per 1 juta token output, dibayarkan dari saldo prabayar. Roleplay bersifat intensif input karena seluruh riwayat dikirim setiap giliran, sehingga sisi input mendominasi.

Ambil sesi 50 giliran. Prompt rata-rata adalah 6.000 token (kartu karakter ditambah riwayat) dan setiap balasan berukuran sekitar 250 token.

  • Input: 50 x 6.000 = 300.000 token, yang setara dengan 0,3 x $0,15 = $0,045
  • Output: 50 x 250 = 12.500 token, yang setara dengan 0,0125 x $0,50 = $0,00625
  • Total: $0,05125, sekitar lima sen

Isi saldo sebesar $20 mencakup sekitar 390 sesi berukuran tersebut. Isi saldo berkisar dari $20 hingga $500 dalam jumlah bulat, dengan bonus +5% dari $50, +10% dari $100, dan +15% dari $200. Saldo tidak pernah kedaluwarsa dan permintaan yang gagal atau ditolak tidak dikenakan biaya. Anda dapat membayar dengan kripto (USDT pada TRC20, USDC pada Base). Angka lengkap terdapat di halaman harga.

Tanya jawab

Apakah ada LLM tanpa sensor terbaik tunggal untuk bermain peran?

Tidak. Preferensi berbeda-beda tergantung genre dan gaya penulisan. Uji kandidat dengan adegan Anda sendiri, menggunakan kredit uji coba sebesar $0,50, sebelum Anda memutuskan.

Bisakah saya menggunakannya dengan SillyTavern?

Ya. Pilih Chat Completion, lalu sumber Kustom (kompatibel dengan OpenAI), masukkan URL dasar dan kunci Anda, dan atur ID model menjadi uncensored.

Apakah ini mengizinkan konten apa pun?

Model ini disesuaikan untuk menjawab tanpa penolakan konten untuk penggunaan dewasa yang sah. Konten seksual yang melibatkan anak di bawah umur tidak pernah diizinkan.

Berapa banyak riwayat yang dapat saya kirim?

Jendela konteks adalah 100.000 token, yang dibagi antara prompt dan completion.

Kunci Anda hanya selangkah lagi dari satu formulir

Buat akun, salin kunci, ubah URL dasar. Itu saja seluruh proses pengaturannya.