chatbot_support_vision
AKTIF)*pendaftaran untuk layanan API eksternal (tidak berafiliasi) diperlukan. Tautan di pengaturan.
Ada dua mode:
Mode RAG sangat cerdas dan mengetahui fakta yang diposting di forum Anda.
Mode bot dasar terkadang bisa membuat kesalahan, namun lebih murah untuk dijalankan karena membuat lebih sedikit panggilan ke Model Bahasa Besar:
Bot ini dapat digunakan di ruang publik di forum Anda. Untuk membuat bot sangat berguna, terdapat mode RAG (satu pengaturan per tingkat kepercayaan bot). Ini tidak diatur secara default.
Dalam mode RAG, bot secara default diatur dengan mengatur chatbot embeddings strategy
(default benchmark_user
) yang mengetahui rahasia semua konten yang akan dilihat oleh pengguna Tingkat Kepercayaan 1. Jadi, jika berinteraksi dengan Topik yang dihadapi publik, ada kemungkinan bot dapat "membocorkan" informasi jika Anda cenderung menempatkan konten pada tingkat Kepercayaan 0 atau 1 melalui izin Kategori. Tingkat ini dipilih karena berdasarkan pengalaman, sebagian besar situs biasanya tidak membatasi konten sensitif pada tingkat kepercayaan yang rendah, namun hal ini bergantung pada kebutuhan spesifik Anda.
Untuk mode ini, pastikan Anda memiliki setidaknya satu pengguna dengan Tingkat Kepercayaan 1 dan tidak ada keanggotaan grup tambahan di luar grup otomatis. (ingatlah bahwa bot kemudian akan mengetahui segala sesuatu yang diketahui oleh pengguna level TL1 dan dapat membagikannya). Anda dapat memilih untuk menurunkan chatbot embeddings benchmark user trust level
jika Anda memiliki pengguna Tingkat Kepercayaan 0 tanpa keanggotaan grup tambahan di luar grup otomatis.
Alternatifnya:
chatbot embeddings strategy
ke category
dan isi chatbot embeddings categories
dengan Kategori yang ingin Anda ketahui oleh bot. (Ketahuilah bahwa jika Anda menambahkan Kategori pribadi apa pun, ia harus mengetahui tentang hal itu dan apa pun yang dikatakan bot di depan umum, di mana pun mungkin bocor ke pengguna yang kurang memiliki hak istimewa, jadi berhati-hatilah dengan apa yang Anda tambahkan).basic
(tetapi bot tidak akan melihat postingan apa pun)Anda dapat melihat bahwa pengaturan ini merupakan kompromi. Agar bot dapat berguna, bot harus memiliki pengetahuan tentang konten di situs Anda. Saat ini bot tidak dapat secara selektif membaca konten khusus anggota dan membagikannya hanya dengan anggota yang mungkin dianggap terbatas oleh beberapa admin, tetapi tidak ada cara yang mudah untuk menyelesaikannya sementara bot dapat berbicara di depan umum. Hubungi saya jika Anda memiliki kebutuhan khusus dan ingin mensponsori beberapa pekerjaan di bidang ini. Izin bot dengan pencarian semantik adalah masalah yang tidak sepele. Sistem saat ini dioptimalkan untuk kecepatan. Pesan Pribadi NB tidak pernah dibaca oleh bot.
Jika Anda ingin Chatbot mengetahui konten di situs Anda, aktifkan pengaturan ini:
chatbot_embeddings_enabled
Hanya diperlukan jika Anda ingin menggunakan bot tipe RAG dan memastikan bot tersebut mengetahui konten di forum Anda, bukan hanya Topik saat ini.
Awalnya, kita perlu membuat penyematan untuk semua postingan dalam cakupan, sehingga bot dapat menemukan informasi forum. Ini sekarang terjadi di latar belakang setelah pengaturan ini diaktifkan dan Anda tidak perlu melakukan apa pun.
Pekerjaan penyemaian ini dapat memakan waktu berhari-hari untuk situs yang sangat besar.
Hal ini ditentukan oleh beberapa pengaturan:
chatbot_embeddings_strategy
yang dapat berupa "benchmark_user" atau "category"chatbot_embeddings_benchmark_user_trust_level
menetapkan tingkat kepercayaan yang relevan untuk yang pertamachatbot_embeddings_categories
jika strategi category
disetel, memberikan akses bot untuk mempertimbangkan semua postingan dalam Kategori yang ditentukan.Jika Anda mengubah pengaturan ini, seiring waktu, populasi Embeddings akan berubah.
Masukkan wadah:
./launcher enter app
dan jalankan perintah rake berikut:
rake chatbot:refresh_embeddings[1]
yang saat ini akan dijalankan dua kali karena alasan yang tidak diketahui (maaf! silakan PR) tetapi [1]
memastikan untuk kedua kalinya hanya akan menambahkan embeddings yang hilang (yaitu tidak ada segera setelah dijalankan pertama) sehingga agak diperdebatkan.
Jika tarif Anda dibatasi oleh OpenAI (tidak mungkin!), Anda dapat menyelesaikan penyematan dengan melakukan ini:
rake chatbot:refresh_embeddings[1,1]
yang akan mengisi bagian yang hilang (sehingga tidak ada yang hilang dari kesalahan) tetapi akan melanjutkan dengan lebih hati-hati dengan memberikan jeda 1 detik antara setiap panggilan ke Open AI.
Dibandingkan dengan interaksi bot, pembuatan penyematan tidak mahal, tetapi perhatikan penggunaan Anda di dasbor Open AI Anda dalam hal apa pun.
NB Embeddings hanya dibuat untuk Postingan dan hanya Postingan yang dapat diakses oleh pengguna Tingkat Kepercayaan Satu. Tampaknya ini merupakan kompromi yang masuk akal. Ini tidak akan membuat penyematan untuk postingan dari Konten Tingkat Kepercayaan 2+ yang hanya dapat diakses.
@37Rb menulis: "Ini adalah kueri SQL yang saya gunakan dengan plugin Data Explorer untuk memantau & memverifikasi penyematan… kalau-kalau itu membantu orang lain."
SELECT e.id, e.post_id AS post, p.topic_id AS topic, p.post_number,
p.topic_id, e.created_at, e.updated_at, p.deleted_at AS post_deleted
FROM chatbot_post_embeddings e LEFT JOIN posts p ON e.post_id = p.id
Anda mungkin mendapatkan kesalahan seperti ini:
OpenAI HTTP Error (spotted in ruby-openai 6.3.1): {"error"=>{"message"=>"This model's maximum context length is 8192 tokens, however you requested 8528 tokens (8528 in your prompt; 0 for the completion). Please reduce your prompt; or completion length.", "type"=>"invalid_request_error", "param"=>nil, "code"=>nil}}
Beginilah cara Anda mengatasinya...
Sesuai pesan kesalahan Anda, model penyematan memiliki batas:
8192 tokens
however you requested 8528
Anda perlu menghilangkan nilai saat ini dari pengaturan ini:
chatbot_open_ai_embeddings_char_limit:
sekitar 4 x perbedaannya dan lihat apakah itu berfungsi (token kira-kira terdiri dari 4 karakter).
Jadi, dalam contoh ini, 4 x (8528 - 8192) = 1344
Jadi turunkan nilai chatbot_open_ai_embeddings_char_limit
saat ini sebesar 1500 agar aman. Namun, nilai default ditetapkan berdasarkan banyak pengujian untuk Postingan Bahasa Inggris, namun untuk bahasa lain mungkin perlu diturunkan.
Ini kemudian akan memotong lebih banyak teks dan meminta token dan semoga penyematannya akan berhasil. Jika tidak, Anda perlu mengonfirmasi perbedaannya dan menguranginya lebih lanjut. Pada akhirnya itu akan cukup rendah sehingga Anda tidak perlu melihatnya lagi.
Anda tidak perlu melakukan apa pun kecuali mengubah pengaturan: pekerjaan latar belakang akan menangani semuanya, secara bertahap.
Jika Anda benar-benar ingin mempercepat prosesnya, lakukan:
chatbot_open_ai_embeddings_model
ke model pilihan baru Anda./launcher enter app
rails c
::DiscourseChatbot::PostEmbedding.delete_all
exit
(untuk kembali ke root dalam wadah)rake chatbot:refresh_embeddings[1]
chatbot_forum_search_function_similarity_threshold
atau Anda mungkin tidak mendapatkan hasil :). Saya menurunkan nilai default saya dari 0.8
menjadi 0.6
, tetapi jarak tempuh Anda mungkin berbeda. Luangkan waktu sejenak untuk membaca seluruh rangkaian pengaturan Plugin. Pengaturan chatbot bot type
adalah kuncinya, dan ada satu untuk setiap "Tingkat Kepercayaan" chatbot:
Mode RAG lebih unggul tetapi akan membuat lebih banyak panggilan ke API, sehingga berpotensi meningkatkan biaya. Meskipun demikian, pengurangan kecenderungannya untuk menghasilkan 'halusinasi' pada akhirnya dapat memfasilitasi Anda untuk turun dari GPT-4 ke GPT-3.5 dan Anda mungkin akan menghabiskan lebih sedikit uang meskipun ada peningkatan signifikan dalam kegunaan dan keandalan keluaran. GPT 3.5 juga lebih cocok untuk jenis Agen berdasarkan waktu respons. Potensi win-win! Percobaan!
Agar Chatbot dapat berfungsi di Obrolan, Anda harus mengaktifkan Obrolan.
Hal ini sebagian besar diatur oleh setelan: chatbot_reply_job_time_delay
yang dapat Anda pilih sendiri.
Tujuan dari pengaturan ini adalah untuk:
Sekarang defaultnya adalah '1' detik dan sekarang dapat dikurangi menjadi nol ?️ , namun waspadai risiko di atas.
Menyetel nol ini dan bot, bahkan dalam mode 'agen', menjadi lebih 'tajam'.
Jelas ini mungkin sedikit dibuat-buat dan tidak ada orang yang benar-benar mengetik secepat itu… tetapi sesuaikan dengan selera dan ukuran dompet Anda.
NB Saya tidak bisa secara langsung mengontrol kecepatan respons API Open AI - dan aturan umumnya adalah semakin canggih model yang Anda atur, biasanya respons ini akan semakin lambat. Jadi GPT 3.5 jauh lebih cepat dibandingkan GPT 4...meskipun hal ini mungkin berubah dengan model GPT 4 Turbo yang lebih baru.
Agar Chatbot dapat berfungsi di Obrolan, Anda harus mengaktifkan Obrolan.
Anda harus mendapatkan token dari https://platform.openai.com/ untuk menggunakan bot saat ini. Model bahasa default telah diatur (salah satu yang paling canggih), tetapi Anda dapat mencoba alternatif yang lebih murah, daftarnya ada di sini
Ada bagian otomatis dari pengaturan: selain Wacana, plugin saat ini menyiapkan pengguna bot AI dengan atribut berikut
Anda dapat mengedit nama, avatar, dan bio (lihat string lokal di admin -> kustomisasi -> teks) sesuai keinginan tetapi mudah untuk disebutkan.
Awalnya tidak ada seorang pun yang memiliki akses ke bot, bahkan staf pun tidak.
Memanggil Open AI API tidaklah gratis setelah alokasi gratis awal telah habis masa berlakunya! Jadi, saya menerapkan sistem kuota untuk mengendalikannya, menekan biaya, dan mencegah penyalahgunaan. Biayanya tidak terlalu besar dengan interaksi kecil ini, tetapi mungkin akan bertambah jika menjadi populer. Anda dapat membaca lebih lanjut tentang harga OpenAI di halaman harga mereka.
Untuk berinteraksi dengan bot, Anda harus menjadi anggota grup yang telah ditambahkan ke salah satu dari tiga tingkat kumpulan grup tepercaya, kumpulan grup kepercayaan rendah, sedang & tinggi. Anda dapat mengubah setiap jumlah interaksi yang diizinkan per minggu per kumpulan grup tepercaya di pengaturan yang sesuai.
Anda juga harus mengisi grup. Konfigurasi itu sepenuhnya terserah Anda. Mereka awalnya kosong sehingga awalnya tidak ada yang memiliki akses ke bot. Ada kuota yang sesuai dalam tiga pengaturan tambahan.
Perhatikan bahwa pengguna mendapatkan kuota berdasarkan grup tepercaya tertinggi tempat mereka menjadi anggota.
Ada beberapa "pengaturan" teks lokal yang memengaruhi apa yang diterima bot dan cara bot merespons.
Yang paling penting yang harus Anda pertimbangkan untuk diubah adalah perintah system
bot. Ini dikirim setiap kali Anda berbicara dengan bot.
Untuk bot dasar, Anda dapat mencoba perintah sistem seperti:
'Anda adalah penggemar berat Formula Satu, Anda menyukai segala hal yang berhubungan dengan motorsport dan tingkat oktan tinggi yang mengasyikkan', bukan standarnya.
(Untuk bot agen, Anda harus menyimpan semuanya setelah "Anda adalah asisten yang sangat membantu." atau Anda dapat merusak perilaku agen. Setel ulang jika Anda mengalami masalah. Sekali lagi bereksperimen!)
Cobalah salah satu yang paling sesuai dengan topik forum Anda. Jadilah kreatif!
Mengubah string lokal ini dapat membuat bot berperilaku sangat berbeda tetapi tidak dapat diubah dengan cepat. Saya akan merekomendasikan untuk hanya mengubah perintah sistem karena perintah lain memainkan peran penting dalam perilaku agen atau memberikan informasi tentang siapa yang mengatakan apa kepada bot.
NB Dalam Topik, Postingan pertama dan Judul Topik dikirim sebagai tambahan ke jendela Postingan (ditentukan oleh pengaturan lihat balik) untuk memberikan lebih banyak konteks pada bot.
Anda dapat mengedit string ini di Admin -> Kustomisasi -> Teks di bawah chatbot.prompt.
wacana-chatbot/config/locales/server.en.yml
Baris 45 di 262a0a4
Bot mendukung Pesan Obrolan dan Postingan Topik, termasuk Pesan Pribadi (jika dikonfigurasi).
Anda dapat meminta bot untuk merespons dengan membalasnya, atau @ menyebutkannya. Anda dapat mengatur seberapa jauh bot melihat ke belakang untuk mendapatkan konteks respons. Semakin besar nilainya maka semakin mahal pula biaya setiap panggilannya.
Ada tombol obrolan cepat mengambang yang langsung menghubungkan Anda ke bot. Ini dapat dinonaktifkan di pengaturan. Anda dapat memilih apakah akan memuat bot ke dalam obrolan 1 lawan 1 atau Pesan Pribadi.
Sekarang Anda dapat memilih ikon pilihan Anda (default ? ) atau jika pengaturan dibiarkan kosong, avatar pengguna bot akan diambil! ?
Dan ingat, Anda juga dapat menyesuaikan teks yang muncul saat diperluas dengan mengedit teks lokal menggunakan Admin -> Customize -> Text chatbot.
Satu-satunya langkah yang diperlukan untuk menghapusnya adalah dengan menghapus pernyataan clone dari app.yml
Anda.
Saya tidak bertanggung jawab atas respons bot tersebut. Anggaplah plugin tersebut berada pada tahap Beta dan mungkin terjadi kesalahan. Ini akan membaik dengan umpan balik. Tapi belum tentu botnya merespons? Harap pahami pro dan kontra dari LLM dan apa yang mampu dan tidak mampu mereka lakukan serta keterbatasannya. Mereka sangat pandai membuat teks yang meyakinkan tetapi sering kali salah secara faktual.
Apa pun yang Anda tulis di forum Anda mungkin diteruskan ke Open AI sebagai bagian dari pemindaian bot pada beberapa postingan terakhir setelah diminta untuk membalas (tentu saja ini terbatas pada Topik atau Saluran Obrolan saat ini). Meskipun hampir pasti data tersebut tidak akan dimasukkan ke dalam model terlatih mereka, mereka akan menggunakan data tersebut dalam analisis dan pencatatan mereka. Pastikan untuk menambahkan fakta ini ke dalam TOS & pernyataan privasi forum Anda . Tautan terkait: https://openai.com/policies/terms-of-use, https://openai.com/policies/privacy-policy, https://platform.openai.com/docs/data-usage-policies
Open AI membuat pernyataan tentang Hak Cipta di sini: https://help.openai.com/en/articles/5008634-will-openai-claim-copyright-over-what-outputs-i-generate-with-the-api