Jsme tu pro vás PO - PÁ 9:00 - 17:00 info@systeum.cz +420 608 408 716

Jsme tu pro vás PO - PÁ 9:00 - 17:00 obchod@systeum.cz +420 608 408 716

„Bobe, piš…” 2: praktické kroky, jak si naprogramovat virtuálního asistenta

Takový virtuální asistent nám může ulehčit životy a zpříjemnit používání nejen našeho počítače. Proč je dobré se nespolehnout na Google nebo Siri, ale vytvořit si svého vlastního parťáka jsme popsali již v prvním díle. Stejně tak tipy, co všechno svého Boba můžete naučit. 

Tématu se věnujeme společně se Standou Keppertem, který pro vás připravil praktický návod na to, jak si naprogramovat svého budoucího asistenta v takové základní verzi. Říkejme jí pracovně například verze „Einstein to není, ale je hodnej”. V následujících odstavcích vás čeká základ, od kterého se můžete odpíchnout a asistenta pak už dál rozšiřovat podle vlastních potřeb. 

V prvním díle jsme psali, že Standa komunikuje se svým Bobem v češtině. Jelikož to ale ještě nemá dopilované a taky je to jeho vlastní know-how, které si poctivě vydřel, tak se tentokrát podělíme zatím o to, jak vše bude vypadat pro komunikaci v angličtině. However we believe it’s not a problem. :)

 

Zajímá vás oblast IT a hledáte pracovní pozice a pracovní příležitosti v IT oboru? Ať už jste programátor, developer, tester, analytik nebo software architekt, ozvěte se nám a my vám z naší nabídky IT práce najdeme IT projekt na míru. Podívejte se, jaká volná pracovní místa v IT oblasti momentálně nabízímePomůžeme vám najít nové pracovní výzvy a příležitosti. Těšíme se na spolupráci s vámi!

 

Pojďme začít

Na začátek je potřeba se rozhodnout, v jakém vývojovém prostředi budete Boba programovat. Můžete zvolit, stejně jako Standa, IntelliJ IDEA Community Edition, které je zdarma. Dále bude potřeba si stáhnout a nainstalovat Python pro Windows verzi 3.6 a vyšší. Do Pythonu bude potřeba ještě pár věcí doinstalovat:

pip install SpeechRecognition

pip install gtts

pip install playsound

  • budete potřebovat ještě PyAudio.

Všechno, co potřebujeme, máme připravené, pojďme si tedy vytvořit nový projekt.

Následně si vytvořte soubor, např. MujAsistent.py, ve kterém budete pracovat, a naimportujte následující balíčky.

Jedna z nejdůležitějších věcí, aby nám náš Bob rozuměl, je převod hlasu na text. S tím nám pomůže funkce listen().

Hurá. Bob už slyší! A jelikož chceme, aby nám i odpovídal, použijeme funkci respond().

Uslyší nás, bude nám umět odpovědět, tak už si toho Boba pojďme vytvořit. Uděláme to v následující třídě bob_assitent(). Naučíme ho základní věci jako je kontrola pomocí IF a pár sad instrukcí uvnitř IF.
Zde si můžete nadefinovat plno věcí, které by váš asistent měl umět. Fantazii se meze nekladou. :)

Abychom vytvořené funkce mohli vyvolat, poslouží nám kód níže.

Na začátku jsme slibovali praktické tipy pro vznik základní verze Boba, jestli si vzpomínáte na pracovní název: „Einstein to není, ale je hodnej”. Tak to je ON! Našeho srdce šampion!

No ne tak docela, pojďme mu dodat trochu víc inteligence a naučit ho ještě něco. :)

Chytřejší Bob

Vytvoříme nový python.file a naimportujeme několik nových balíčků. 

Na chvilku se zastavíme u balíčku WolframAlpha. Díky němu můžete vyhledávat pouze pomocí hlasu, zatím existuje jen v angličtině, ale určitě doporučujeme ho využít, než se objeví na trhu česká verze.

Abyste mohli WolframAlpha využívat, je potřeba se zaregistrovat a vložit klíč tak, jak vidíte níže.

Mrkněte, jak vypadá Bob, který už umí základně komunikovat, díky funkcím času dokáže rozeznat, jak má pozdravit, včetně ohlášení, že mluví.

Dále se budeme věnovat třídě commander(), hlavní třídě, která naslouchá a převádí mluvené slovo na text.

Povely, které budete chtít Bobovi zadávat, je potřeba vždy předem nadefinovat. K tomu vám můžou posloužit následující příklady:

  • práce s googlem
  • práce s mailem
  • a další možnosti, co všechno ho můžete naučit.

Můžete si naprogramovat i to, aby vás asistent přihlásil do mailu. Jen pozor, pokud máte nějaké super silné heslo, čtyřikrát si zkontrolujte, že jste ho správně zadali, jinak vás čeká „login failed” (Standa zná z vlastní zkušenosti :)). Také doporučujeme nastavit pár standardních hlášek, na které bude asistent nějakým způsobem reagovat.

Asistent za vás také může ovládat například programy, které denně používáte: pouštění hudby apod. V našem případě je přehrávač nastavený defaultně, takže není třeba ho definovat.

Na obrázku níže můžete taky vidět ukázku vyžití speciálních API WolframAlpha a Wikipedia. Zeptejte se Boba na cokoliv a on vám na to odpoví (tedy za předpokladu, že odpověď najde).

Bob (anebo třeba Jessica, pojmenujte si svého asistenta dle libosti) skýtá neskutečné množství možností a variant, jak s ním pracovat. Nebojte se na těchto základech stavět a dál ho vylepšovat podle svých představ a fantazií. Třeba také až do podoby hologramu s tváří Jessicy Alby, jako si do budoucna předsevzal Standa. :)

 

🟡 Hledáte zajímavý projekt? Mrkněte, jak to u nás chodí a jaké kolegy aktuálně hledáme.

🟡 Máte kolegu nebo kamaráda, který se poohlíží po novém projektu? Zapojte se do našeho referral programu Doporuč a získejte finanční odměnu za doporučení.

🟡 Chtěli byste začít pracovat v IT? Stáhněte si náš ebook ZAČNĚTE PRACOVAT V IT: aneb od prvních krůčků po vysněnou práci, ve kterém vás provedeme krůček po krůčku informacemi, kurzy i praxí, které jsou tolik potřebné nejen pro ty, kteří chtějí změnit obor, ale i pro ty, kteří se chtějí pracovně posunout a dále se vzdělávat.

🟡 Víte, jak si co nejjednodušeji a nejefektivněji připravit půdu pro nové pracovní začátky? Mrkněte na náš ebook: Připravte se na nová pracovní dobrodružství - Průvodce k úspěšné změně zaměstnání. Dream job je za dveřmi, stačí jen vzít správně za kliku.

Nebo sdílejte tento článek, který třeba poslouží i vašim známým.

Chcete dostávat naše články pravidelně do schránky? Nechte nám tady svůj email a my si rádi zahrajeme na poštovní sovy.

Mohlo by vás také zajímat

Jak si vyvinout vlastní mobilní hru...

čtení na 4 minuty 29.6.2021

Jak naprogramovat první projekt v J...

čtení na 10+ minut 1.12.2021

Jak se o nás mluví?
Zeptejte se našich klientů…

Systeum
Systeum

„Systeum je jedním z největších dodavatelů našich testerských kapacit. Můžu říct, že kvalita uchazečů je vysoko nad průměrem. Také oceňuji velkou ochotu vyjít vstříc všem našim požadavkům.“

Head of test execution

„Systeum je dlouhodobý partner, u kterého máme jistotu, že kandidáti jsou kvalitní a prověření. Od roku 2015 máme díky nim fungující kvalitní seniorní týmy C++ embedded vývojářů a auto testerů.“

Head of Payment Application

„Systeum, thank you for your help to find the right fit to my team! I can recommend cooperation with you to everybody. Very professional, smooth and friendly.“

IT CIM Inventory Management Development

Příklady dlouhodobé spolupráce

Porsche Moneta Raiffeisenbank Generali Komerční banka Monster