Irina adalah asisten suara Rusia untuk pekerjaan offline. Membutuhkan Python 3.5+ (ketergantungannya bisa lebih sedikit, tetapi dalam hal apa pun Python 3)
Mendukung plugin (keterampilan).
Artikel tentang Habri | Artikel kedua tentang Habri | Artikel ketiga tentang Habri | Kelompok di telegram
Melalui layanan vsegpt.ru, proyek lain dari penulis Irina:
Kunjungi https://github.com/janvarev/irene-va-win-installer, unduh kode (kode/unduh zip) dan ikuti instruksi.
Setelah instalasi, perintah -perintah berikut akan tersedia: "Irina Hello", "Irina Tear the Coin", "Irina Tear The Cube", "Irina Game lebih besar", "IRINA TIMER Tiga Menit"
Untuk menyiapkan atau memecahkan masalah, mulailah start-settings-manager.bat untuk memulai Pengaturan Manajer-Anda dapat menyelesaikan plugin dan mencari tahu perintah tambahan.
Lebih banyak dermaga untuk mengikat opsi ini: docs/install_win_compact.md
Setelah instalasi, tim offline akan tersedia (karena ini adalah konfigurasi default). Contoh: "Irina Hello", "Irina Soal the Coin", "Irina Tear the Cube", "Irina Game lebih kecil", "IRINA TIMER Tiga Menit"
Cara menyiapkan opsi ini: docs/install_win_compact.md
Anda akan membutuhkan python terpasang (sekitar 3,7-3.11).
Untuk dengan cepat menginstal semua dependensi yang diperlukan, Anda dapat menggunakan perintah: pip install -r requirements.txt (untuk Linux dan MacOS - Paket instal pertama untuk audioplayer)
Untuk memulai, jalankan file runva_vosk.py dari folder root. Secara default, ia akan meluncurkan Vosk Offline Supporter untuk mengenali pidato dengan mikrofon, dan mesin Pytsx karena menyuarakan lebih banyak asisten tentang Pyttsx di sini.
Setelah memulai, Anda dapat memeriksa dengan tim sederhana - katakan "Irina, halo!" Di mikrofon
Folder dengan pengaturan opsi akan muncul setelah peluncuran pertama Irina, di dalamnya Anda dapat memperbaiki pengaturan.
LEBIH Langkah -BY -SEP INFA Tentang Instalasi saat menang (terutama Win 7): Docs/Install_win.md
Memecahkan beberapa masalah saat menginstal di bawah Linux: docs/install_linux.md
Memecahkan beberapa masalah saat menginstal di bawah Mac: docs/install_mac.md
Prinsip -prinsip debugging selama masalah instalasi: docs/install_debug.md
Bug dapat ditulis dalam masalah, dibahas - di telegram
C Versi 9.0 Manajer Pengaturan Web yang Tersedia melalui Gradio.
Untuk meluncurkan, mulai file runva_settings_manager.py dari folder root.
Jika Anda ingin menjalankan semuanya melalui dermaga: Docs/install_docker.md (ada juga dermaga Doker untuk ARM (raspberry, dll.) Dari Ivan-Firefly)
Jika Anda hanya ingin komponen kunci yang kompleks, jalankan melalui dock: docs/install_docker_comp.md
Peluncuran semua tim dimulai dengan nama asisten (disetel di opsi/core.json, secara default - Irina). Ini dilakukan untuk mengecualikan pekerjaan yang salah ketika terus mendengarkan mikrofon. Berikutnya akan dijelaskan oleh tim tanpa awalan "Irina".
Dukungan untuk kontrol lokal melalui antarmuka web oleh pemutar MPC-HC dibangun ke dalam mesin, sehingga disarankan untuk menggunakannya. Itu dapat dikonfigurasi dalam opsi/core.json
Dukungan plugin dibuat pada mesin JAA.PY - mesin pendukung mesin tunggal minimalis dan pengaturannya.
Plugin terletak di folder plugin dan harus dimulai dengan Plugin_ Prefix.
Pengaturan plugin, jika ada, terletak di folder opsi (dibuat setelah peluncuran pertama).
Untuk setiap plugin ditulis apakah diperlukan online. Hapus untuk mematikan folder plugin
Informasi Lengkap: Docs/Plugins.md
Jika Anda ingin tahu:
Kunjungi: #1
(Dari versi 10.0.0) untuk diluncurkan, jalankan runva_plugin_installer.py
Perhatian: Plugin yang diusulkan didukung oleh pengembang pihak ketiga dan mereka dapat melengkapi dan mengubah! Penulis Irina tidak bertanggung jawab atas pemeliharaan mereka!
Untuk Pengembang : Jika Anda ingin menambahkan plugin ke daftar ini untuk instalasi yang disederhanakan, Anda harus melakukan hal berikut:
Contoh desain plugin: https://github.com/janvarev/irene_plugin_boltalka2_openai
Ada plugin pihak ketiga yang bagus yang memungkinkan Anda meluncurkan skrip asisten rumah melalui Irina: https://github.com/timhok/ireneva-script-trigger-plugugin
Pengaturan plugin tertentu paling baik ditonton di plugin
{
"contextDefaultDuration" : 10 , # Время в секундах, пока Ирина находится в контексте (контекст используется в непрерывном чате, играх и пр.; в контексте не надо использовать слово Ирина)
"contextRemoteWaitForCall" : false , # должна ли Ирина ждать от клиентов сингнала "Проигрывание ответа закончена, запускаем время для контекста?"
# официальные клиенты поддерживают contextRemoteWaitForCall, рекомендуется true
"fuzzyThreshold" : 0.5 , # (ПРО) Порог уверенности при использовании плагинов нечеткого распознавания команд
"isOnline" : true , # при установке в false будет выдавать заглушку на команды плагинов, требующих онлайн. Рекомендуется, если нужен только оффлайн.
"linguaFrancaLang" : "ru" , # язык для конвертации чисел в lingua-franca. Смените, если будете работать с другим языком
"logPolicy" : "cmd" , # all|cmd|none . Когда распознается речь с микрофона - выводить в консоль всегда | только, если является командой | никогда
"mpcHcPath" : "C: \ Program Files (x86) \ K-Lite Codec Pack \ MPC-HC64 \ mpc-hc64_nvo.exe" , # путь до MPC HC, если используете
"mpcIsUse" : true , # используется ли MPC HC?
"mpcIsUseHttpRemote" : true , # MPC HC - включено ли управление через веб-интерфейс?
"playWavEngineId" : "audioplayer" , # плагин проигрыша WAV-файлов. Некоторые WAV требуют sounddevice.
"replyNoCommandFound" : "Извини, я не поняла" , # ответ при непонимании
"replyNoCommandFoundInContext" : "Не поняла..." , # ответ при непонимании в состоянии контекста
"replyOnlineRequired" : "Нужен онлайн" , # ответ при вызове в оффлайн функции плагина, требующего онлайн
"tempDir" : "temp" , # папка для временных файлов
"ttsEngineId" : "pyttsx" , # используемый TTS-движок
"ttsEngineId2" : "" , # 2 используемый TTS-движок. Работает только на локальную озвучку - например, буфера обмена. Вызывается командой say2
"useTTSCache" : false , # при установке true в папке tts_cache будет кэшировать .wav файлы со сгенерированными TTS-движком ответами
"v" : "1.7" , # версия плагина core. Обновляется автоматически, не трогайте
"voiceAssNames" : "ирина|ирины|ирину" , # Если это появится в звуковом потоке, то дальше будет команда. (Различные имена помощника, рекомендуется несколько)
"voiceAssNameRunCmd" : { # если вы обратитесь к помощнику по этому имени, то в начало вашей команды будет подставлено соответствующее слово
"альбина" : "чатгпт"
}
}Untuk debugging, Anda dapat menggunakan peluncuran sistem melalui file runva_cmdline.py .
Dia membuat nukleus ( vacore in vacore.py ) melalui antarmuka baris perintah, ini lebih nyaman daripada mendikte suara.
Dokumentasi Pengembangan
Multi-instalasi dalam mode "klien-server" agak lebih rumit, tetapi memungkinkan Anda untuk mengelola Irina:
Baca lebih lanjut tentang pengaturan server pelanggan
Dokumentasi API Web
Jika Anda memiliki masalah dengan instalasi VOSK (misalnya, di Mac), maka Anda dapat menggunakan pekerjaan melalui server pengenalan suara Vosk Auto, yang diluncurkan melalui dermaga.
docker run -d -p 2700:2700 alphacep/kaldi-ru:latest (Detail: https://alphacephei.com/vosk/server)vosk_asr_server.py , mengurangi parameter di dalamnya args . interface = os . environ . get ( 'VOSK_SERVER_INTERFACE' , "0.0.0.0" )
args . port = int ( os . environ . get ( 'VOSK_SERVER_PORT' , 2700 )runva_voskrem.py . Dia akan membaca data dari mikrofon dan mengirim ke server untuk pengakuan. Jika Anda perlu meluncurkan pengakuan pada mesin lain -gunakan parameter -u (--uri): runva_voskrem.py -u=ws://100.100.100.100:2700 untuk mengklarifikasi alamat server.
Pidato Crecognition - Mesin klasik untuk diluncurkan oleh Google dan sejumlah layanan lainnya. Untuk meluncurkan pengakuan ini, mulai sistem melalui file runva_speecrecognition.py .
Untuk bekerja, Anda akan membutuhkan:
pip install PyAudio
pip install SpeechRecognition
Jika ada masalah dengan pemasangan Pyaudio, baca detailnya dari Enjirouz
Fitur: Pengakuan angka. Frasa yang sama diakui sebagai berikut:
Proyek secara keseluruhan tidak menyiratkan dukungan untuk istilah multibahasa, karena menggunakan kata -kata penguraian khusus di plugin. Namun, bagaimanapun, nukleus ( vacore.py ) sama sekali tidak terikat pada lidah, dan Anda dapat mengumpulkan instalasi Anda sendiri dalam bahasa lain, cukup menulis ulang plugin untuk mereka.
Beberapa frasa bahasa yang menentukan perilaku inti dari asisten bahasa (namanya, serta frasa seperti "Saya tidak mengerti") diatur dalam file konfigurasi plugin inti .
C Versi 7.5 mendukung pemrosesan input pengguna fuzzy.
Untuk mengatur ambang pengakuan, ada parameter global fuzzythreshold di core.json, ia menerima nilai dari 0 hingga 1 (1 - kepercayaan diri penuh dalam frasa)
Plugin terkenal yang bekerja dengan ini:
Dari versi 8.1 dalam mode uji, dukungan untuk pesawat inti dari asisten suara Vasya dibuat: https://github.com/oknolaz/vasisualy
Untuk menambahkan:
Ini bekerja dalam kasus paling sederhana - diuji pada plugin koin dan crystall_ball.
Jika tidak berhasil, baca kodenya. Dukungan dilakukan melalui plugin plugin_vasi.py.
Jika Anda ingin menambahkan sesuatu ke proyek, ada baiknya membiasakan diri dengan kebijakan yang berkontribusi.md
Pendek:
@Jirouz untuk proyek asisten suara: https://github.com/enjirouz/voice-ssistant-app, yang menjadi dasar (meskipun sangat dirancang ulang)
Alphacephei untuk Perpustakaan Pengakuan yang Indah Vosk (https://alphacephei.com/vosk/index.ru)
Kesulitan utama dalam opensor adalah tidak menulis kode. Menulis kodenya menarik.
Kesulitan dalam opensor adalah mempertahankan kode dan pengguna untuk waktu yang lama.
Menjawab pertanyaan. Perbaiki bug. Tulis artikel dan dokumentasi.
Jika Anda ingin mendukung minat saya dan membuat Irina, sebagai asisten vokal yang independen dari perusahaan besar, Anda dapat mendukung, Anda dapat: