1. Chatbot_RASA adalah sistem dialog berbasis tugas multi-putaran berdasarkan RASA. Proyek ini mendukung akses cepat ke dialog berbasis tugas dalam berbagai skenario, memiliki karakteristik kemampuan generalisasi yang baik dan dialog multi-putaran berkualitas tinggi versi RASA telah mendukung dialog berbasis pengetahuan tentang basis pengetahuan dan tanya jawab tentang pengambilan. Saya melakukan beberapa pengembangan sekunder berdasarkan RASA, seperti memperkenalkan bert pada tahap nlu, memperkenalkan pembelajaran penguatan dalam kebijakan, dll.
2. Proyek ini secara bertahap akan menyediakan dialog untuk memeriksa cuaca, memeriksa pengiriman ekspres, memeriksa tiket pesawat, mengobrol, dll. Pada saat yang sama, Anda juga dapat menggunakan proyek ini untuk dengan cepat memverifikasi penerapan model algoritma dalam sistem dialog.
1. Arsitektur RASA secara keseluruhan:
2. Proses eksekusi:
1. Setelah informasi pengguna diterima, rasa akan mengirimkannya ke Interpreter. Format data yang dikirimkan ke interpreter adalah kamus, yang berisi: teks asli, Intent yang dikenali, Slot, Sentimen, dll.
2. Interpreter akan mengirimkan data ke Tracker. Peran Tracker adalah mencatat status percakapan dan melacak kemajuan percakapan.
3. Kebijakan akan memperoleh status percakapan terkini dari Pelacak dan menentukan Tindakan optimal
4. Robot menentukan respons dan mengirimkannya ke pengguna berdasarkan Tindakan, lalu mengembalikan status saat ini ke Pelacak, memperbarui status percakapan, dan mengulangi siklus tersebut hingga percakapan berakhir.
3. Niat
4. celah
Saat ini, slot menyediakan sebelas tag:
1. Alamat: No. ** Jalan**, **Jalan Raya, **Jalan Raya, ** Desa, ** Kabupaten, **Kota, ** Provinsi, dll (tandai jika muncul sendiri). alamat perlu ditandai secara lengkap. 2. Judul buku: novel, majalah, kumpulan latihan, buku teks, alat peraga, atlas, buku masak, jenis buku yang dapat dibeli di toko buku, termasuk e-book. 3. Perusahaan: ** Perusahaan, ** Grup, ** Bank (kecuali Bank Sentral dan Bank Rakyat Tiongkok, keduanya merupakan lembaga pemerintah), seperti: New Oriental, termasuk Xinhuanet/Jaringan Militer Tiongkok, dll. 4. Permainan: Permainan umum. Perhatikan bahwa ada beberapa permainan yang diadaptasi dari novel dan serial TV. Penting untuk menganalisis apakah adegan tertentu adalah permainan. 5. Pemerintah: meliputi lembaga pemerintahan pusat dan lembaga pemerintahan daerah. Badan-badan administratif pusat meliputi Dewan Negara, departemen-departemen konstituennya (termasuk kementerian, komite, Bank Rakyat Tiongkok dan Kantor Audit), badan-badan yang langsung berada di bawah Dewan Negara (seperti bea cukai, perpajakan, industri dan perdagangan, dan Badan Lingkungan Hidup Negara). Administrasi Perlindungan, dll.), militer, dll. 6. Film: Film, termasuk beberapa film dokumenter yang ditayangkan di bioskop. Jika diadaptasi menjadi film berdasarkan judul bukunya, perlu dibedakan apakah itu nama filmnya atau judul bukunya berdasarkan konteksnya. tempat kejadian. 7. Nama: Umumnya mengacu pada nama seseorang, termasuk karakter dalam novel, seperti Song Jiang, Wu Song, dan Guo Jing. Nama panggilan karakter dalam novel: Timely Rain, Flower Monk, nama panggilan karakter terkenal, melalui nama panggilan yang mana dapat sesuai dengan karakter tertentu. 8. Organisasi: tim bola basket, tim sepak bola, orkestra, klub, dll, termasuk geng-geng dalam novel seperti: Kuil Shaolin, Geng Pengemis, Geng Palem Besi, Wudang, Emei, dll. 9. Jabatan: Gelar profesi pada zaman dahulu: gubernur, hakim, divisi negara, dll. Manajer umum modern, jurnalis, presiden, artis, kolektor, dll. 10. Pemandangan: Tempat wisata umum seperti: Taman Changsha, Kebun Binatang Shenzhen, Oseanarium, Kebun Raya, Sungai Kuning, Sungai Yangtze, dll. 11. Waktu: informasi terkait waktu yang disebutkan selama percakapan, seperti: hari ini, besok, minggu depan, besok pagi, dll.
Pada saat yang sama, slot dapat ditambahkan atau dihapus sesuai dengan skenario yang berbeda.
1. Sebelum berhasil menjalankan proyek, Anda perlu menginstal beberapa paket pip eksternal:
pip instal chatbot_nlu
pip instal chatbot_dm
2. Instal bert-as-service
3. Verifikasi data
validasi data rasa --domain domain/cuishou_domain.yml
4. Latih NLU & Inti
rasa train --domain domain/domain.yml --data data --config config/config_with_components.yml --out models
5.Mengevaluasi Model
6. Mulai Aksi
python -m rasa_sdk.endpoint --tindakan tindakan
7. Mulai layanan percakapan
1. Pembelajaran Interaktif: # --skip-visualisasi
rasa menjalankan tindakan --tindakan tindakan&
rasa interaktif -m models/20200107-105951.tar.gz --endpoints endpoints.yml
2. Modus debug
rasa run --endpoints config/endpoints.yml --enable-api --m models/20200113-162316.tar.gz --log-file bot.out.log --debug3. modus cangkang
rasa shell --debug
Untuk instruksi spesifik, silakan merujuk ke dokumentasi resmi RASA.
1. Setelah mengaktifkan model Aksi dan dialog, RASA dapat menyediakan layanan dalam bentuk REST, memanggil mereka untuk proyek, atau mengakses akun publik WeChat, grup DingTalk, dll. Di sini saya ingin memperkenalkan proyek saya yang lain:
Chatbot_Bantuan
Proyek ini dapat dengan mudah menghubungkan robot Anda ke platform pihak ketiga dan mewujudkan interaksi dengan mudah dan cepat.
2. Setelah layanan dimulai, Anda dapat menguji layanan di tukang pos:
Daftar antarmuka:
/ conversations / < conversation_id > / messages POST add_message
/ conversations / < conversation_id > / tracker / events POST append_events
/ webhooks / rest GET custom_webhook_RestInput . health
/ webhooks / rest / webhook POST custom_webhook_RestInput . receive
/ model / test / intents POST evaluate_intents
/ model / test / stories POST evaluate_stories
/ conversations / < conversation_id > / execute POST execute_action
/ domain GET get_domain
/ socket . io GET handle_request
/ GET hello
/ model PUT load_model
/ model / parse POST parse
/ conversations / < conversation_id > / predict POST predict
/ conversations / < conversation_id > / tracker / events PUT replace_events
/ conversations / < conversation_id > / story GET retrieve_story
/ conversations / < conversation_id > / tracker GET retrieve_tracker
/ webhooks / socketio GET socketio_webhook . health
/ status GET status
/ model / predict POST tracker_predict
/ model / train POST train
/ model DELETE unload_model
/ version GET version
Deskripsi antarmuka
a 、获取版本接口 GET方法
url : http : // 172.18 . 103.43 : 5005 / version
b 、获取服务的状态 GET方法
url : http : // 172.18 . 103.43 : 5005 / status
{
"model_file" : "models/20200109-103803.tar.gz" ,
"fingerprint" : {
"config" : "99914b932bd37a50b983c5e7c90ae93b" ,
"core-config" : "506804ad89d3db9175b94c8752ca7537" ,
"nlu-config" : "45f827a042c25a6605b8a868d95d2299" ,
"domain" : 2088252815302883506 ,
"messages" : 2270465547977701800 ,
"stories" : 1278721284179639569 ,
"trained_at" : 1578537378.2885341644 ,
"version" : "1.4.1"
},
"num_active_training_jobs" : 0
}
c 、会话接口 POST方法
url : http : // 172.18 . 103.43 : 5005 / webhooks / rest / webhook
参数:{
"sender" : "000001" ,
"message" : "你好"
}
返回参数:
[
{
"recipient_id" : "202005210002" ,
"text" : "您好,我是智能助手小笨,有什么可以帮您的?"
}
]
d 、 button接口
e 、检索story
f 、 story (话术)可视化
- 1.7.2020 Akses ke grup DingTalk, mendukung pesan push aktif dan interaksi keluar
- 2020.1.9 Akses WeChat
- 2020.5.1 Memecahkan masalah permintaan rasa lintas domain
- 2020.6 Memperkenalkan botfront