გსურთ პატარა ხმოვანი ასისტენტი, რომელიც რეალურად მიჰყვება თქვენს მითითებებს, იმუშავებს თქვენს საკუთარ აპარატურაზე და შემთხვევით არ შეუკვეთავს თორმეტ ანანასს, რადგან არასწორად გაგიგიათ? Raspberry Pi-ს გამოყენებით ხელოვნური ინტელექტის ასისტენტის შექმნა გასაკვირი მიღწევადი, სახალისო და მოქნილია. თქვენ შეძლებთ გაააქტიუროთ გაღვიძების სიტყვა, მეტყველების ამოცნობა (ASR = ავტომატური მეტყველების ამოცნობა), ბუნებრივი ენისთვის განკუთვნილი ტვინი (წესები ან LLM) და ტექსტიდან მეტყველებაზე გადაყვანა (TTS). დაამატეთ რამდენიმე სკრიპტი, ერთი ან ორი სერვისი და რამდენიმე ფრთხილად აუდიო კორექტირება და მიიღებთ ჯიბის ზომის ჭკვიან დინამიკს, რომელიც ემორჩილება თქვენს წესებს.
ნულიდან თქვენს Pi-სთან საუბარს ჩვეულებრივი ქაჩვის გარეშე გადაგიყვანთ. განვიხილავთ ნაწილებს, დაყენებას, კოდს, შედარებებს, ხრიკებს... მთელ ბურიტოს. 🌯
სტატიები, რომელთა წაკითხვაც შეიძლება მოგეწონოთ ამის შემდეგ:
🔗 როგორ შევისწავლოთ ხელოვნური ინტელექტი ეფექტურად
შექმენით სასწავლო გეგმა, ივარჯიშეთ პროექტებში და თვალყური ადევნეთ პროგრესს.
🔗 როგორ დავიწყოთ ხელოვნური ინტელექტის კომპანია
პრობლემის დადასტურება, MVP-ის შექმნა, გუნდის შეკრება, საწყისი მომხმარებლების უზრუნველყოფა.
🔗 როგორ გამოვიყენოთ ხელოვნური ინტელექტი უფრო პროდუქტიული გახდომისთვის
ავტომატიზირეთ რუტინული დავალებები, გაამარტივეთ სამუშაო პროცესები და გაზარდეთ შემოქმედებითი გამომავალი.
🔗 როგორ ჩართოთ ხელოვნური ინტელექტი თქვენს ბიზნესში
მაღალი ზემოქმედების მქონე პროცესების იდენტიფიცირება, პილოტური პროექტების განხორციელება, ინვესტიციის ანაზღაურების გაზომვა, მასშტაბირება.
რა ხდის Raspberry Pi-ს მქონე ხელოვნური ინტელექტის ასისტენტს კარგს ✅
-
ნაგულისხმევად, კონფიდენციალურია – აუდიო, შეძლებისდაგვარად, ადგილობრივად შეინახეთ. თქვენ გადაწყვიტეთ, რა დატოვებს მოწყობილობას.
-
მოდულური – შეცვალეთ კომპონენტები, როგორიცაა Lego: wake word engine, ASR, LLM, TTS.
-
ხელმისაწვდომი ფასი – ძირითადად ღია კოდის, საყოველთაო მიკროფონები, დინამიკები და Pi.
-
ჰაკერული - გსურთ სახლის ავტომატიზაცია, დაფები, რუტინები, მორგებული უნარები? მარტივია.
-
საიმედო – სერვისის მიერ მართული, ავტომატურად იტვირთება და იწყებს მოსმენას.
-
გართობა – ბევრ რამეს შეიტყობთ აუდიოს, პროცესებისა და ღონისძიებებზე ორიენტირებული დიზაინის შესახებ.
პატარა რჩევა: თუ იყენებთ Raspberry Pi 5-ს და გეგმავთ უფრო მძიმე ადგილობრივი მოდელების გამოყენებას, კლიპ-დასამაგრებელი გამაგრილებელი დაგეხმარებათ ხანგრძლივი დატვირთვის დროს. (ეჭვის შემთხვევაში, აირჩიეთ Pi 5-ისთვის შექმნილი ოფიციალური აქტიური გამაგრილებელი.) [1]
ნაწილები და ხელსაწყოები, რომლებიც დაგჭირდებათ 🧰
-
Raspberry Pi : თავისუფალ სივრცეში გამოყენებისთვის რეკომენდებულია Pi 4 ან Pi 5.
-
microSD ბარათი : რეკომენდებულია 32 GB+.
-
USB მიკროფონი : მარტივი USB საკონფერენციო მიკროფონი შესანიშნავია.
-
დინამიკი : USB ან 3.5 მმ დინამიკი, ან I2S გამაძლიერებელი HAT.
-
ქსელი : Ethernet ან Wi-Fi.
-
დამატებითი დეტალები: კორპუსი, აქტიური გამაგრილებელი , ღილაკი „push to talk“-ისთვის, LED რგოლი. [1]
ოპერაციული სისტემა და საბაზისო დაყენება
-
Raspberry Pi OS-ის ფლეშ ვერსიის დაყენება Raspberry Pi Imager-ით. ეს არის მარტივი გზა ჩატვირთვადი microSD ბარათის მისაღებად სასურველი წინასწარ დაყენებული პარამეტრებით. [1]
-
ჩატვირთვა, ქსელთან დაკავშირება და შემდეგ პაკეტების განახლება:
sudo apt განახლება და& sudo apt განახლება -y
-
აუდიოს საფუძვლები : Raspberry Pi OS-ზე შეგიძლიათ დააყენოთ ნაგულისხმევი გამომავალი სიგნალი, დონეები და მოწყობილობები სამუშაო მაგიდის ინტერფეისის ან
raspi-config-ის. USB და HDMI აუდიო მხარდაჭერილია ყველა მოდელში; Bluetooth გამომავალი ხელმისაწვდომია Bluetooth-ის მქონე მოდელებზე. [1] -
მოწყობილობების შემოწმება:
arecord -l aplay -l
შემდეგ შეამოწმეთ ჩაწერა და დაკვრა. თუ დონეები უცნაურად მოგეჩვენებათ, მიკროფონს დააბრალეთ, სანამ მიქშერებს და ნაგულისხმევ პარამეტრებს.

არქიტექტურა ერთი შეხედვით 🗺️
Raspberry Pi flow-ის მქონე გონივრული ასე გამოიყურება:
Wake word → პირდაპირი აუდიოჩანაწერი → ASR ტრანსკრიფცია → განზრახვის დამუშავება ან LLM → პასუხის ტექსტი → TTS → აუდიოს დაკვრა → სურვილისამებრ მოქმედებები MQTT-ის ან HTTP-ის საშუალებით.
-
Wake word : Porcupine პატარაა, ზუსტი და ლოკალურად მუშაობს თითოეული საკვანძო სიტყვის მგრძნობელობის კონტროლით. [2]
-
ASR : Whisper არის მრავალენოვანი, ზოგადი დანიშნულების ASR მოდელი, რომელიც დაახლოებით 680 ათას საათზე ვარჯიშობს; ის მდგრადია აქცენტების/ფონის ხმაურის მიმართ. მოწყობილობაზე გამოსაყენებლად,
whisper.cppუზრუნველყოფს C/C++-ის ინფერენციის გზას. [3][4] -
Brain : თქვენი არჩევანი - ღრუბლოვანი LLM API-ის საშუალებით, წესების ძრავა ან ლოკალური ინფერენცია, ცხენის ძალის მიხედვით.
-
TTS : Piper ლოკალურად წარმოქმნის ბუნებრივ მეტყველებას, საკმარისად სწრაფად, რათა მოკრძალებულ აპარატურაზე სწრაფი რეაგირება მოახდინოს. [5]
სწრაფი შედარების ცხრილი 🔎
| ინსტრუმენტი | საუკეთესოა | ფასის მსგავსი | რატომ მუშაობს |
|---|---|---|---|
| Porcupine Wake Word | ყოველთვის მოსმენის ტრიგერი | უფასო დონე + | დაბალი პროცესორი, ზუსტი, მარტივი შეკავშირებები [2] |
| Whisper.cpp | ლოკალური ASR Pi-ზე | ღია კოდი | კარგი სიზუსტე, პროცესორთან თავსებადი [4] |
| უფრო სწრაფი ჩურჩული | უფრო სწრაფი ASR პროცესორზე/გრაფიკულ პროცესორზე | ღია კოდი | CTranslate2-ის ოპტიმიზაცია |
| პაიპერის ტექსტი | ადგილობრივი მეტყველების გამომავალი | ღია კოდი | სწრაფი ხმები, მრავალი ენა [5] |
| Cloud LLM API | მდიდარი მსჯელობა | გამოყენებაზე დაფუძნებული | მძიმე კომპიუტერული დატვირთვისგან გათავისუფლება |
| კვანძი-წითელი | მოქმედებების ორკესტრირება | ღია კოდი | ვიზუალური ნაკადები, MQTT-თან თავსებადი |
ეტაპობრივი აწყობა: თქვენი პირველი ხმოვანი ციკლი 🧩
გამოვიყენებთ Porcupine-ს გაღვიძების სიტყვისთვის, Whisper-ს ტრანსკრიფციისთვის, მსუბუქ „ტვინის“ ფუნქციას პასუხისთვის (შეცვალეთ თქვენთვის სასურველი LLM-ით) და Piper-ს მეტყველებისთვის. შეინარჩუნეთ მინიმალური ფუნქცია, შემდეგ კი გაიმეორეთ.
1) დამოკიდებულებების ინსტალაცია
sudo apt install -y python3-pip portaudio19-dev sox ffmpeg pip3 install sounddevice numpy
-
Porcupine: აიღეთ თქვენი ენის SDK/შეერთებები და მიჰყევით სწრაფი დაწყების ინსტრუქციას (წვდომის ღილაკი + საკვანძო სიტყვების სია + აუდიო ჩარჩოები →
.process). [2] -
Whisper (CPU-სთან თავსებადი): whisper.cpp-ის :
git კლონი https://github.com/ggml-org/whisper.cpp cd whisper.cpp && cmake -B build && cmake --build build -j ./models/download-ggml-model.sh base.en ./build/bin/whisper-cli -m ./models/ggml-base.en.bin -f your.wav -otxt
ზემოთქმული ასახავს პროექტის სწრაფ დაწყებას. [4]
Python გირჩევნიათ?
faster-whisper(CTranslate2) ხშირად უფრო სწრაფია, ვიდრე ჩვეულებრივი Python საშუალო პროცესორებზე.
2) Piper TTS-ის დაყენება
git clone https://github.com/rhasspy/piper cd piper make # ჩამოტვირთეთ თქვენთვის სასურველი ხმის მოდელი, მაგ., en_US-amy echo "გამარჯობა." | ./piper --model voices/en/en_US-amy-medium.onnx --output_file hello.wav aplay hello.wav
Piper შექმნილია მოწყობილობაზე TTS-ისთვის, რომელსაც აქვს მრავალი ხმოვანი/ენობრივი ვარიანტი. [5]
3) მინიმალური ასისტენტის ციკლი Python-ში
განზრახ კომპაქტური: ელოდება გამაღვიძებელ ფრაზას (stub), იწერს, ტრანსკრიფციას ახდენს whisper.cpp- , წარმოქმნის პასუხს (ადგილის ველი) და შემდეგ წარმოთქვამს სიტყვას Piper-ის მეშვეობით. შეცვალეთ ჩასანაცვლებელი თქვენთვის სასურველი LLM-ით ან წესის ლოგიკით.
იმპორტის os, ქვეპროცესი, ტალღა იმპორტის sounddevice როგორც sd WAKE_WORD = "გამარჯობა კომპიუტერო" # Porcupine-ის შეცვლა წარმოებაში [2] RECORD_SECONDS = 6 SAMPLE_RATE = 16000 CHANNELS = 1 WORKDIR = "/home/pi/assistant" ASR_BIN = "/home/pi/whisper.cpp/build/bin/whisper-cli" # [4] ASR_MODEL = "/home/pi/whisper.cpp/models/ggml-base.en.bin" PIPER_BIN = "/home/pi/piper/build/piper" # [5] PIPER_VOICE = "/home/pi/piper/voices/en/en_US-amy-medium.onnx" os.makedirs(WORKDIR, exist_ok=True) def record_wav(path, seconds=RECORD_SECONDS): audio = sd.rec(int(seconds * SAMPLE_RATE), samplerate=SAMPLE_RATE, channels=CHANNELS, dtype='int16') sd.wait() wave.open(path, 'wb')-ით, როგორც w: w.setnchannels(CHANNELS); w.setsampwidth(2); w.setframerate(SAMPLE_RATE) w.writeframes(audio.tobytes()) def transcribe(path): cmd = [ASR_BIN, "-m", ASR_MODEL, "-f", path, "-otxt"] subprocess.run(cmd, check=True, cwd=WORKDIR) with open(path.replace(".wav", ".txt"), "r", encoding="utf-8") as f: return f.read().strip() def generate_reply(prompt): if "weather" in prompt.lower(): return "ღრუბლებს ვერ ვხედავ, მაგრამ შეიძლება კარგად იყოს. ყოველი შემთხვევისთვის ქურთუკი თან იქონიეთ." return "თქვენ თქვით: " + prompt def speak(text): proc = subprocess.Popen([PIPER_BIN, "--model", PIPER_VOICE, "--output_file", f"{WORKDIR}/reply.wav"], stdin=subprocess.PIPE) proc.stdin.write(text.encode("utf-8")); proc.stdin.close(); proc.wait() subprocess.run(["aplay", f"{WORKDIR}/reply.wav"], check=True) print("ასისტენტი მზადაა. აკრიფეთ გასაშვებად ფრაზა.") while True: typed = input("> ").strip().lower() if typed == WAKE_WORD: wav_path = f"{WORKDIR}/input.wav" record_wav(wav_path) text = transcribe(wav_path) reply = generate_reply(text) print("მომხმარებელი:", text); print("ასისტენტი:", reply) speak(reply) else: print("ციკლის შესამოწმებლად აკრიფეთ გასაშვებად ფრაზა.")
რეალური „გამაღვიძებელი სიტყვების“ აღმოსაჩენად, ინტეგრირეთ Porcupine-ის ნაკადის დეტექტორი (დაბალი პროცესორი, თითოეული საკვანძო სიტყვის მგრძნობელობა). [2]
აუდიოს რეგულირება, რომელიც ნამდვილად მნიშვნელოვანია 🎚️
რამდენიმე პატარა შესწორება თქვენს ასისტენტს 10-ჯერ უფრო ჭკვიანს გახდის:
-
მიკროფონს შორის მანძილი : 30–60 სმ ბევრი USB მიკროფონისთვის იდეალური წერტილია.
-
დონეები : მოერიდეთ შეყვანის მონაცემების შეწყვეტას და შეინარჩუნეთ დაკვრის ნორმალური დონე; კოდის მოჩვენებების დევნამდე გამოასწორეთ მარშრუტიზაცია. Raspberry Pi OS-ზე შეგიძლიათ მართოთ გამომავალი მოწყობილობა და დონეები სისტემის ინსტრუმენტების ან
raspi-config-ის. [1] -
ოთახის აკუსტიკა : მყარი კედლები ექოს იწვევს; მიკროფონის ქვეშ რბილი ხალიჩა ხელს უწყობს.
-
გაღვიძების სიტყვის ზღვარი : ძალიან მგრძნობიარე → მოჩვენებითი ტრიგერები; ძალიან მკაცრი → თქვენ პლასტმასს დაუყვირებთ. Porcupine საშუალებას გაძლევთ შეცვალოთ მგრძნობელობა თითოეული საკვანძო სიტყვისთვის. [2]
-
თერმული : Pi 5-ზე გრძელი ტრანსკრიფციები სარგებლობს ოფიციალური აქტიური გამაგრილებელით მდგრადი მუშაობისთვის. [1]
სათამაშოდან ტექნიკაზე გადასვლა: მომსახურება, ავტომატური ჩართვა, მდგომარეობის შემოწმება 🧯
ადამიანები სკრიპტების გაშვებას ივიწყებენ. კომპიუტერები კი კეთილგანწყობის შენარჩუნებას ივიწყებენ. გადააქციეთ თქვენი ციკლი მართულ სერვისად:
-
შექმენით სისტემური ერთეული:
[მოდული] აღწერა=ხმოვანი ასისტენტი თავად გააკეთეთ After=network.target sound.target [სერვისი] მომხმარებელი=pi სამუშაო დირექტორია=/home/pi/assistant ExecStart=/usr/bin/python3 /home/pi/assistant/assistant.py გადატვირთვა=ყოველთვის RestartSec=3 [ინსტალაცია] WantedBy=multi-user.target
-
ჩართეთ:
sudo cp assistant.service /etc/systemd/system/ sudo systemctl daemon-reload sudo systemctl enable --now assistant.service
-
მორის კუდები:
journalctl -u ასისტენტი -f
ახლა ის ჩატვირთვისას ირთვება, ავარიის შემთხვევაში გადაიტვირთება და ზოგადად, მოწყობილობასავით იქცევა. ცოტა მოსაწყენია, მაგრამ გაცილებით უკეთესი.
უნარების სისტემა: გახადეთ ის რეალურად სასარგებლო სახლში 🏠✨
როგორც კი ხმის ჩართვა და გამოსვლა გაერთიანდება, დაამატეთ მოქმედებები:
-
განზრახ როუტერი : მარტივი საკვანძო სიტყვების მარშრუტები გავრცელებული ამოცანებისთვის.
-
ჭკვიანი სახლი : გამოაქვეყნეთ მოვლენები MQTT-ზე ან დაურეკეთ Home Assistant-ის HTTP საბოლოო წერტილებს.
-
დანამატები : სწრაფი Python ფუნქციები, როგორიცაა
set_timer,what_is_the_time,play_radio,run_scene.
მაშინაც კი, თუ ციკლში ღრუბლოვანი LLM-ია ჩართული, სიჩქარისა და საიმედოობისთვის პირველ რიგში აშკარა ლოკალური ბრძანებები გადამისამართეთ.
მხოლოდ ადგილობრივი vs ღრუბლოვანი დახმარება: კომპრომისები, რომლებსაც აუცილებლად იგრძნობთ 🌓
მხოლოდ ადგილობრივი გამოყენებისთვის
დადებითი მხარეები: კერძო, ოფლაინ, პროგნოზირებადი ხარჯები.
უარყოფითი მხარეები: უფრო მძიმე მოდელები შეიძლება ნელი იყოს პატარა დაფებზე. Whisper-ის მრავალენოვანი ტრენინგი ხელს უწყობს მდგრადობას, თუ მას მოწყობილობაზე ან ახლომდებარე სერვერზე შეინახავთ. [3]
ღრუბლოვანი დახმარება.
დადებითი მხარეები: ძლიერი მსჯელობა, უფრო დიდი კონტექსტური ფანჯრები.
უარყოფითი მხარეები: მონაცემები ტოვებს მოწყობილობას, ქსელზე დამოკიდებულება, ცვლადი ხარჯები.
ჰიბრიდი ხშირად იმარჯვებს: wake word + ASR local → API-ს გამოძახება მსჯელობისთვის → TTS local. [2][3][5]
პრობლემების მოგვარება: უცნაური გრემლინები და სწრაფი გამოსწორებები 👾
-
ცრუ სიტყვის გაღვიძების ტრიგერები : შეამცირეთ მგრძნობელობა ან სცადეთ სხვა მიკროფონი. [2]
-
ASR შეფერხება : გამოიყენეთ უფრო მცირე ზომის Whisper მოდელი ან შექმენით
whisper.cppგამოშვების ფლაგებით (-j --config გამოშვება). [4] -
წყვეტილი TTS : წინასწარ გენერირება გაუკეთეთ საერთო ფრაზებს; დაადასტურეთ თქვენი აუდიო მოწყობილობა და შერჩევის სიხშირე.
-
მიკროფონი არ არის აღმოჩენილი : შეამოწმეთ
arecord -lდა მიქსერები. -
თერმული დროის შემცირება : მდგრადი მუშაობისთვის გამოიყენეთ Pi 5-ზე არსებული ოფიციალური აქტიური გამაგრილებელი. [1]
უსაფრთხოებისა და კონფიდენციალურობის შენიშვნები, რომლებიც აუცილებლად უნდა წაიკითხოთ 🔒
-
განაახლეთ თქვენი Pi APT-ით.
-
თუ იყენებთ რომელიმე ღრუბლოვან API-ს, აღრიცხეთ თქვენი გაგზავნილი ინფორმაცია და პირველ რიგში, განიხილეთ პერსონალური მონაცემების ლოკალურად რედაქტირება.
-
გაუშვით სერვისები ყველაზე ნაკლები პრივილეგიით; მოერიდეთ
sudo-სგამოყენებას ExecStart-ში, თუ ეს აუცილებელი არ არის. -
სტუმრებისთვის მხოლოდ ადგილობრივი რეჟიმის უზრუნველყოფა
ვარიანტების აწყობა: შეურიეთ და შეუხამეთ ერთმანეთს, როგორც სენდვიჩი 🥪
-
ულტრა-ადგილობრივი : მაჩვზღარბა + ჩურჩული.cpp + პაიპერი + მარტივი წესები. კონფიდენციალური და მტკიცე. [2][4][5]
-
სწრაფი ღრუბლოვანი დახმარება : Porcupine + (უფრო მცირე ლოკალური Whisper ან ღრუბლოვანი ASR) + TTS ლოკალური + ღრუბლოვანი LLM.
-
სახლის ავტომატიზაციის ცენტრალი : დაამატეთ Node-RED ან Home Assistant ნაკადები რუტინებისთვის, სცენებისთვის და სენსორებისთვის.
უნარის მაგალითი: შუქის ჩართვა MQTT-ის საშუალებით 💡
import paho.mqtt.client as mqtt MQTT_HOST = "192.168.1.10" TOPIC = "home/livingroom/light/set" def set_light(state: str): client = mqtt.Client() client.connect(MQTT_HOST, 1883, 60) payload = "ON" if state.lower().startswith("on") else "OFF" client.publish(TOPIC, payload, qos=1, retain=False) client.disconnect() # თუ ტექსტში "შუქის ჩართვა": set_light("on")
დაამატეთ ხმოვანი ფრაზა, როგორიცაა: „ჩართეთ მისაღები ოთახის ნათურა“ და თავს ჯადოქარად იგრძნობთ.
რატომ მუშაობს ეს სტეკი პრაქტიკაში 🧪
-
Porcupine ეფექტური და ზუსტია მცირე ზომის დაფებზე Wake-word-ის ამოცნობისას, რაც მუდმივად მოსმენას შესაძლებელს ხდის. [2]
-
Whisper-ის ფართო, მრავალენოვანი ტრენინგი მას მრავალფეროვან გარემოსა და აქცენტებზე მორგებულს ხდის. [3]
-
whisper.cppამ ენერგიის გამოყენებადობას მხოლოდ პროცესორზე მომუშავე მოწყობილობებზე, როგორიცაა Pi, ინარჩუნებს. [4] -
Piper-ი უზრუნველყოფს სწრაფი პასუხების შენარჩუნებას აუდიოს ღრუბლოვან TTS-ში გაგზავნის გარეშე. [5]
ძალიან გრძელია, არ წამიკითხავს
შექმენით მოდულური, კერძო ხელოვნური ინტელექტის ასისტენტი Raspberry Pi-ს გამოყენებით, გააერთიანეთ Porcupine გაღვიძების სიტყვისთვის, Whisper ( whisper.cpp-ის ) ASR-ისთვის, თქვენი არჩევანის ტვინისთვის პასუხებისთვის და Piper ლოკალური TTS-ისთვის. შეფუთეთ იგი სისტემურ სერვისად, დაარეგულირეთ აუდიო და ჩართეთ MQTT ან HTTP მოქმედებები. ის უფრო იაფია, ვიდრე თქვენ გგონიათ და უცნაურად სასიამოვნოა მასთან ცხოვრება. [1][2][3][4][5]
ცნობები
-
Raspberry Pi-ს პროგრამული უზრუნველყოფა და გაგრილება – Raspberry Pi Imager (ჩამოტვირთვა და გამოყენება) და Pi 5 Active Cooler-ის პროდუქტის ინფორმაცია
-
Raspberry Pi Imager: წაიკითხეთ მეტი
-
აქტიური გამაგრილებელი (Pi 5): წაიკითხეთ მეტი
-
-
Porcupine Wake Word – SDK და სწრაფი დაწყება (საკვანძო სიტყვები, მგრძნობელობა, ლოკალური დასკვნა)
-
Whisper (ASR მოდელი) – მრავალენოვანი, ძლიერი ASR, რომელიც დაახლოებით 680 ათას საათზეა გაწვრთნილი.
-
რედფორდი და სხვ., ძლიერი მეტყველების ამოცნობა ფართომასშტაბიანი სუსტი ზედამხედველობის (ჩურჩული) მეშვეობით: წაიკითხეთ მეტი
-
-
whisper.cpp – პროცესორისთვის მოსახერხებელი Whisper-ის ინფერენცია CLI-ით და აწყობის ნაბიჯებით
-
Piper TTS – სწრაფი, ლოკალური ნეირონული TTS მრავალი ხმით/ენით