 mae'r ddweud o'r cyfleol yn dwylo gweithio i ddechreuu cyflawn. Felly, adonai'n ddweud y gweithio sydd wedi'u gweithio'n cyfleol newydd. Rydyn ni'n bwysig i gyd ymddangos i'r ddweudio. Dyma'n gweithio i'r ddaeth o'r cyfleol, i'w ddweud y ddweud, a ddweud â'r ddweud o'r ddweudio ddechrau, ... radically changed my life... ...when he was talking to the mirror, he had to ask Alexa to act on his behalf. If you remember, Alexa asked the bank to show me my current account. I don't know that." She doesn't like me... ..but you always have to ask Alexa to ask something else to do something for you. weyda, yna, rwy'n hoffio ar gael y cwunedd o'r cwunedd ar ei fod, gyda'r cwunedd o'n rhoi am arlawn i'r bobl. A amlyga'n ddysgu'r lexaom, a'r reliant o'r fung o bobl ar gyfer gyda lexaom ystafell yma ar y cyd-nod mewn. Rydw i'n gofyn o fydda wedi bod yn bod i'n hytrwm am yr amliadau a amlu a rydw i'n gofyn. I can give a brief demo of what we have working so far, it's not complete yet but it can do a few things, so just run it on my laptop, I'll have to hold the microphone up to it so that you can hear it. Lets give this a try. Hey office. What's the wifi password? Which wifi network? TW guest? The TW guest password is biginharksauceditor sign. ond fel dyma eich bod yn dweud hynny, gan iddynt sydd gennym yn ysgrifft ac os ydych i eich bod yn imeddenig o'r diolch, ymrheu hwn yn ei wneud. Byddwch ddeicolwyr gyffredinol, byddwch gy hynny. Byddwch gyffredinol, byddwch gyffredinol. Cyn oedd yn gweithio byddwch gyffredinol? Ysgrifffa Ewlan. Ydw i'n cael y cwmdeithio y cyntaf, gallwch arddangos ni'n gweld? Roedd hynny. Roedd y gweld. Mae'n meddwl, mae'n meddwl unrhyw o'r cyfrifydliadau sy'n gyntaf, sy'n gyflym yn y cyfrifydliadau. Gydag, mae'n gweithio i'r fath, a'r fath i'r bwysig o'r hwnnw. Ydw i'n meddwl... Mae'n meddwl sy'n gofio'r cyfrifydliadau yw'r gweithio'i gwaith. So, I have this nice graph for you all to look at. First of all, you ask it to do something. So, in this case, I've got oy, so it needs to detect that someone, it needs to detect that someone's talk to it. So, in the case of Alexa, it listens for the word Alexa. In the case of Ha office, it's listening for Ha office. And once the hot word has oedd yn ddweud cyfreidol, ond yw hyn oedd ydych chi gweithio'r hyffordeb. Oeddyn nhw'n ddigwyd nhw'neddai'r hyffordd ar dda. Dyma yw'r rhywbeth cyffordd hwn a wnaeth eich ydych chi'n dweud, mae'r haffordd hyn yn rhoi'r fawr yn y fawr oedd ychydig. Mae'r eilun yna oedd yn cyflog. Dyma eich zar gyfrifio'r hyffordd hyffordd yw hyffordd yw'r hyffordd hyffordd. ond o'r sgwp yn dweud rhai. Ond o'r sgwp yn dda, mae arall yn ddiddordeb. Rhaid i ddweud y ddweud, eich ddweud i'r proses. Roedd yn ddweud yn ddiddordeb mae'n ddweud yn ddweud, mae'n ddweud yn ddweud. A ddweud ond o'r sgwp yn ddweud. Rwy'n ddweud o'r teulu, mae'n gweithio'r awdurddau fel hwych. a hwn o dda'i amddangos i'r cwrwm yn ôl. A'i dod y gallwn y cydnod yn ffordd o'r pwysig mae'r byw yn decharl. A'r idea sy'n ei wneud bod ni'n bywau ymddangos i'r hofflau ond rhaid i'r cerch na'r hoffliadbwy ar gyfer y llaw. Mae'r hoffliad i'r hoffliad ar gyfer y gallwn ond. Mae'n sylfa, mae'n siarad eich bobl ddyn nhw i'r bobl. Ac mae'r hoffliad ar ddechrau a'r hoffliad ar gyfer y cobl mewn cyfans, called Truly Hands Free. This one is a closed source commercial product, so if you want to use that one you will have to pay for it. The other one that we're actually using for Hay Office is snowboy.kit.ai. It's semi closed source, so there are some parts of the snowboy source code that they keep private to themselves. The rest is available on GitHub. And as long as you're using it for non-commercial use, then more than happy for you to just use it for free. And then following on from the hot word detection, you need some kind of speech recognition. Again, you can go offline or online here. The offline tool called Sphinx will do speech recognition offline. However, we found that the online speech recognisers are vastly superior. And here are four of the most popular ones currently out there. IBM, Watson, Google Cloud Speech, Microsoft Bing Speech. And Amazon do have a speech recogniser, but you can only use it if you're also using Lex at the same time. You can't use it by itself as an independent product. Since we're strange enough actually using Lex, that was cool for us. So this is where we come on to intent analysis. Three of the intent analysers have actually made it onto the radar, all of which are in assess. So it's something you should be thinking about, but not necessarily going full steam ahead and trying in a product quite yet. This is our own internal project for funds. That's a good place to start to try and assess these tools. So the ones worth mentioning are... So api.ai is gaining quite a bit of traction. Fairly recent got bought by Google. NuanceMix, which is the second one on the radar. That one is made by the people, if you remember, like the Dragon speech recogniser from way back when. That's the same company popping up again, making intent analysers now. Wit.ai, which is probably one of the first ones to appear on the net, has now been bought by Facebook. Microsoft Lewis is one that I have used on a previous project somewhere between the mirror and Hay Office. And I found it to be quite good, but you kind of get tied to the Microsoft tech stack if you use that one. IBM Watson conversation I've seen pop up, although I've not actually used it myself. And then Amazon Lex at the end there. So in this current edition of the radar, when they talk about the conversational UI theme, they give it an honourable mention, but it's not made it onto the radar as a blip. The main reason for that is when they were compiling the radar, Lex was still in private preview. It is now no longer in private preview, so if you would like to use it, you don't have to wait for three weeks like we did to get an invite to the preview. You can just use it. And we then move on from the speech record, from the intent analysis. You then need to actually process the actions. So for this, you'll need some kind of conversationally aware API. This is true both for the Hay Office where we're doing everything ourselves through something like Alexa or Google Home. So you'll need to have some APIs in which you understand that people are having a conversation with your device. There will be some state that needs to be maintained and move back and forth. Some of the more complex conversations may actually transition from one intent to another. If you want to learn more about how intents work, then you can come and talk to me or Cole afterwards. I'll be more than happy to discuss that with you. So APIs for a conversation interface are quite different to what you would have for a regular mobile app or a single-page application on the web. So having some layer in between to make that translation for you is something that we found to be a useful thing to do. It has been mentioned on our radar before, but under the name of back-end for front-end, where it essentially says you should have an API layer between your actual core processing and all your different front-end styles to make sure that each front-end can have its own tailored API just for it. So when it comes to the action processing in Hay Office, again, because this is an internal project and we want to play around, we've decided to use a serverless architecture going quite heavily into the Amazon fanboy space here. So we're using the Amazon infrastructure, API gateway, lambdas, Cognito, DynamoDB, and a few others which I can never remember the name of, to hang all the actions together and get the processing to work. And this forms our conversationally aware API which I mentioned on the previous slide. And then finally, once the action has been processed, the computer then needs to speak back to me. So Hay Office needs a way to communicate it back to me and since I communicate to it through voice, it's nice for it to communicate back to me through voice. There are quite a few services and APIs that exist to do speech synthesis. If you have a Mac, there is one built into your Mac straight on the command line and it sounds something like this. Hello, I am speaking. Which sounds pretty shit. And a lot of the speech synthesizers out there actually don't sound that much better. However, Amazon have kindly released Amazon Poly, which is the same speech synthesizer that they use for Alexa, but they don't give you the Alexa voice. They have a series of other voices, which is what we're using in Hay Office, which is why it actually had a fairly decent voice. And I've not yet found anything that's available for use which beats Poly. However, Google DeepMind Laboratory have created something called WaveNet. You can find a demo of it on the internet. It sounds really awesome and they're using some kind of neural net deep learning thing over speech patterns to actually give a very natural sound to the voice complete with lip smacks and breathing and everything. But it's not available for use yet. Google haven't announced if they're actually going to plan to release it as a product either. In the future, with Hay Office, we plan to not only have it hear us, but also see us. So there'll be some form of face recognition so that we can have some control over some of the intent, so we can make sure that it's actually a thought worker asking for this, or if we need to know who you are for some reason. Then having it know who you are is good. Something else that we can do is object identification. Again, we can have fun with this stuff and have it count how many beers are in our fridge and whatnot so that we can then tie that into our beer ordering skill and make sure we don't have too many or too few beers at any one time. There's various image recognition APIs image processing APIs available. Amazon Recognition is also on the radar, so that one will get a special mention, but there's two others here which do a similar thing. We're just starting to look into this and we'll see how it goes on the next radar. Finally, the last thing I want to mention about our building of Hay Office is that the demo that I ran on my computer when we first started writing the code to tie all the Hay Office stuff together, we started writing in Node.js. That was going well, we could call all the service, we could get all the sounds. However, with Amazon Lex, there is one limitation and that limitation is that you can't stream the sound to Lex. You have to record all the sound on and offline and then send it to Lex in one go. The question is, how do you know when the person has stopped speaking? It was in researching libraries for this particular problem. That is where we hit a brick wall with Node.js, that Node.js didn't really have any decent libraries for what they call voice activity detection. However, Python has a few. We immediately stopped with Node.js, we rewrote the whole thing in Python and you just heard the demo. We have that now in Python and so far we are quite happy with Python and we are going to carry on with it. Python 3 is on the radar and Python itself is also a theme of this radar, pervasive Python. We are starting to see Python pop up quite a lot especially in machine learning, natural language processing and all this kind of cool tech that is coming in at the moment. Python seems to be front row centre and all those kind of things so Python is definitely something worth looking at. On that point, I shall move over to Tal who is going to take us even deeper down this rabbit hole.