Ahoana ny fomba hanamboarana mpanampy AI DIY amin'ny Raspberry Pi

Ahoana ny fomba hanamboarana mpanampy AI DIY amin'ny Raspberry Pi

Te hanana mpanampy feo kely izay tena manaraka ny fomba fiasanao ve ianao, miasa amin'ny fitaovanao manokana, ary tsy handidy mananasy roa ambin'ny folo tsy nahy satria diso ny fandrenesany anao? Mahagaga fa azo tanterahina, mahafinaritra ary azo ovaina ny mpanampy AI DIY miaraka amin'ny Raspberry Pi . Hanamboatra teny famantarana, famantarana fitenenana (ASR = famantarana fitenenana mandeha ho azy), atidoha ho an'ny fiteny voajanahary (fitsipika na LLM), ary lahatsoratra-amin'ny-fitenenana (TTS) ianao. Ampio script vitsivitsy, serivisy iray na roa, ary fanitsiana feo amim-pitandremana, dia hanana fanamafisam-peo marani-tsaina azo ampidirina am-paosy ianao izay manaraka ny fitsipikao.

Andao isika hanomboka amin'ny tena fifandraisana amin'ny Pi-nao tsy misy fisarihana volo mahazatra. Hodinihintsika ny ampahany, ny fametrahana, ny kaody, ny fampitahana, ny zavatra tokony ho fantatra... ny burrito manontolo. 🌯

Lahatsoratra mety ho tianao hovakiana aorian'ity iray ity:

🔗 Ahoana no fomba hianarana AI mahomby
Mamoròna drafitra fianarana, tetikasa fampiharana, ary araho maso ny fandrosoana.

🔗 Ahoana ny fomba hanombohana orinasa AI
Hamarino ny olana, amboary ny MVP, angony ny ekipa, ary ataovy izay hahazoana mpanjifa voalohany.

🔗 Ahoana ny fampiasana AI mba hahazoana vokatra bebe kokoa
Ataovy mandeha ho azy ny asa mahazatra, tsitsio ny fizotran'ny asa, ary ampitomboy ny vokatra famoronana.

🔗 Ahoana ny fomba hampidirana ny AI ao amin'ny orinasanao
Fantaro ireo dingana misy fiantraikany lehibe, ampiharo ireo dingana andrana, refeso ny tombony azo avy amin'ny fampiasam-bola (ROI), ary ampitomboy.


Inona no mahatonga ny Mpanampy AI DIY tsara amin'ny Raspberry Pi ✅

  • Manokana amin'ny ankapobeny - tazomy eo an-toerana ny feo raha azo atao. Ianao no manapa-kevitra izay hivoaka ny fitaovana.

  • Modular - manova singa toy ny Lego: wake word engine, ASR, LLM, TTS.

  • Mora vidy - ny ankamaroany dia mikrôfôna open source, avy amin'ny vokatra avy amin'ny orinasa, fanamafisam-peo ary Pi.

  • Azo amboarina amin'ny hack – mila automatique an-trano, dashboard, fomba fanao mahazatra, fahaiza-manao manokana ve ianao? Mora.

  • Azo ianteherana - tantanin'ny serivisy, manomboka ary mihaino ho azy.

  • Mahafinaritra – hianatra zavatra betsaka momba ny feo, ny dingana ary ny famolavolana mifototra amin'ny hetsika ianao.

Torohevitra kely: Raha mampiasa Raspberry Pi 5 ianao ary mikasa ny hampiasa modely eo an-toerana mavesatra kokoa, dia manampy amin'ny enta-mavesatra maharitra ny "clip-on cooler". (Raha misalasala ianao dia fidio ny Active Cooler ofisialy natao ho an'ny Pi 5.) [1]


Ireo kojakoja sy fitaovana ilainao 🧰

  • Raspberry Pi: Pi 4 na Pi 5 atolotra ho an'ny toerana malalaka kokoa.

  • Karatra microSD: 32 GB+ atolotra.

  • Mikrofonina USB: tsara ny mikrôfôna USB tsotra ho an'ny fihaonambe.

  • Hafatra: Hafatra USB na 3.5 mm, na HAT amp I2S.

  • Tambajotra: Ethernet na Wi-Fi.

  • Zavatra tsara azo isafidianana: boaty, vata fampangatsiahana mavitrika ho an'ny Pi 5, bokotra fanindriana ho an'ny "push-to-talk", peratra LED. [1]

OS & Fametrahana fototra

  1. Mametraka rafitra fiasan'ny Raspberry Pi miaraka amin'ny Raspberry Pi Imager. Fomba tsotra hahazoana microSD azo bootable miaraka amin'ireo presets tianao io. [1]

  2. Atombohy, ampifandraiso amin'ny tambajotra, dia havaozy ny fonosana:

fanavaozana sudo apt sy& fanavaozana sudo apt -y
  1. Fototry ny feo: Ao amin'ny Raspberry Pi OS dia azonao atao ny mametraka ny output, ny levels, ary ny fitaovana mahazatra amin'ny alàlan'ny interface desktop na raspi-config. Tohanana amin'ny modely rehetra ny audio USB sy HDMI; Azo ampiasaina amin'ny modely misy Bluetooth ny output Bluetooth. [1]

  2. Hamarino ireo fitaovana:

arecord -l aplay -l

Dia andramo ny fakana feo sy ny famerenana azy. Raha toa ka hafahafa ny haavon'ny feo, dia jereo ny "mixer" sy ny "prefabrications" alohan'ny hanomezana tsiny ny mikrô.

 

AI raspberry pi

Topimaso momba ny maritrano 🗺️

Toy izao ny fomba fiasan'ny Mpanampy AI DIY miaraka amin'ny Raspberry Pi :

Wake word → fakana feo mivantana → Fandikana ASR → fikirakirana ny fikasana na LLM → lahatsoratra valiny → TTS → famerenan-peo → hetsika azo atao amin'ny alàlan'ny MQTT na HTTP.

  • Wake word: Kely, marina ary mandeha eo an-toerana miaraka amin'ny fifehezana ny fahatsapan'ny teny fanalahidy isaky ny teny fototra. [2]

  • ASR: Ny Whisper dia modely ASR amin'ny fiteny maro, ampiasaina amin'ny ankapobeny, izay efa nozarina nandritra ny ~680k ora; matanjaka amin'ny lantom-peo/tabataba ambadika izy io. Ho an'ny fampiasana amin'ny fitaovana, ny whisper.cpp dia manome lalana fanatsoahan-kevitra C/C++ tsotra. [3][4]

  • Atidoha: Safidinao - LLM rahona amin'ny alàlan'ny API, motera fitsipika, na fanatsoahan-kevitra eo an-toerana miankina amin'ny horsepower.

  • TTS: Mamokatra kabary voajanahary eo an-toerana ny Piper, haingana ampy hahazoana valiny haingana amin'ny fitaovana tsotra. [5]


Tabilao fampitahana haingana 🔎

Fitaovana Tsara indrindra ho an'ny Vidiny mirary Nahoana no miasa izy io
Teny Mifohaza amin'ny Sokina Mpanentana mihaino foana Ambaratonga maimaim-poana + CPU ambany, marina, fifandraisana mora [2]
Whisper.cpp ASR eo an-toerana amin'ny Pi Loharano misokatra Marina tsara, mifanaraka amin'ny CPU [4]
Bitsika haingana kokoa ASR haingana kokoa amin'ny CPU/GPU Loharano misokatra Fanatsarana ny CTranslate2
Piper TTS Vokatra lahateny eo an-toerana Loharano misokatra Feo haingana, fiteny maro [5]
API LLM amin'ny rahona Fanjohian-kevitra manankarena Mifototra amin'ny fampiasana Manala ny kajy mavesatra
Node-RED Fandrindrana hetsika Loharano misokatra Fikorianan'ny sary, mifanaraka amin'ny MQTT

Fananganana tsikelikely: Ny Feo Voalohany Anao 🧩

Hampiasainay ny Porcupine ho an'ny teny fanairana, ny Whisper ho an'ny fandikana, ny fiasa maivana "ati-doha" ho an'ny valiny (soloy amin'ny LLM safidinao), ary ny Piper ho an'ny fitenenana. Ataovy faran'izay kely izany, dia avereno indray.

1) Fametrahana fiankinan-doha

sudo apt install -y python3-pip portaudio19-dev sox ffmpeg pip3 install sounddevice numpy
  • Porcupine: alaivo ny SDK/bindings ho an'ny fiteninao ary araho ny fanombohana haingana (access key + keyword list + audio frames → .process). [2]

  • Whisper (mifanaraka amin'ny CPU): manamboara whisper.cpp:

git clone 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

Ny etsy ambony dia maneho ny fanombohana haingana ny tetikasa. [4]

Aleonao kokoa ny Python? ny faster-whisper (CTranlate2) dia maranitra kokoa noho ny Python vanilla amin'ny CPU antonony.

2) Mametraka ny Piper TTS

git clone https://github.com/rhasspy/piper cd piper make # Misintona modely feo tianao, ohatra, en_US-amy echo "Manahoana." | ./piper --model voices/en/en_US-amy-medium.onnx --output_file hello.wav aplay hello.wav

Natao ho an'ny TTS amin'ny fitaovana miaraka amin'ny safidy feo/fiteny maro ny Piper. [5]

3) Famerimberenana mpanampy faran'izay kely indrindra ao amin'ny Python

Miendrika voafehy an-tsitrapo: miandry andian-teny mifoha (stub), mirakitra, mandika amin'ny whisper.cpp, mamorona valiny (placeholder), avy eo miteny amin'ny alàlan'ny Piper. Soloy amin'ny LLM na lojika fitsipika tianao indrindra ny placeholder.

ampidiro ny os, subprocess, wave ampidiro ny sounddevice ho sd WAKE_WORD = "hey computer" # ovay ho an'ny Porcupine amin'ny famokarana [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(segondra * SAMPLE_RATE), samplerate=SAMPLE_RATE, channels=CHANNELS, dtype='int16') sd.wait() miaraka amin'ny wave.open(path, 'wb') toy ny 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) miaraka amin'ny open(path.replace(".wav", ".txt"), "r", encoding="utf-8") ho f: return f.read().strip() def generate_reply(prompt): raha "weather" ao amin'ny prompt.lower(): return "Tsy hitako ny rahona, fa mety ho tsara ihany. Mitondrà akanjo raha sendra misy olana." avereno "Hoy ianao: " + 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("Vonona ny mpanampy. Soraty ny andian-teny famantarana mba hitsapana.") raha toa ka Marina: typed = input("> ").strip().lower() raha toa ka typed == WAKE_WORD: wav_path = f"{WORKDIR}/input.wav" record_wav(wav_path) text = transcribe(wav_path) reply = generate_reply(text) print("User:", text); print("Assistant:", reply) speak(reply) else: print("Asio ny andian-teny fanairana mba hitsapana ny tadivavarana.")

Mba hahitana teny miafina tena izy, ampidiro ny mpitsikilo streaming an'ny Porcupine (CPU ambany, fahatsapana isaky ny teny fanalahidy). [2]


Fanitsiana feo tena zava-dehibe 🎚️

Misy fanamboarana kely vitsivitsy mahatonga ny mpanampy anao hahatsiaro ho marani-tsaina kokoa in-10:

  • Elanelan'ny mikrô: 30–60 sm dia toerana mety tsara ho an'ny mikrô USB maro.

  • Ambaratonga: aza tapahina ny rakitra amin'ny fidirana ary tazomy ho ara-dalàna ny famerenana; amboary ny lalana alohan'ny hanenjehana ireo matoatoa kaody. Ao amin'ny Raspberry Pi OS, azonao atao ny mitantana ny fitaovana famoahana sy ny ambaratonga amin'ny alàlan'ny fitaovan'ny rafitra na raspi-config. [1]

  • Akostikan'ny efitrano: ny rindrina mafy dia miteraka akony; ny tsihy malefaka eo ambanin'ny mikrôfôna dia manampy.

  • Fepetra fampiasana teny: saro-pady loatra → zavatra mampihetsika ny matoatoa; henjana loatra → hitabataba amin'ny plastika ianao. Ny Porcupine dia ahafahanao manova ny fahatsapana isaky ny teny fanalahidy. [2]

  • Thermals: ny fandikana lava amin'ny Pi 5 dia mahazo tombony amin'ny fampangatsiahana mavitrika ofisialy mba hahazoana fahombiazana maharitra. [1]


Avy amin'ny kilalao mankany amin'ny fitaovana elektronika: Serivisy, fanombohana mandeha ho azy, fizahana ara-pahasalamana 🧯

Manadino ny mampiasa script ny olombelona. Manadino ny ho tsara fanahy ny solosaina. Avadiho ho serivisy tantanin'ny mpitantana ny loop-nao:

  1. Mamorona singa systemd:

[Unit] Famaritana=Mpanampy amin'ny feo DIY Aorian'ny=network.target sound.target [Serivisy] Mpampiasa=pi WorkingDirectory=/home/pi/assistant ExecStart=/usr/bin/python3 /home/pi/assistant/assistant.py Atombohy indray=always Atombohy indraySec=3 [Fametrahana] WantedBy=multi-user.target
  1. Alefaso izany:

sudo cp assistant.service /etc/systemd/system/ sudo systemctl daemon-reload sudo systemctl enable --now assistant.service
  1. Rambon-kazo:

journalctl -u mpanampy -f

Ankehitriny dia manomboka izy io rehefa manomboka, miverina indray rehefa mianjera, ary amin'ny ankapobeny dia toy ny fitaovana elektronika ihany ny fiasany. Somary mankaleo ihany, fa tsara kokoa.


Rafitra Fahaizana: Ataovy Tena Ilaina ao An-trano 🏠✨

Rehefa matanjaka ny "voice-in" sy ny "voice-out" dia ampio ny asa:

  • Router Intent: lalana teny fanalahidy tsotra ho an'ny asa mahazatra.

  • Trano marani-tsaina: mamoaka hetsika ao amin'ny MQTT na miantsoa ireo teboka HTTP an'ny Home Assistant.

  • Plugins: asa Python haingana toy ny set_timer, what_is_the_time, play_radio, run_scene.

Na dia misy LLM amin'ny rahona aza, dia alefaso aloha ny baiko eo an-toerana mazava mba hahazoana hafainganam-pandeha sy fahatokisana.


Local Only vs Cloud Assist: Fifandimbiasana ho tsapanao 🌓

Eo an-toerana ihany
Tombony: manokana, ivelan'ny aterineto, vidiny azo vinavinaina.
Fatiantoka: mety ho miadana amin'ny solaitrabe kely ny maodely mavesatra kokoa. Ny fiofanana amin'ny fiteny maro an'ny Whisper dia manampy amin'ny faharetana raha tazoninao ao amin'ny fitaovana na amin'ny mpizara akaiky azy. [3]

Fanampiana amin'ny rahona
Tombony: fisainana mahery vaika, varavarankely lehibe kokoa.
Fatiantoka: miala amin'ny fitaovana ny angona, miankina amin'ny tambajotra, fandaniana miovaova.

Matetika ny "hybride" no mandresy: wake word + ASR local → miantso API ho an'ny fanjohian-kevitra → TTS local. [2][3][5]


Famahana olana: Gremlins hafahafa & Fanamboarana haingana 👾

  • Fampihetsehana diso amin'ny alalan'ny "wake word": fihenan'ny fahatsapana na andramo mikrôfôna hafa. [2]

  • ASR lag: ampiasao modely Whisper kely kokoa na manamboara whisper.cpp miaraka amin'ny release flags (-j --config Release). [4]

  • Choppy TTS: mamorona fehezanteny mahazatra mialoha; manamarina ny fitaovanao sy ny tahan'ny santionany.

  • Tsy misy mikrô hita: jereo ny arecord -l sy ny mixers.

  • Fampihenana ny hafanana: ampiasao ny Active Cooler ofisialy amin'ny Pi 5 mba hahazoana fahombiazana maharitra. [1]


Fanamarihana momba ny fiarovana sy ny fiainana manokana tokony hovakianao 🔒

  • Havaozy hatrany ny Pi-nao amin'ny APT.

  • Raha mampiasa cloud API ianao dia raketo izay alefanao ary diniho ny manala ireo bitika manokana eo an-toerana aloha.

  • Ampandehano ireo serivisy miaraka amin'ny tombontsoa kely indrindra; fadio ny sudo ao amin'ny ExecStart raha tsy ilaina.

  • Omeo fomba fiasa eo an-toerana ihany ho an'ny vahiny na mandritra ny ora tony.


Karazana fanamboarana: Afangaro sy ampifanaraho toy ny sandwich 🥪

  • Tena eo an-toerana: Porcupine + whisper.cpp + Piper + fitsipika tsotra. Manokana sy matanjaka. [2][4][5]

  • Fanampiana haingana amin'ny rahona: Porcupine + (Whisper eo an-toerana kely kokoa na cloud ASR) + TTS eo an-toerana + cloud LLM.

  • Foibe fanaraha-maso ny automatique an-trano: Ampio ny fizotran'ny Node-RED na Home Assistant ho an'ny fomba fanao, sehatra ary sensor.


Fahaizana Ohatra: Jiro Mirehitra amin'ny alàlan'ny MQTT 💡

ampidiro paho.mqtt.client ho mqtt MQTT_HOST = "192.168.1.10" LOHAHEVITRA = "trano/efitra fandraisam-bahiny/jiro/set" def set_light(state: str): client = mqtt.Client() client.connect(MQTT_HOST, 1883, 60) payload = "ON" raha state.lower().startswith("on") raha tsy izany "OFF" client.publish(LOHAHEVITRA, payload, qos=1, retain=False) client.disconnect() # raha "mirehitra ny jiro" ao anaty lahatsoratra: set_light("on")

Ampio andalana feo toy ny hoe: "alefaso ny jiron'ny efitrano fandraisam-bahiny," dia hahatsiaro ho toy ny mpamosavy ianao.


Nahoana no miasa ity antontana ity amin'ny fampiharana 🧪

  • Mahomby sy marina tsara ny Porcupine amin'ny fitadiavana teny mifoha amin'ny solaitrabe kely, izay mahatonga ny fihainoana foana ho azo atao. [2]

  • Ny fiofanana maro samihafa sy azo ampiasaina amin'ny fiteny maro ao amin'ny Whisper dia mahatonga azy ho matanjaka amin'ny tontolo iainana sy ny fitenim-paritra isan-karazany. [3]

  • Ny whisper.cpp dia mitazona io hery io ho azo ampiasaina amin'ny fitaovana CPU ihany toy ny Pi. [4]

  • Mitazona ny valiny ho haingana ny Piper nefa tsy mandefa feo amin'ny TTS rahona. [5]


Lava loatra, tsy novakiako

Mamoròna mpanampy AI manokana sy modular miaraka amin'ny Raspberry Pi amin'ny alàlan'ny fampifangaroana ny Porcupine ho an'ny teny fampandehanana, Whisper (amin'ny alàlan'ny whisper.cpp) ho an'ny ASR, ny safidinao amin'ny atidoha ho an'ny valiny, ary Piper ho an'ny TTS eo an-toerana. Aforeto ho serivisy systemd izany, amboary ny feo, ary ampidiro amin'ny hetsika MQTT na HTTP. Mora kokoa noho ny eritreretinao izany, ary mahagaga fa mahafinaritra ny miaina miaraka aminy. [1][2][3][4][5]


References

  1. Rindrambaiko sy Fampangatsiahana Raspberry Pi – Raspberry Pi Imager (ampidino sy ampiasao) ary fampahalalana momba ny vokatra Pi 5 Active Cooler

  2. Porcupine Wake Word – SDK & fanombohana haingana (teny fanalahidy, fahatsapana, fanatsoahan-kevitra eo an-toerana)

  3. Whisper (modely ASR) – ASR matanjaka sy maro fiteny voaofana mandritra ny ~680k ora

    • Radford et al., Famantarana ny fitenenana matanjaka amin'ny alàlan'ny fanaraha-maso malemy amin'ny ambaratonga lehibe (Whisper): vakio bebe kokoa

  4. whisper.cpp – Famaranana Whisper mifanaraka amin'ny CPU miaraka amin'ny CLI sy dingana fananganana

  5. Piper TTS – TTS neural eo an-toerana sy haingana miaraka amin'ny feo/fiteny maro

Tadiavo ny AI farany indrindra ao amin'ny fivarotana mpanampy AI ofisialy

Momba anay


Miverena amin'ny bilaogy