Alîkarekî dengî yê pir biçûk dixwazî ku bi rastî jî rêya te dişopîne, li ser alavên te yên taybet dixebite, û ji ber ku te şaş nebihîstiye bi xeletî diwanzdeh ananas siparîş nake? Alîkarekî AI yê DIY bi Raspberry Pi bi awayekî ecêb pêkan, kêfxweş û nerm e. Tu dê peyvek hişyarkirinê, naskirina axaftinê (ASR = naskirina axaftinê ya otomatîk), mejiyek ji bo zimanê xwezayî (qaîde an LLM), û nivîs-bi-axaftinê (TTS) saz bikî. Çend skrîptan, yek an du karûbaran, û hin sererastkirinên dengî yên baldar lê zêde bike, û axaftvanek jîr a berîkê heye ku guh dide qaîdeyên te.
Werin em te ji sifirê bigihînin axaftina bi Pi-ya xwe re bêyî kişandina poran a asayî. Em ê parçeyan, sazkirinê, kodê, berawirdkirinan, xeletiyan... tevahiya burritoyê vebêjin. 🌯
Gotarên ku hûn dikarin piştî vê yekê bixwînin:
🔗 Meriv çawa bi bandor AI-ê dixwîne
Nexşerêyek xwendinê biafirînin, projeyên pratîkê bikin, û pêşveçûnê bişopînin.
🔗 Meriv çawa pargîdaniyek AI-ê dest pê dike
Pirsgirêkê piştrast bike, MVP ava bike, tîmê bicivîne, xerîdarên destpêkê ewle bike.
🔗 Meriv çawa AI-ê bikar tîne da ku hilberînertir bibe
Karên rûtîn otomatîk bikin, herikînên kar hêsan bikin, û hilberîna afirîner zêde bikin.
🔗 Meriv çawa AI-ê di karsaziya xwe de bicîh dike
Pêvajoyên bi bandora bilind nas bikin, pîlotan bicîh bînin, ROI bipîvin, û pîvan bikin.
Çi dibe alîkarê AI-ê yê DIY-ê yê baş bi Raspberry Pi-yê re ✅
-
Bi xwerû taybet - deng li cihê xwe bihêle, heta ku mimkun be. Hûn biryar didin ka çi ji cîhazê derdikeve.
-
Modular - pêkhateyên wekî Lego biguherînin: motora peyva wake, ASR, LLM, TTS.
-
Bi arzanî - bi piranî mîkrofon, axaftvan û Pi-yek çavkaniya vekirî, yên asayî.
-
Hackbar - otomasyona malê, dashboard, rûtîn, jêhatîyên xwerû dixwazin? Hêsan e.
-
Pêbawer - ji hêla xizmetê ve tê rêvebirin, bixweber dest bi guhdarîkirinê dike û boot dike.
-
Xweş - hûn ê gelek tiştan li ser deng, pêvajoyan û sêwirana bûyer-ajotî fêr bibin.
Serişteyek biçûk: Heke hûn Raspberry Pi 5 bikar tînin û plan dikin ku modelên herêmî yên girantir bikar bînin, sarincokek klîp-on di bin barekî domdar de dibe alîkar. (Dema ku di gumanê de bin, Sarincoka Çalak a fermî ya ku ji bo Pi 5 hatî çêkirin hilbijêrin.) [1]
Parçe û Amûrên Ku Hûn ê Pêdivî Bin 🧰
-
Raspberry Pi: Ji bo cîhê serî Pi 4 an Pi 5 tê pêşniyar kirin.
-
Karta microSD: 32 GB+ tê pêşniyarkirin.
-
Mîkrofona USB: mîkrofoneke konferansê ya USB ya sade pir baş e.
-
Axêver: Axêverek USB an 3.5 mm, an jî I2S amp HAT.
-
Tor: Ethernet an Wi-Fi.
-
Taybetmendiyên bijarte: qapax, sarincokê çalak ji bo Pi 5, bişkoka pêlkirinê ji bo pêlkirina axaftinê, zengila LED. [1]
Sazkirina OS û Xeta Bingehîn
-
Raspberry Pi OS bi Raspberry Pi Imager ve Flash bike. Ew rêya herî hêsan e ji bo bidestxistina microSD-ya bootable bi mîhengên pêşwext ên ku hûn dixwazin. [1]
-
Boot bike, bi torê ve girêbide, paşê pakêtan nûve bike:
nûvekirina sudo apt && nûvekirina sudo apt -y
-
Bingehên dengî: Li ser Raspberry Pi OS hûn dikarin derana xwerû, ast û cîhazan bi rêya UI-ya sermaseyê an
raspi-config. Dengê USB û HDMI li seranserê modelan tê piştgirî kirin; Derana Bluetooth li ser modelên bi Bluetooth heye. [1] -
Amûran piştrast bikin:
arecord -l aplay -l
Paşê tomarkirin û lêdanê biceribîne. Ger ast ecêb xuya dikin, berî ku sûcdarkirina mîkrofonê bikin, mîkser û mîhengên xwerû kontrol bikin.

Mîmarî bi Kurtebirî 🗺️
yê maqûl bi herikîna Raspberry Pi-yê wiha xuya dike:
Peyva hişyarkirinê → girtina dengê zindî → nivîsandina ASR → birêvebirina niyetê an LLM → nivîsa bersivê → TTS → lîstina deng → çalakiyên vebijarkî bi rêya MQTT an HTTP.
-
Peyva Şopandinê: Porcupine piçûk, rast e, û bi kontrola hesasiyeta her peyvê-kilît bi awayekî herêmî dixebite. [2]
-
ASR: Whisper modelek ASR ya pirzimanî û mebest-giştî ye ku li ser ~680k demjimêran tê perwerdekirin; ew li hember dengên bi deng/paşxaneyê berxwedêr e. Ji bo karanîna li ser cîhazê,
whisper.cpprêyek texmînkirinê ya C/C++ ya sade peyda dike. [3][4] -
Mejî: Hilbijartina te - LLM-yeke ewr bi rêya API-yê, motoreke qaîdeyan, an jî texmîneke herêmî li gorî hêza hespê.
-
TTS: Piper axaftina xwezayî li herêmê çêdike, bi lez û bez ji bo bersivên bilez li ser alavên sade. [5]
Tabloya Berawirdkirina Bilez 🔎
| Hacet | Baştirîn Ji Bo | Bihayekî zêde | Çima Ew Dixebite |
|---|---|---|---|
| Peyva Şiyarbûna Porcupine | Tetikê herdem guhdarî dike | Asta belaş + | CPU kêm, rast, girêdanên hêsan [2] |
| Whisper.cpp | ASR-ya herêmî li ser Pi | Çavkaniya vekirî | Rastbûneke baş, CPU-dostane [4] |
| Faster-Whisper | ASR-ya zûtir li ser CPU/GPU-yê | Çavkaniya vekirî | Baştirkirinên CTranslate2 |
| TTS-ya Piper | Derana axaftina herêmî | Çavkaniya vekirî | Dengên bilez, gelek ziman [5] |
| API-ya LLM-ya Ewr | Sedemên dewlemend | Li gorî bikaranînê | Hesabên giran ji holê radike |
| Node-RED | Orkestrasyona çalakiyan | Çavkaniya vekirî | Herikînên dîtbarî, MQTT-dostane |
Avakirina Gav bi Gav: Yekem Loopa Dengê We 🧩
Em ê Porcupine ji bo peyva hişyarkirinê, Whisper ji bo nivîsandinê, fonksiyoneke sivik a "mejî" ji bo bersivê (bi LLM-ya xweya bijartî biguherînin), û Piper ji bo axaftinê bikar bînin. Kêmtirîn bihêlin, dûv re dubare bikin.
1) Girêdayîyan saz bike
sudo apt sazkirin -y python3-pip portaudio19-dev sox ffmpeg pip3 sazkirina sounddevice numpy
-
Porcupine: SDK/girêdanên ji bo zimanê xwe bigirin û destpêka bilez bişopînin (bişkoja gihîştinê + lîsteya peyvên sereke + çarçoveyên dengî →
.process). [2] -
Whisper (heval-bi CPU): whisper.cpp:
klona 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
Ev yek destpêka bilez a projeyê nîşan dide. [4]
Pythonê tercîh dikî?
faster-whisper(CTranslate2) gelek caran ji Pythonê vanilla li ser CPU-yên navîn zûtir dixebite.
2) Piper TTS saz bike
git clone https://github.com/rhasspy/piper cd piper make # Modelek dengî ya ku hûn jê hez dikin dakêşin, mînak, en_US-amy echo "Silav li wir." | ./piper --model voices/en/en_US-amy-medium.onnx --output_file hello.wav aplay hello.wav
Piper ji bo TTS-ya li ser cîhazê bi gelek vebijarkên deng/ziman hatiye sêwirandin. [5]
3) Xelek alîkar a herî kêm di Pythonê de
Bi zanebûn kompakt: li benda hevokeke hişyarkirinê (stub) dimîne, tomar dike, bi whisper.cpp, bersivekê çêdike (cîgir), dû re bi rêya Piper diaxive. Cîgirgir bi LLM an jî mantiqa qaîdeyê ya bijareya xwe biguherîne.
import os, subprocess, wave import sounddevice as sd WAKE_WORD = "hey komputer" # swap for Porcupine in production [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(saniye * SAMPLE_RATE), samplerate=SAMPLE_RATE, channels=CHANNELS, dtype='int16') sd.wait() bi wave.open(path, 'wb') re wekî 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 "Ez ewran nabînim, lê dibe ku baş be. Ji bo her halî jaketekê bi xwe re bîne." vegere "Te got: " + 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("Alîkar amade ye. Hevoka şiyarkirinê binivîse da ku were ceribandin.") 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("Bikarhêner:", text); print("Alîkar:", reply) speak(reply) else: print("Hevoka şiyarkirinê binivîse da ku çerxê biceribînî.")
Ji bo tespîtkirina rastîn a peyva şiyarbûnê, detektora herikîna Porcupine (CPU kêm, hesasiyeta her peyvê-kilît) entegre bike. [2]
Mîhengkirina Dengî ya ku Bi Rastî Girîng e 🎚️
Çend rastkirinên piçûk dibin sedema ku alîkarê we 10 caran zîrektir hîs bike:
-
Dûriya mîkrofonê: 30–60 cm ji bo gelek mîkrofonên USB xala herî baş e.
-
Ast: ji qutkirina têketinê dûr bisekinin û lîstina bi rêkûpêk bihêlin; berî ku hûn li dû xeyalên kodê bikevin, rêwerzê rast bikin. Li ser Raspberry Pi OS, hûn dikarin cîhaza derketinê û astan bi rêya amûrên pergalê an
raspi-config. [1] -
Akustîka odeyê: dîwarên hişk dibin sedema dengvedanê; doşekek nerm di bin mîkrofonê de dibe alîkar.
-
Asta peyva şiyarbûnê: pir hesas → tetikên xeyalî; pir hişk → hûn ê li plastîk biqîrin. Porcupine dihêle hûn hesasiyetê li gorî peyvên sereke biguherînin. [2]
-
Termal: nivîsandinên dirêj li ser Pi 5 ji bo performansa domdar ji sarincokê çalak a fermî sûd werdigirin. [1]
Ji Pêlîstokan Ber bi Amûrên Elektrîkê Ve: Xizmet, Destpêkirina Otomatîk, Kontrolên Tenduristiyê 🧯
Mirov ji bîr dikin ku skrîptan bimeşînin. Komputer ji bîr dikin ku baş bin. Çembera xwe veguherînin xizmetek birêvebirî:
-
Yekîneyeke systemd biafirîne:
[Yekîn] Danasîn=Alîkarê Dengî yê DIY Piştî=network.target sound.target [Xizmet] Bikarhêner=pi WorkingDirectory=/home/pi/assistant ExecStart=/usr/bin/python3 /home/pi/assistant/assistant.py Restart=always RestartSec=3 [Sazkirin] WantedBy=multi-user.target
-
Çalak bike:
sudo cp assistant.service /etc/systemd/system/ sudo systemctl daemon-reload sudo systemctl enable --now assistant.service
-
Dûvên têketinê:
journalctl -u alîkar -f
Niha di dema bootkirinê de dest pê dike, di dema têkçûnê de ji nû ve dest pê dike, û bi gelemperî wekî amûrekê tevdigere. Hinekî bêzar e, lê pir çêtir e.
Sîstema Jêhatîbûnê: Li Malê Bi Rastî Bikêrhatî Bike 🏠✨
Dema ku dengdan û derketin saxlem bûn, çalakiyan lê zêde bikin:
-
Routerê niyetê: rêyên peyvên sereke yên hêsan ji bo karên hevpar.
-
Mala jîr: bûyeran li MQTT biweşînin an jî xalên dawî yên HTTP-ê yên Alîkarê Malê telefon bikin.
-
Pêvek: fonksiyonên Pythonê yên bilez ên wekî
set_timer,what_is_the_time,play_radio,run_scene.
Tewra bi LLM-ya ewr di çerxê de jî, ji bo leza û pêbaweriyê pêşî fermanên herêmî yên eşkere bi rê ve bibin.
Alîkariya Tenê Herêmî li hember Alîkariya Ewr: Guhertinên ku Hûn ê Hîs Bikin 🌓
Tenê herêmî
Erênî: taybet, negirêdayî, lêçûnên pêşbînîkirî.
Neyînî: modelên girantir dikarin li ser panelên piçûk hêdî bin. Perwerdehiya pirzimanî ya Whisper ji bo domdariyê dibe alîkar ger hûn wê li ser cîhazê an li ser serverek nêzîk bihêlin. [3]
Alîkariya ewr Awantaj
: aqilmendiya bihêz, pencereyên kontekstê yên mezintir.
Neyînî: daneyên ji cîhazê derdikevin, girêdayîbûna torê, lêçûnên guhêrbar.
Hîbrîd pir caran serdikeve: peyva şiyarbûnê + ASR herêmî → gazîkirina API-yekê ji bo aqilmendiyê → TTS herêmî. [2][3][5]
Çareserkirina Pirsgirêkan: Gremlînên Xerîb & Çareseriyên Bilez 👾
-
Tetikên derewîn ên peyva şiyarkirinê: hesasiyetê kêm bikin an mîkrofonek cûda biceribînin. [2]
-
Lagiya ASR: modelek Whisper-ê ya piçûktir bikar bînin an jî
whisper.cppbi alên berdanê (-j --config Release) ava bikin. [4] -
TTS-ya Qutbûyî: hevokên hevpar pêş-çêbike; cîhaza xwe ya deng û rêjeyên nimûneyê piştrast bike.
-
Mîkrofon nehat tespîtkirin:
arecord -lû tevlihevkeran kontrol bike. -
Guhertina germî: ji bo performansa domdar, Sarincokê Çalak ê fermî li ser Pi 5 bikar bînin. [1]
Nîşeyên Ewlehî û Taybetîtiyê yên Ku Divê Hûn Bi Rastî Bixwînin 🔒
-
Pi-ya xwe bi APT-ê nûve bike.
-
Heke hûn API-ya ewr bikar tînin, tiştên ku hûn dişînin tomar bikin û pêşî li ser sererastkirina beşên kesane yên li herêmî bifikirin.
-
Xizmetan bi îmtiyazên herî kêm bixebitîne;
sudodi ExecStart de dûr bisekine. -
Ji bo mêvanan an jî demjimêrên bêdeng moda tenê-herêmî peyda bikin
Guhertoyên Avakirinê: Mîna Sendwîçekê Tevlihev Bikin û Lihev Bikin 🥪
-
Ultra-herêmî: Porcupine + whisper.cpp + Piper + qaîdeyên hêsan. Taybet û saxlem. [2][4][5]
-
Alîkariya ewr a bilez: Porcupine + (Whisper herêmî ya piçûktir an ewr ASR) + TTS herêmî + ewr LLM.
-
Navenda otomasyona malê: Herikînên Node-RED an Home Assistant ji bo rûtîn, dîmen û sensoran zêde bikin.
Mînaka Jêhatîbûnê: Ronahî bi rêya MQTT vêdixin 💡
import paho.mqtt.client as mqtt MQTT_HOST = "192.168.1.10" TOPIC = "mal/jûreya rûniştinê/ronahî/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() # if "ronahîyan vêxe" di nivîsê de: set_light("on")
Rêzek dengî lê zêde bike wekî: "lampa odeya rûniştinê vêxe," û tu ê xwe wek sêrbaz hîs bikî.
Çima Ev Stack di Pratîkê de Kar Dike 🧪
-
Porcupine di tespîtkirina peyva hişyarkirinê de li ser panelên piçûk bi bandor û rast e, ku guhdarîkirina her dem gengaz dike. [2]
-
Perwerdehiya berfireh û pirzimanî ya Whisper wê ji bo jîngeh û devokên cûrbecûr maqûl dike. [3]
-
whisper.cppwê hêzê li ser cîhazên ku tenê CPU-yê bikar tînin, mîna Pi-yê, bikar tîne. [4] -
Piper bêyî şandina deng bo TTS-ya ewr, bersivên bilez dihêle. [5]
Pir dirêj bû, min nexwend
Bi tevlihevkirina Porcupine ji bo peyva hişyarkirinê, Whisper (bi rêya whisper.cpp ) ji bo ASR, mêjiyê bijartina we ji bo bersivdanan, û Piper ji bo TTS-ya herêmî, bi Raspberry Pi-yê re Alîkarekî AI-ê yê modular û taybet ava bikin . Wê wekî karûbarek systemd bipêçin, deng mîheng bikin, û çalakiyên MQTT an HTTP-ê têxin nav xwe. Ji ya ku hûn difikirin erzantir e, û bi awayekî ecêb xweş e ku meriv pê re bijî. [1][2][3][4][5]
Referans
-
Nermalava Raspberry Pi û Sarkirin - Raspberry Pi Imager (dakêşin û bikar bînin) û agahdariya hilberê Pi 5 Active Cooler
-
Wênegirê Raspberry Pi: bêtir bixwînin
-
Sarincokê Çalak (Pi 5): bêtir bixwîne
-
-
Porcupine Wake Word – SDK & destpêka bilez (peyvên sereke, hesasiyet, texmîna herêmî)
-
Whisper (modela ASR) - ASR-ya pirzimanî, bihêz ku li ser ~680 hezar demjimêran hatiye perwerdekirin
-
Radford et al., Naskirina Axaftinê ya Bi Hêz Bi Rêya Çavdêriya Lawaz a Pîvana Mezin (Whisper): bêtir bixwînin
-
-
whisper.cpp – Tesbîta Whisper a CPU-dostane bi CLI û gavên avakirinê
-
Piper TTS – TTS-ya neuralî ya bilez û herêmî bi gelek deng/zimanan