ຕ້ອງການຜູ້ຊ່ວຍສຽງຂະໜາດນ້ອຍທີ່ເຮັດຕາມຄຳແນະນຳຂອງເຈົ້າ, ໃຊ້ຮາດແວຂອງເຈົ້າເອງ, ແລະ ຈະບໍ່ສັ່ງໝາກນັດສິບສອງໜ່ວຍໂດຍບັງເອີນເພາະວ່າມັນໄດ້ຍິນເຈົ້າຜິດບໍ? ຜູ້ຊ່ວຍ AI ແບບ DIY ທີ່ມີ Raspberry Pi ແມ່ນເຮັດໄດ້ຢ່າງໜ້າປະຫຼາດໃຈ, ມ່ວນ, ແລະ ມີຄວາມຍືດຫຍຸ່ນ. ເຈົ້າຈະຕ້ອງເຊື່ອມຕໍ່ຄຳເຕືອນ, ການຮັບຮູ້ສຽງເວົ້າ (ASR = ການຮັບຮູ້ສຽງເວົ້າອັດຕະໂນມັດ), ສະໝອງສຳລັບພາສາທຳມະຊາດ (ກົດລະບຽບ ຫຼື LLM), ແລະ ຂໍ້ຄວາມເປັນສຽງເວົ້າ (TTS). ເພີ່ມສະຄຣິບສອງສາມອັນ, ການບໍລິການໜຶ່ງ ຫຼື ສອງຢ່າງ, ແລະ ການປັບແຕ່ງສຽງຢ່າງລະມັດລະວັງ, ແລະ ເຈົ້າຈະມີລຳໂພງອັດສະລິຍະແບບພົກພາທີ່ເຊື່ອຟັງກົດລະບຽບຂອງເຈົ້າ.
ຂໍໃຫ້ເຈົ້າພາເຈົ້າຈາກສູນໄປສູ່ການເວົ້າກັບເຈົ້າ-Pi ໂດຍບໍ່ຕ້ອງດຶງຜົມແບບປົກກະຕິ. ພວກເຮົາຈະກວມເອົາພາກສ່ວນ, ການຕິດຕັ້ງ, ລະຫັດ, ການປຽບທຽບ, gotchas ... burrito ທັງຫມົດ. 🌯
ບົດຄວາມທີ່ທ່ານອາດຈະຢາກອ່ານຫຼັງຈາກບົດຄວາມນີ້:
🔗 ວິທີການສຶກສາ AI ທີ່ມີປະສິດທິພາບ
ສ້າງແຜນທີ່ເສັ້ນທາງການສຶກສາ, ໂຄງການປະຕິບັດ, ແລະຕິດຕາມຄວາມຄືບຫນ້າ.
🔗 ວິທີການເລີ່ມຕົ້ນບໍລິສັດ AI
ກວດສອບບັນຫາ, ສ້າງ MVP, ປະກອບທີມງານ, ຮັບປະກັນລູກຄ້າໃນເບື້ອງຕົ້ນ.
🔗 ວິທີການໃຊ້ AI ເພື່ອໃຫ້ມີປະສິດທິພາບຫຼາຍຂຶ້ນ
ເຮັດໜ້າວຽກປະຈຳເປັນອັດຕະໂນມັດ, ປັບປຸງຂະບວນການເຮັດວຽກ, ແລະເພີ່ມຜົນຜະລິດທີ່ສ້າງສັນ.
🔗 ວິທີການລວມເອົາ AI ເຂົ້າໃນທຸລະກິດຂອງທ່ານ
ກໍານົດຂະບວນການທີ່ມີຜົນກະທົບສູງ, ປະຕິບັດນັກບິນ, ການວັດແທກ ROI, ຂະຫນາດ.
ສິ່ງທີ່ເຮັດໃຫ້ຜູ້ຊ່ວຍ DIY AI ທີ່ດີກັບ Raspberry Pi ✅
-
ເປັນສ່ວນຕົວຕາມຄ່າເລີ່ມຕົ້ນ - ຮັກສາສຽງໃຫ້ຢູ່ໃນທ້ອງຖິ່ນບ່ອນທີ່ເປັນໄປໄດ້. ທ່ານຕັດສິນໃຈວ່າຈະເອົາຫຍັງອອກຈາກອຸປະກອນ.
-
ໂມດູນ - ສະຫຼັບອົງປະກອບຕ່າງໆເຊັ່ນ Lego: wake word engine, ASR, LLM, TTS.
-
ລາຄາບໍ່ແພງ - ສ່ວນຫຼາຍແມ່ນແຫຼ່ງເປີດ, ໄມໂຄຣໂຟນສິນຄ້າ, ລຳໂພງ ແລະ Pi.
-
Hackable - ຕ້ອງການລະບົບອັດຕະໂນມັດໃນເຮືອນ, ແຜງຄວບຄຸມ, ກິດຈະວັດປະຈຳວັນ, ທັກສະທີ່ກຳນົດເອງບໍ? ງ່າຍ.
-
ໜ້າເຊື່ອຖື - ຈັດການໂດຍການບໍລິການ, ບູດ ແລະ ເລີ່ມຟັງໂດຍອັດຕະໂນມັດ.
-
ມ່ວນ - ທ່ານຈະໄດ້ຮຽນຮູ້ຫຼາຍຢ່າງກ່ຽວກັບສຽງ, ຂະບວນການ ແລະ ການອອກແບບທີ່ຂັບເຄື່ອນດ້ວຍເຫດການ.
ຄໍາແນະນໍານ້ອຍໆ: ຖ້າທ່ານໃຊ້ Raspberry Pi 5 ແລະວາງແຜນທີ່ຈະແລ່ນແບບທ້ອງຖິ່ນທີ່ຫນັກກວ່າ, ເຄື່ອງເຢັນ clip-on ຈະຊ່ວຍພາຍໃຕ້ການໂຫຼດແບບຍືນຍົງ. (ເມື່ອສົງໃສ, ເລືອກ Active Cooler ທີ່ເປັນທາງການທີ່ອອກແບບມາສຳລັບ Pi 5.) [1]
🧰ຊິ້ນສ່ວນ ແລະ ເຄື່ອງມືທີ່ເຈົ້າຕ້ອງການ
-
Raspberry Pi: Pi 4 ຫຼື Pi 5 ແນະນໍາສໍາລັບ headroom.
-
ກາດ microSD: 32 GB+ ແນະນໍາ.
-
ໄມໂຄຣໂຟນ USB: ໄມປະຊຸມ USB ແບບງ່າຍໆແມ່ນດີຫຼາຍ.
-
ລຳໂພງ: USB ຫຼື ລຳໂພງ 3.5 ມມ, ຫຼື I2S amp HAT.
-
ເຄືອຂ່າຍ: ອີເທີເນັດ ຫຼື Wi-Fi.
-
ງາມທາງເລືອກ: case, active cooler for Pi 5, push button for push-to-talk, LED ring. [1]
ການຕິດຕັ້ງ OS ແລະພື້ນຖານ
-
ແຟລດ Raspberry Pi OS ດ້ວຍ Raspberry Pi Imager. ມັນເປັນວິທີທີ່ງ່າຍດາຍທີ່ຈະໄດ້ຮັບ microSD ທີ່ສາມາດບູດໄດ້ດ້ວຍ presets ທີ່ທ່ານຕ້ອງການ. [1]
-
ເປີດເຄື່ອງ, ເຊື່ອມຕໍ່ເຄືອຂ່າຍ, ຈາກນັ້ນອັບເດດແພັກເກດ:
sudo apt update && sudo apt upgrade -y
-
ພື້ນຖານສຽງ: ໃນ Raspberry Pi OS ທ່ານສາມາດກໍານົດຜົນຜະລິດ, ລະດັບ, ແລະອຸປະກອນເລີ່ມຕົ້ນໂດຍຜ່ານ desktop UI ຫຼື
raspi-config. ສຽງ USB ແລະ HDMI ແມ່ນຮອງຮັບໃນທົ່ວແບບຈໍາລອງ; ຜົນຜະລິດ Bluetooth ແມ່ນມີຢູ່ໃນລຸ້ນທີ່ມີ Bluetooth. [1] -
ຢືນຢັນອຸປະກອນ:
arecord -l aplay -l
ຫຼັງຈາກນັ້ນ, ທົດສອບການຈັບພາບ ແລະຫຼິ້ນຄືນ. ຖ້າລະດັບເບິ່ງຄືວ່າແປກ, ໃຫ້ກວດເບິ່ງເຄື່ອງປະສົມແລະຄ່າເລີ່ມຕົ້ນກ່ອນທີ່ຈະຕໍານິຕິຕຽນໄມ.

ສະຖາປັດຕະຍະກຳ 🗺️
ທີ່ເຂົ້າໃຈໄດ້ ກັບກະແສ Raspberry Pi ມີລັກສະນະດັ່ງນີ້:
Wake word → ການບັນທຶກສຽງສົດ → ການຖອດຂໍ້ຄວາມ ASR → ການຈັດການຄວາມຕັ້ງໃຈ ຫຼື LLM → ຂໍ້ຄວາມຕອບສະໜອງ → TTS → ການຫຼິ້ນສຽງ → ຄຳສັ່ງທາງເລືອກຜ່ານ MQTT ຫຼື HTTP.
-
Wake word: Porcupine ແມ່ນຂະຫນາດນ້ອຍ, ຖືກຕ້ອງ, ແລະດໍາເນີນການໃນທ້ອງຖິ່ນດ້ວຍການຄວບຄຸມຄວາມອ່ອນໄຫວຕໍ່ຄໍາຫລັກ. [2]
-
ASR: Whisper ເປັນຮູບແບບ ASR ຫຼາຍພາສາ, ຈຸດປະສົງທົ່ວໄປທີ່ໄດ້ຮັບການຝຶກອົບຮົມໃນເວລາປະມານ 680k ຊົ່ວໂມງ; ມັນທົນທານຕໍ່ສຽງລົບກວນ/ສຽງລົບກວນພື້ນຫຼັງ. ສຳລັບການນຳໃຊ້ໃນອຸປະກອນ,
whisper.cppໃຫ້ເສັ້ນທາງການອະນຸມານ C/C++ ທີ່ລຽບງ່າຍ. [3][4] -
ສະໝອງ: ທາງເລືອກຂອງເຈົ້າ - cloud LLM ຜ່ານ API, ເຄື່ອງຈັກກົດລະບຽບ, ຫຼືການອະນຸມານທ້ອງຖິ່ນຂຶ້ນກັບແຮງມ້າ.
-
TTS: Piper ສ້າງສຽງເວົ້າແບບທໍາມະຊາດຢູ່ໃນທ້ອງຖິ່ນ, ໄວພຽງພໍສໍາລັບການຕອບໂຕ້ທີ່ງູໆໃນຮາດແວເລັກນ້ອຍ. [5]
ຕາຕະລາງປຽບທຽບດ່ວນ🔎
| ເຄື່ອງມື | ດີທີ່ສຸດສຳລັບ | ລາຄາປະມານ | ເປັນຫຍັງມັນຈຶ່ງໃຊ້ໄດ້ຜົນ |
|---|---|---|---|
| Porcupine Wake Word | ກະຕຸ້ນໃຫ້ຟັງສະເໝີ | ຊັ້ນຟຣີ + | CPU ຕໍ່າ, ຖືກຕ້ອງ, ການຜູກມັດງ່າຍ [2] |
| Whisper.cpp | ASR ທ້ອງຖິ່ນໃນ Pi | ໂອເພນຊອສ | ຄວາມຖືກຕ້ອງດີ, ເປັນມິດກັບ CPU [4] |
| ໄວກວ່າ-ກະຊິບ | ASR ໄວຂຶ້ນໃນ CPU/GPU | ໂອເພນຊອສ | ການເພີ່ມປະສິດທິພາບ CTranslate2 |
| Piper TTS | ຜົນຜະລິດສຽງເວົ້າໃນທ້ອງຖິ່ນ | ໂອເພນຊອສ | ສຽງໄວ, ຫຼາຍພາສາ [5] |
| Cloud LLM API | ສົມເຫດສົມຜົນອຸດົມສົມບູນ | ການນໍາໃຊ້ອີງໃສ່ | Offloads ຄອມພິວເຕີຢ່າງໜັກ |
| Node-RED | ການປະຕິບັດ Orchestrating | ໂອເພນຊອສ | ກະແສພາບ, MQTT ເປັນມິດ |
ການສ້າງເທື່ອລະຂັ້ນຕອນ: ວົງສຽງທຳອິດຂອງເຈົ້າ🧩
ພວກເຮົາຈະໃຊ້ Porcupine ສໍາລັບຄໍາປຸກ, Whisper ສໍາລັບການຖອດຂໍ້ຄວາມ, ຟັງຊັນ "ສະຫມອງ" ທີ່ມີນ້ໍາຫນັກເບົາສໍາລັບການຕອບ (ແທນທີ່ດ້ວຍ LLM ທີ່ທ່ານເລືອກ), ແລະ Piper ສໍາລັບຄໍາເວົ້າ. ຮັກສາມັນໜ້ອຍທີ່ສຸດ, ຈາກນັ້ນເຮັດຊ້ຳ.
1) ຕິດຕັ້ງການຂຶ້ນກັບ
sudo apt ຕິດຕັ້ງ -y python3-pip portaudio19-dev sox ffmpeg pip3 ຕິດຕັ້ງ sounddevice numpy
-
Porcupine: ເອົາ SDK/bindings ສຳລັບພາສາຂອງທ່ານ ແລະ ປະຕິບັດຕາມການເລີ່ມຕົ້ນດ່ວນ (ລະຫັດການເຂົ້າເຖິງ + ລາຍຊື່ຄຳສຳຄັນ + ເຟຣມສຽງ →
.process). [2] -
Whisper (ເປັນມິດກັບ CPU): ສ້າງ 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
ຂ້າງເທິງນີ້ສະທ້ອນເຖິງການເລີ່ມຕົ້ນໄວຂອງໂຄງການ. [4]
ມັກ Python ບໍ?
ໄວກວ່າ-ກະຊິບ(CTTranslate2) ມັກຈະເປັນໄວກວ່າ vanilla Python ໃນ CPU ທີ່ປານກາງ.
2) ຕັ້ງຄ່າ Piper TTS
git clone https://github.com/rhasspy/piper cd piper make # ດາວໂຫລດຕົວແບບສຽງທີ່ທ່ານມັກ, eg, 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 ທີ່ທ່ານມັກ ຫຼືເຫດຜົນກົດລະບຽບ.
import os, subprocess, wave import sounddevice as sd WAKE_WORD = "hey computer" # 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(seconds * SAMPLE_RATE), samplerate=1 channels'SAMPLE_RATE), samplerate=1 channels'SAMPLE_RATE, sd.wait() ກັບ wave.open(ເສັ້ນທາງ, '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", "placer)" . encoding="utf-8") as f: return f.read().strip() def generate_reply(prompt): ຖ້າ "weather" in prompt.lower(): 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-utf8")" proc.stdin.close(); proc.wait() subprocess.run(["aplay", f"{WORKDIR}/reply.wav"], check=True) print("Assistant ready. type the wake phrase to test.") ໃນຂະນະທີ່ True: typed = input("> ").strip().lower() ຖ້າພິມ == WAKE_WORD: wav_path=wRDI" record_wav(wav_path) text = transcribe(wav_path) ຕອບ = generate_reply(text) print("User:", text); print("Assistant:", reply) speak(reply) else: print("ພິມຄຳ wake ເພື່ອທົດສອບ loop.")
ສໍາລັບການກວດສອບການຕື່ນຕົວທີ່ແທ້ຈິງ, ປະສົມປະສານເຄື່ອງກວດຈັບນ້ໍາຂອງ Porcupine ( CPU ຕ່ໍາ, ຄວາມອ່ອນໄຫວຕໍ່ຄໍາຫລັກ). [2]
ການປັບສຽງທີ່ຈິງແລ້ວ 🎚️
ການແກ້ໄຂນ້ອຍໆບາງອັນເຮັດໃຫ້ຜູ້ຊ່ວຍຂອງເຈົ້າຮູ້ສຶກສະຫຼາດຂຶ້ນ 10×:
-
ໄລຍະຫ່າງໄມໂຄຣໂຟນ: 30–60 ຊມ ແມ່ນຈຸດທີ່ດີທີ່ສຸດສຳລັບໄມໂຄຣໂຟນ USB ຫຼາຍຊະນິດ.
-
ລະດັບ: ຫຼີກລ້ຽງການບີບອັດໃສ່ຂໍ້ມູນ ແລະຮັກສາການຫຼິ້ນໃຫ້ດີ; ແກ້ໄຂເສັ້ນທາງກ່ອນທີ່ຈະ chasing ghosts ລະຫັດ. ໃນ Raspberry Pi OS, ທ່ານສາມາດຈັດການອຸປະກອນຜົນຜະລິດ ແລະລະດັບຜ່ານເຄື່ອງມືລະບົບ ຫຼື
raspi-config. [1] -
ສຽງໃນຫ້ອງ: ຝາແຂງເຮັດໃຫ້ເກີດສຽງສະທ້ອນ; ຜ້າປູທີ່ອ່ອນໆພາຍໃຕ້ໄມຊ່ວຍ.
-
ຂອບເຂດຄຳສັບທີ່ເຕືອນ: ອ່ອນໄຫວເກີນໄປ → ຕົວກະຕຸ້ນ ghost; ເຂັ້ມງວດເກີນໄປ → ເຈົ້າຈະຮ້ອງໃສ່ plastic. Porcupine ຊ່ວຍໃຫ້ທ່ານສາມາດປັບແຕ່ງຄວາມອ່ອນໄຫວຕໍ່ຄຳສຳຄັນໄດ້. [2]
-
Thermals: ການຖອດຂໍ້ຄວາມຍາວໆໃນ Pi 5 ໄດ້ຮັບຜົນປະໂຫຍດຈາກເຄື່ອງເຮັດຄວາມເຢັນທີ່ເປັນທາງການເພື່ອປະສິດທິພາບທີ່ຍືນຍົງ. [1]
Going From Toy To Appliance: ບໍລິການ, Autostart, Healthchecks 🧯
ມະນຸດລືມແລ່ນສະຄຣິບ. ຄອມພິວເຕີລືມງາມ. ຫັນວົງຂອງທ່ານເຂົ້າໄປໃນການບໍລິການທີ່ມີການຄຸ້ມຄອງ:
-
ສ້າງຫນ່ວຍງານລະບົບ:
[Unit] Description=DIY Voice Assistant After=network.target sound.target [ການບໍລິການ] User=pi WorkingDirectory=/home/pi/assistant ExecStart=/usr/bin/python3 /home/pi/assistant/assistant.py Restart=always RestartSec=3 [Install] WantedByer=
-
ເປີດໃຊ້ມັນ:
sudo cp assistant.service /etc/systemd/system/ sudo systemctl daemon-reload sudo systemctl ເປີດໃຊ້ງານ --now assistant.service
-
ຫາງຂອງບັນທຶກ:
journalctl -u ຜູ້ຊ່ວຍ -f
ດຽວນີ້ມັນເລີ່ມເປີດເຄື່ອງ, ຣີສະຕາດເມື່ອເກີດການຂັດຂ້ອງ, ແລະໂດຍທົ່ວໄປແລ້ວເຮັດຕົວຄືກັບເຄື່ອງໃຊ້. ເບື່ອໜ້ອຍໜຶ່ງ, ດີກວ່າຫຼາຍ.
ລະບົບທັກສະ: ເຮັດໃຫ້ມັນເປັນປະໂຫຍດແທ້ໆຢູ່ເຮືອນ🏠✨
ເມື່ອສຽງເຂົ້າແລະສຽງອອກແມ່ນແຂງ, ເພີ່ມການປະຕິບັດ:
-
Intent router: ເສັ້ນທາງຄໍາຫລັກທີ່ງ່າຍດາຍສໍາລັບວຽກງານທົ່ວໄປ.
-
ເຮືອນອັດສະລິຍະ: ເຜີຍແຜ່ເຫດການໄປຍັງ MQTT ຫຼືໂທຫາຈຸດສິ້ນສຸດ HTTP ຂອງຜູ້ຊ່ວຍເຮືອນ.
-
Plugins: ຟັງຊັນ Python ດ່ວນເຊັ່ນ
set_timer,what_is_the_time,play_radio,run_scene.
ເຖິງແມ່ນວ່າມີ LLM ຟັງຢູ່ໃນວົງຈອນ, ເສັ້ນທາງຄໍາສັ່ງທ້ອງຖິ່ນທີ່ຊັດເຈນທໍາອິດສໍາລັບຄວາມໄວແລະຄວາມຫນ້າເຊື່ອຖື.
Local Only vs Cloud Assist: Trade-offs ເຈົ້າຈະຮູ້ສຶກ 🌓
ສະເພາະທ້ອງຖິ່ນເທົ່ານັ້ນ
ຂໍ້ດີ: ເປັນສ່ວນຕົວ, ອອບລາຍ, ຄ່າໃຊ້ຈ່າຍທີ່ຄາດເດົາໄດ້.
ຂໍ້ເສຍ: ຮຸ່ນທີ່ໜັກກວ່າອາດຈະຊ້າໃນກະດານຂະໜາດນ້ອຍ. ການຝຶກອົບຮົມຫຼາຍພາສາຂອງ Whisper ຊ່ວຍໃນຄວາມທົນທານຖ້າທ່ານເກັບມັນໄວ້ໃນອຸປະກອນ ຫຼື ຢູ່ໃນເຊີບເວີໃກ້ຄຽງ. [3]
Cloud assist
Pros: ການໃຫ້ເຫດຜົນທີ່ມີປະສິດທິພາບ, ປ່ອງຢ້ຽມບໍລິບົດທີ່ໃຫຍ່ກວ່າ.
ຂໍ້ເສຍ: ຂໍ້ມູນອອກຈາກອຸປະກອນ, ການຂຶ້ນກັບເຄືອຂ່າຍ, ຄ່າໃຊ້ຈ່າຍທີ່ປ່ຽນແປງໄດ້.
ປະສົມມັກຈະຊະນະ: wake word + ASR local → ໂທຫາ API ສໍາລັບເຫດຜົນ → TTS local. [2][3][5]
ການແກ້ໄຂບັນຫາ: Gremlins ແປກ & ການແກ້ໄຂດ່ວນ 👾
-
Wake word false triggers: ຄວາມອ່ອນໄຫວຕ່ໍາ ຫຼືລອງໄມອື່ນ. [2]
-
ASR lag: ໃຊ້ຕົວແບບ Whisper ຂະໜາດນ້ອຍກວ່າ ຫຼືສ້າງ
whisper.cppດ້ວຍທຸງການປ່ອຍ (-j --config Release). [4] -
Choppy TTS: ກ່ອນສ້າງປະໂຫຍກທົ່ວໄປ; ຢືນຢັນອຸປະກອນສຽງ ແລະອັດຕາຕົວຢ່າງຂອງທ່ານ.
-
ບໍ່ພົບໄມ: ກວດເບິ່ງ
arecord -lແລະ mixers. -
ການຄວບຄຸມຄວາມຮ້ອນ: ໃຊ້ Active Cooler ຢ່າງເປັນທາງການໃນ Pi 5 ເພື່ອປະສິດທິພາບທີ່ຍືນຍົງ. [1]
ບັນທຶກຄວາມປອດໄພ & ຄວາມເປັນສ່ວນຕົວ ເຈົ້າຄວນອ່ານແທ້ໆ 🔒
-
ອັບເດດ Pi ຂອງທ່ານດ້ວຍ APT.
-
ຖ້າທ່ານໃຊ້ cloud API ໃດກໍ່ຕາມ, ບັນທຶກສິ່ງທີ່ທ່ານສົ່ງແລະພິຈາລະນາ redacting bits ສ່ວນຕົວຢູ່ໃນທ້ອງຖິ່ນທໍາອິດ.
-
ດໍາເນີນການບໍລິການທີ່ມີສິດທິພິເສດຫນ້ອຍ; ຫຼີກເວັ້ນ
ການ sudoໃນ ExecStart ເວັ້ນເສຍແຕ່ຕ້ອງການ. -
ໃຫ້ ໂໝດທ້ອງຖິ່ນເທົ່ານັ້ນ ສຳລັບແຂກ ຫຼືຊົ່ວໂມງທີ່ງຽບໆ.
ສ້າງຕົວແປ: ປະສົມ ແລະຈັບຄູ່ຄືກັບແຊນວິດ 🥪
-
Ultra-local: Porcupine + whisper.cpp + Piper + ກົດລະບຽບງ່າຍໆ. ເອກະຊົນແລະທົນທານ. [2][4][5]
-
ການຊ່ວຍເຫຼືອຄລາວໄວ: Porcupine + (ສຽງກະຊິບທ້ອງຖິ່ນທີ່ນ້ອຍກວ່າ ຫຼື ຟັງ ASR) + TTS ທ້ອງຖິ່ນ + ຟັງ LLM.
-
Home automation central: ເພີ່ມ Node-RED ຫຼື Home Assistant flows ສຳລັບການເຮັດປະຈຳ, ສາກ ແລະເຊັນເຊີ.
ຕົວຢ່າງທັກສະ: ເປີດໄຟຜ່ານ MQTT 💡
ນໍາເຂົ້າ 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") statelower = "mqtt.Client() client.connect(MQTT_HOST, 1883, 60"). ifstarter). "OFF" client.publish(TOPIC, payload, qo=1, retain=False) client.disconnect() # ຖ້າ "ເປີດໄຟ" ໃນຂໍ້ຄວາມ: set_light("on")
ເພີ່ມສາຍສຽງເຊັ່ນ: “ເປີດໂຄມໄຟຫ້ອງຮັບແຂກ” ແລະເຈົ້າຈະຮູ້ສຶກຄືກັບຕົວຊ່ວຍສ້າງ.
ເປັນຫຍັງ stack ນີ້ເຮັດວຽກໃນການປະຕິບັດ🧪
-
Porcupine ແມ່ນມີປະສິດທິພາບແລະຖືກຕ້ອງໃນການກວດສອບການຕື່ນຕົວໃນກະດານຂະຫນາດນ້ອຍ, ເຊິ່ງເຮັດໃຫ້ສາມາດຟັງໄດ້ຕະຫຼອດເວລາ. [2]
-
ການຝຶກອົບຮົມຫຼາຍພາສາຂອງ Whisper ເຮັດໃຫ້ມັນເຂັ້ມແຂງຕໍ່ກັບສະພາບແວດລ້ອມທີ່ຫຼາກຫຼາຍ ແລະສຳນຽງ. [3]
-
whisper.cppຮັກສາພະລັງງານນັ້ນໃຫ້ສາມາດໃຊ້ໄດ້ໃນອຸປະກອນທີ່ໃຊ້ CPU ເທົ່ານັ້ນເຊັ່ນ Pi. [4] -
Piper ຮັກສາການຕອບສະ ໜອງ ໄດ້ງ່າຍໂດຍບໍ່ມີການສົ່ງສຽງໄປຫາຄລາວ TTS. [5]
ຍາວເກີນໄປ, ບໍ່ໄດ້ອ່ານມັນ
ສ້າງ ຜູ້ຊ່ວຍ AI ແບບໂມດູນ ແລະ ສ່ວນຕົວດ້ວຍ Raspberry Pi ໂດຍການລວມ Porcupine ສຳລັບ wake word, Whisper (ຜ່ານທາງ whisper.cpp) ສຳລັບ ASR, ຕົວເລືອກ brain ສຳລັບການຕອບກັບຂອງທ່ານ, ແລະ Piper ສຳລັບ TTS ທ້ອງຖິ່ນ. ລວມມັນເປັນການບໍລິການ systemd, ປັບສຽງ, ແລະ ເຊື່ອມຕໍ່ໃນການກະທຳ MQTT ຫຼື HTTP. ມັນລາຄາຖືກກວ່າທີ່ທ່ານຄິດ, ແລະ ໜ້າຍິນດີທີ່ຈະໃຊ້ຊີວິດຮ່ວມກັບມັນ. [1][2][3][4][5]
ເອກະສານອ້າງອີງ
-
ຊອບແວ ແລະ ເຄື່ອງເຮັດຄວາມເຢັນ Raspberry Pi – ຂໍ້ມູນຜະລິດຕະພັນ Raspberry Pi Imager (ດາວໂຫຼດ ແລະ ນຳໃຊ້) ແລະ Pi 5 Active Cooler
-
Raspberry Pi Imager: ອ່ານເພີ່ມເຕີມ
-
Active Cooler (Pi 5): ອ່ານເພີ່ມເຕີມ
-
-
Porcupine Wake Word – SDK ແລະ ການເລີ່ມຕົ້ນໄວ (ຄຳສຳຄັນ, ຄວາມອ່ອນໄຫວ, ການອະນຸມານທ້ອງຖິ່ນ)
-
Whisper (ຮຸ່ນ ASR) – ASR ຫຼາຍພາສາ ແລະ ແຂງແຮງ ໄດ້ຮັບການຝຶກອົບຮົມໃນເວລາປະມານ 680k ຊົ່ວໂມງ
-
Radford et al., ການຮັບຮູ້ສຽງເວົ້າທີ່ເຂັ້ມແຂງໂດຍຜ່ານການຊີ້ນໍາທີ່ອ່ອນແອຂະຫນາດໃຫຍ່ (ສຽງກະຊິບ): ອ່ານເພີ່ມເຕີມ
-
-
whisper.cpp – ການອະນຸມານ Whisper ທີ່ເປັນມິດກັບ CPU ດ້ວຍ CLI ແລະຂັ້ນຕອນການສ້າງ
-
Piper TTS – TTS ລະບົບປະສາດທ້ອງຖິ່ນທີ່ໄວ ແລະ ມີຫຼາຍສຽງ/ພາສາ