OpenAI
Halaman ini diterjemah oleh mesin. Lihat artikel asal dalam bahasa Inggeris.

Menggunakan bias logit untuk mengubah kebarangkalian token dengan API OpenAI

Ketahui cara menggunakan parameter bias logit untuk mengubah suai output model

Dikemas kini: 9 days ago

Logit_bias ialah parameter pilihan yang mengubah kebarangkalian token tertentu muncul dalam output yang dijana model.

Parameter ini menerima objek JSON yang memetakan token kepada nilai bias berkaitan daripada -100 (yang dalam kebanyakan kes akan menyekat token itu daripada dijana) hingga 100 (pemilihan eksklusif token yang menjadikannya lebih berkemungkinan dijana). Nilai sederhana seperti -1 dan 1 akan mengubah kebarangkalian token dipilih pada tahap yang lebih kecil.

Memandangkan parameter ini menerima token, bukan teks, anda perlu menggunakan alat tokenizer untuk menukar teks kepada ID token. Mari kita lihat beberapa contoh.

Contoh 1: Alih keluar 'time'

Jika kita memanggil titik akhir Completions dengan gesaan “Once upon a,” pelengkapan berkemungkinan besar akan bermula dengan “ time.”

Perkataan “time” ditokennkan kepada ID 2435 dan perkataan “ time” (yang mempunyai ruang pada permulaan) ditokennkan kepada ID 640. Kita boleh menghantarnya melalui logit_bias dengan -100 untuk menghalangnya daripada muncul dalam pelengkapan, seperti berikut:

completion = client.chat.completions.create( 
model="gpt-3.5-turbo",
messages=[{"role": "system", "content": "You finish user's sentences."},
"role": "user", "content": "Once upon a"} ]
logit_bias={2435:-100, 640:-100}
)

Kini, gesaan “Once upon a” menjana pelengkapan “midnight dreary, while I pondered, weak and weary.”

Perhatikan bahawa perkataan “time” langsung tidak ditemui, kerana kita telah menghalang token itu dengan berkesan menggunakan logit_bias.

Contoh 2: Beri arahan dengan nilai bias logit yang disasarkan

Mari kita lihat satu lagi contoh, menggunakan gesaan penjana resipi.

Banyak resipi mencadangkan penggunaan periuk, tetapi katakan kita tidak mempunyai periuk. Kita mahu mengalih keluar perkataan pot supaya tidak dijana sebagai sebahagian daripada pelengkapan kita. 'Pot' ditokennkan kepada 1787, jadi kita boleh mengalih keluarnya daripada penjanaan kita dengan menetapkan logit_bias seperti di bawah.

logit_bias={1787:-100}

Kini, pelengkapan kita mungkin memasukkan perkataan “saucepan” pula. Sempurna!

Contoh 3: Tingkatkan kebarangkalian sesuatu perkataan muncul

Katakan kita mahu meningkatkan kebarangkalian sesuatu perkataan muncul.

Sebagai contoh, mungkin kita mengendalikan laman yang menawarkan resipi yang boleh dibuat dengan microwave, jadi kita mahu memastikan perkataan “microwave” muncul dalam resipi. Microwave ditokennkan kepada ID 27000. Kita boleh meningkatkan kebarangkalian token ini muncul dengan menetapkan logit_bias positif, seperti berikut:

logit_bias={27000:5}

Kini, pelengkapan kita lebih berkemungkinan memasukkan perkataan 'microwave'.

Kita menetapkan logit_bias kepada 5, kerana kita mendapati bahawa menetapkan logit_bias kepada 1 selalunya tidak menyebabkan perkataan “microwave” muncul dalam pelengkapan, manakala nilai logit_bias yang lebih tinggi seperti 10 menyebabkan perkataan “ microwave” terlalu kerap muncul dalam pelengkapan.

Adakah artikel ini membantu?