Stemmens år – Kapittel 2: La oss snakke

Apr 28, 2023 | Smarthus


I år er hjemmeassistentens år for stemmen. Det er vårt mål for 2023 å la brukere styre Home Assistant på sitt eget språk. I dag presenterer vi kapittel 2, vår andre milepæl i å bygge mot dette målet.

I kapittel 1 fokuserte vi på intensjoner – hva brukeren ønsker å gjøre. I dag har Home Assistant-fellesskapet oversatt vanlige smarthjemkommandoer og -svar til 45 språk, og nærmer seg de 62 språkene som Home Assistant støtter.

For kapittel 2 har vi utvidet utover tekst til å inkludere lyd; spesifikt, å gjøre om lyd (tale) til tekst, og tekst tilbake til tale. Med denne funksjonaliteten er Home Assistants Assist-funksjon nå i stand til å gi et fullstendig stemmegrensesnitt for brukere å samhandle med.

En stemmeassistent trenger også maskinvare, så i dag lanserer vi ESPHome-støtte for Assist og; på toppen av det: vi lanserer verdens mest private stemmeassistent. Fortsett å lese for å se hva det innebærer.

For å se videopresentasjonen av dette blogginnlegget, inkludert live-demoer, sjekk opptaket av livestrømmen vår.

Å komponere stemmeassistenter

Den nye Assist Pipeline-integrasjonen lar deg konfigurere alle komponentene som utgjør en stemmeassistent på ett enkelt sted.

For talekommandoer starter pipelines med lyd. Et tale-til-tekst-system bestemmer ordene brukeren snakker, som deretter videresendes til en samtaleagent. Hensikten trekkes ut fra teksten av agenten og utføres av Home Assistant. På dette tidspunktet vil “slå på lyset” føre til at lyset ditt slår seg på 💡. Den siste delen av pipelinen er tekst-til-tale, hvor agentens svar blir talt tilbake til deg. Dette kan være en enkel bekreftelse (“Slå på lys”) eller svaret på et spørsmål, for eksempel “Hvilke lys er på?”

Skjermbilde av den nye Assist-konfigurasjonen i Home Assistant.

Med den nye Voice Assistant-innstillingssiden kan brukere opprette flere assistenter, mikse og matche taletjenester. Vil du ha en amerikansk engelsk assistent som svarer med britisk aksent? Ikke noe problem. Hva med en annen assistent som lytter etter nederlandske, tyske eller franske talekommandoer? Eller kanskje du vil kaste ChatGPT i miksen. Lag så mange assistenter du vil, og bruk dem fra Assist-dialogen samt stemmeassistent-maskinvare for Home Assistant.

Å samhandle med mange forskjellige tjenester betyr at mange forskjellige ting kan gå galt. For å hjelpe brukere med å finne ut hva som gikk galt, har vi bygget omfattende feilsøkingsverktøy for taleassistenter i Home Assistant. Du kan alltid inspisere de siste 10 interaksjonene per stemmeassistent.

Skjermbilde av det nye Assist-feilsøkingsverktøyet.

Stemmeassistent drevet av Home Assistant Cloud

Home Assistant Cloud-abonnementet, foruten ende-til-ende kryptert ekstern tilkobling, inkluderer toppmoderne tale-til-tekst- og tekst-til-tale-tjenester. Dette lar stemmeassistenten din snakke 130+ språk (inkludert dialekter som peruansk spansk) og er ekstremt rask til å svare. Prøve:

Som abonnent kan du begynne å bruke stemmen direkte i Home Assistant. Du trenger ikke ekstra maskinvare eller programvare for å komme i gang.

I tillegg til høykvalitets tale-til-tekst og tekst-til-tale for taleassistentene dine, vil du også støtte utviklingen av selve Home Assistant.

Bli med i Home Assistant Cloud i dag

Den fullstendig lokale stemmeassistenten

Med Home Assistant kan du være garantert to ting: det vil være alternativer og ett av disse alternativene vil være lokalt. Med vår stemmeassistent er det ikke annerledes.

Piper: vår nye modell for lokal tekst-til-tale av høy kvalitet

For å gjøre tekst-til-tale-kjøring av høy kvalitet lokalt mulig, har vi måttet lage vårt eget tekst-til-tale-system som er optimalisert for å kjøre på en Raspberry Pi 4. Det heter Piper.

Piper-logo

Piper bruker moderne maskinlæringsalgoritmer for realistisk klingende tale, men kan fortsatt generere lyd raskt. På en Raspberry Pi 4 kan Piper generere 2 sekunder med lyd med kun 1 sekunds behandlingstid. Kraftigere prosessorer, som Intel Core i5, kan generere 17 sekunder med lyd på samme tid. Prøve:

For flere eksempler, se Piper-nettstedet

Et tillegg med Piper er nå tilgjengelig for Home Assistant med over 40 stemmer på 18 språk, inkludert: katalansk, dansk, tysk, engelsk, spansk, finsk, fransk, gresk, italiensk, kasakhisk, nepalesisk, nederlandsk, norsk, polsk, Brasiliansk portugisisk, ukrainsk, vietnamesisk og kinesisk. Voices for Piper er trent fra åpne lyddatasett, hvorav mange kommer fra gratis lydbøker lest av frivillige. Hvis du er interessert i å bidra med stemmen din, gi oss beskjed!

Lokal tale-til-tekst med OpenAI Whisper

Whisper er en åpen kildekode tale-til-tekst-modell laget av OpenAI som kjører lokalt. Siden utgivelsen i 2022 har Whisper blitt forbedret av åpen kildekode-fellesskapet til å kjøre på mindre kraftig maskinvare av prosjekter som whisper.cpp og faster-whisper. På mindre enn et år med fremgang er Whisper nå i stand til å tilby tale-til-tekst for dusinvis av språk på små servere og enkeltbordsdatamaskiner!

Et tillegg som bruker faster-whisper er nå tilgjengelig for Home Assistant. På en Raspberry Pi 4 kan talekommandoer ta rundt 7 sekunder å behandle med omtrent 200 MB RAM brukt. En Intel Core i5 CPU eller bedre er i stand til subsekunders responstider og kan kjøre større (og mer nøyaktige) versjoner av Whisper.

Wyoming: stemmeassistentlimet

Taleassistenter deler mange vanlige funksjoner, for eksempel tale-til-tekst, hensiktsgjenkjenning og tekst-til-tale. Vi opprettet Wyoming-protokollen for å gi et lite sett med standardmeldinger for å snakke med taleassistenttjenester, inkludert muligheten til å streame lyd.

Wyoming lar utviklere fokusere på kjernen av en taletjeneste uten å måtte forplikte seg til en spesifikk nettverksstabel som HTTP eller MQTT. Denne protokollen er kompatibel med den kommende versjonen 3.0 av Rhasspy, så begge prosjektene kan dele taletjenester.

Med Wyoming prøver vi å kickstarte et mer interoperabelt åpent stemmeøkosystem som gjør det enkelt å dele komponenter på tvers av prosjekter og plattformer. Utviklere og forskere som ønsker å eksperimentere med nye stemmeteknologier trenger bare å implementere et lite sett med meldinger for å integreres med andre taleassistentprosjekter.

Whisper og Piper-tilleggene nevnt ovenfor er integrert i Home Assistant via den nye Wyoming-integrasjonen. Wyoming-tjenester kan også kjøres på andre maskiner og fortsatt integreres i Home Assistant.

ESPHome-drevne stemmeassistenter

ESPHome er vår programvare for mikrokontrollere. I stedet for å programmere, definerer brukerne hvordan sensorene deres er koblet til i en YAML-fil. ESPHome vil lese denne filen og generere og installere programvare på mikrokontrolleren din for å gjøre disse dataene tilgjengelige i Home Assistant.

I dag lanserer vi støtte for å bygge taleassistenter ved å bruke ESPHome. Koble en mikrofon til ESPHome-enheten din, så kan du kontrollere smarthjemmet med stemmen din. Ta med en høyttaler og smarthjemmet vil snakke tilbake.

Vi har fokusert på M5STACK ATOM Echo for testing og utvikling. For $13 kommer den med en mikrofon og en høyttaler i en fin liten boks. Vi har laget en veiledning for å gjøre denne enheten om til en stemmefjernkontroll direkte fra nettleseren din!

Opplæring: lag en stemmefjernkontroll for $13 for Home Assistant.

ESPHome Voice Assistant-dokumentasjon.

Verdens mest private stemmeassistent

Hvis du skulle designe verdens mest private stemmeassistent, hvilke funksjoner ville den hatt? Til å begynne med bør den bare lytte når du er klar til å snakke, i stedet for hele tiden. Og når den svarer, bør du være den eneste som hører den. Dette høres merkelig kjent ut…🤔

En telefon! Nei, ikke det funksjonsløse rektangelet du har i lommen; en analog telefon. Disse flotte skapningene hersket en gang over jorden med snodde snorer og unike utseende som matcher stilen din. Analoge telefoner har et kjent grensesnitt som er vanskelig å slå: Ta opp telefonen for å lytte/snakke og legg den fra deg når du er ferdig.

Med Home Assistants nye Voice-over-IP-integrasjon kan du nå bruke en “old school”-telefon til å kontrollere smarthjemmet ditt!

Ved å konfigurere automatisk oppringing av røret, vil telefonen automatisk ringe Home Assistant når du tar den opp. Si talekommandoen eller spørsmålet ditt, og lytt etter svaret. Samtalen vil fortsette så lenge du vil: si flere kommandoer/spørsmål, eller bare legg på. Tilordne en unik stemmeassistent/pipeline til hver VoIP-adapter, som muliggjør dedikerte telefoner for spesifikke språk.

Vi har fokusert vår første innsats på å støtte Grandstream HT801 Voice-over-IP-boksen. Den fungerer med alle telefoner med RJ11-kontakt, og kobles direkte til Home Assistant. Det er ikke behov for en ekstra server.

Opplæring: lag din egen verdens mest private stemmeassistent

Gi stemmeassistenten din personlighet ved å bruke OpenAI-integrasjonen.

Noen lenker på denne siden er tilknyttede lenker og kjøp som bruker disse lenkene støtter Home Assistant-prosjektet.



Her er kilden til saken

Hack Enkel | Hackaday

Her på Hackaday elsker vi definitivt å feire de harde hackene: de vanvittige bragdene med omvendt konstruksjon, de fysikk-trossende fantasiene eller misbruket av banebrytende teknologi. Men i dag vil jeg gjerne heve et retorisk glass til hyllest av de enkle...

Hexed Home Assistant overvåker 3D-skrivere

Du kan være barnevakt for 3D-printeren 100 % av tiden, eller du kan krysse fingrene og håpe at alt fungerer. Noen overvåker skriverne sine ved hjelp av webkameraer, men [Simit] har en mer stilig metode for å holde oversikt over seks 3D-skrivere. Ideen er å...