Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Google Assistant, Not Your Ordinary Alexa


Published on

Hands-free is the future of Internet services due to the Artificial Intelligence (AI) discipline of natural language processing. Google Assistant, released in 2016, realizes the promise of voice as a more natural and frictionless way to interact with technology, bringing the hands-free future to present day. Although not the first product of its type on the market, Google Assistant outshines its competitors. During this talk, learn how to interact with Google Assistant and the steps required to teach this AI to become smarter. This talk explores the creation of Actions and the API.AI platform by peaking under the covers of an existing Action. Attendees will hear from a developer's point of view, the major differences in development and implementation between Google Assistant and its competitors. After this talk, attendees will be better prepared to build their own Actions and will truly understand why Google Assistant has the entire world at its fingertips.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Google Assistant, Not Your Ordinary Alexa

  1. 1. Google Assistant, Not Your Ordinary Alexa Kesha Williams @KeshaWillz Image courtesy of Google
  2. 2. @KeshaWillz Friends?
  3. 3. @KeshaWillz This Talk Creating Apps (Actions) Publishing Process Google Assistant vs Alexa Development & Running Costs Testing & Troubleshooting
  4. 4. @KeshaWillz About Me Kesha  Williams Software  Engineer 20+
  5. 5. @KeshaWillz Case Study
  6. 6. @KeshaWillz STEM Women - Demo
  7. 7. @KeshaWillz Action Actions let users get things done through a conversational interface.
  8. 8. @KeshaWillz Cool Actions
  9. 9. @KeshaWillz Action Architecture Image courtesy of Google Dialogflow (formerly API.AI)
  10. 10. @KeshaWillz Actions in Two Ways Dialogflow
  11. 11. @KeshaWillz Action Development Innovative Idea Design Persona & Conversation Build the Front-End via Dialogflow Build the Back-End via Google Cloud
  12. 12. @KeshaWillz Innovative Idea
  13. 13. @KeshaWillz Design the Persona STEMA Science Engineering Technology Math Assistant
  14. 14. @KeshaWillz Conversation Path Ok  Google,  let  me  talk  to  STEM  Women. Sure!  Here’s  STEM  Women. Hello,  my  name  is  Stema.    Let's  begin.    Tell   me  if  you'd  like  to  hear  about  an  amazing   woman  in  science,  technology,  engineering,   or  math. I’d  like  to  hear  about  a  woman  in  technology. Kesha  Williams  is  a  woman  in  technology.   She  is  a  software  engineer  at  Chick-­‐fil-­‐A   building  cloud  applications  and  leading   innovation  teams.
  15. 15. @KeshaWillz Build the Front-End
  16. 16. @KeshaWillz Google Cloud Platform
  17. 17. @KeshaWillzActions on Google
  18. 18. @KeshaWillz Project Details
  19. 19. @KeshaWillz Create Your Action
  20. 20. @KeshaWillz Authorize Dialogflow
  21. 21. @KeshaWillz Authorize Dialogflow
  22. 22. @KeshaWillzCreate Dialogflow Agent 2 3 4 5 1
  23. 23. @KeshaWillz Create Intent 1 2 3
  24. 24. @KeshaWillz get_rolemodel intent I’d  like  to  hear  about  a  woman  in  technology. Tell  me  about  a  woman  in  engineering. Give  me  someone  in  math. Science
  25. 25. @KeshaWillz Create Entities First
  26. 26. @KeshaWillz Entity Creation 1 2 3
  27. 27. @KeshaWillz Yellow Highlights
  28. 28. @KeshaWillz Create Action 1 2
  29. 29. @KeshaWillz Required Fields
  30. 30. @KeshaWillz Small Talk
  31. 31. @KeshaWillz Recommendations Test via Simulator Modify Default Welcome Intent Add a Quit Intent Add a Help Intent Add Small Talk
  32. 32. @KeshaWillz Build the Back-End
  33. 33. @KeshaWillz Action Architecture Image courtesy of Google Dialogflow (formerly API.AI)
  34. 34. @KeshaWillz End Goal
  35. 35. @KeshaWillz The Code exports.stemaHttp = function stemaHttp (req, res) { // Get the field and date from the request ….. var tech = ["Keysha Williams, is a software engineer and a Java instructor. As a young girl, she believed that computers would soon control the world, so she wanted to be the one to control the computers.", ….. if (req.body.result.parameters['field']) { field = req.body.result.parameters['field']; // generate a random number between 0 -> 2 var randomNum = Math.floor(Math.random() * 3); switch (field) { case 'science': woman = science[randomNum]; ….. res.setHeader('Content-Type', 'application/json'); res.send(JSON.stringify({ "speech": response, "displayText": response})); …..
  36. 36. @KeshaWillz Cloud Function Tutorial:­‐started/basic-­‐fulfillment-­‐conversation Setup local dev environment Create Cloud Platform Project Enable Billing Enable Cloud Functions API Install Cloud SDK and gcloud Deploy Function
  37. 37. @KeshaWillz Lessons Learned STEP: Install Cloud SDK and gcloud gcloud components update && You cannot perform this action because you do not have permission to modify the Google Cloud SDK installation directory [/google/google-cloud-sdk] sudo /google/google-cloud-sdk/bin/gcloud components update && Command Error Solution
  38. 38. @KeshaWillz Lessons Learned When I ran this command, it said all components were up to date! STEP: Install Cloud SDK and gcloud Command Error Solution gcloud components install beta It self-corrected. I was prompted to download when I attempted to deploy the cloud function.
  39. 39. @KeshaWillz Lessons Learned ./google-cloud-sdk/bin/gcloud beta functions deploy stemaHttp --stage-bucket --trigger-http --local-path=/Users/ksmith/git/stema STEP: Deploy Function
  40. 40. @KeshaWillz Lessons Learned STEP: Deploy Function Command Error Solution ./google-cloud-sdk/bin/gcloud beta functions deploy stemaHttp --stage-bucket --trigger-http --local-path=/Users/ksmith/git/stema (gcloud.beta.functions.deploy) argument --stage-bucket: invalid ValidateAndStandarizeBucketUriOrRaise value I was copying and pasting the command; special characters threw things off, when I hand typed it worked
  41. 41. @KeshaWillz Lessons Learned STEP: Deploy Function Command Error Solution ./google-cloud-sdk/bin/gcloud beta functions deploy stemaHttp --stage-bucket --trigger-http --local-path=/Users/ksmith/git/stema Uncompessed deployment is 18413947295B, bigger than maximum allowed size of 536870912B I moved the .js file to its own directory and deployed from there using –local-path
  42. 42. @KeshaWillz Lessons Learned STEP: Deploy Function Command Error Solution ./google-cloud-sdk/bin/gcloud beta functions deploy stemaHttp --stage-bucket --trigger-http --local-path=/Users/ksmith/git/stema (gcloud.beta.functions.deploy) OperationError: code=13, message=Failure in the execution environment I deployed it again, and it went away
  43. 43. @KeshaWillz Enable WebHook 1 2 3
  44. 44. @KeshaWillz Enable Fulfillment 1
  45. 45. @KeshaWillz Testing
  46. 46. @KeshaWillz Integrate with Actions On Google Setup Integration Enter Configuration Information Test Via Web Simulator Test on Real Device
  47. 47. @KeshaWillz Update App With Actions
  48. 48. @KeshaWillz Setup Integration
  49. 49. @KeshaWillz Setup Integration
  50. 50. @KeshaWillz Web Simulator Testing
  51. 51. @KeshaWillz Device Testing
  52. 52. @KeshaWillz Lessons Learned “Hey Google, talk to my test app”
  53. 53. @KeshaWillz Publishing
  54. 54. @KeshaWillzPublishing
  55. 55. @KeshaWillz Certification Results During our testing, we found that your app would sometimes leave the mic open for the user without any prompt. Make sure that your app always says something before leaving the mic open for the user, so that the user knows what they can say. Failed First Time! 1
  56. 56. @KeshaWillz Did You Know? Import Alexa skills into Dialogflow­‐feature-­‐alexa-­‐skills/
  57. 57. @KeshaWillz Costs $300.00 credit
  58. 58. @KeshaWillz Google Assistant vs Alexa
  59. 59. @KeshaWillz Google Assistant vs Alexa Google Assistant is different across devices, where Alexa is not.
  60. 60. @KeshaWillz Google Assistant vs Alexa Google needs an additional layer to handle the natural language.
  61. 61. @KeshaWillz Google Assistant vs Alexa Google Assistant can distinguish our voice from others.
  62. 62. @KeshaWillz Google Assistant vs Alexa Google Assistant has built in machine learning that allows the system to learn and grow.
  63. 63. @KeshaWillz Google Assistant vs Alexa Google Assistant users don't need to pre-enable Actions.
  64. 64. @KeshaWillz Google Assistant vs Alexa Dialogflow has a tool specific to creating intents, whereas Amazon requires you to load a raw intent schema.
  65. 65. @KeshaWillz Google Assistant vs Alexa It just looks so much cooler!
  66. 66. @KeshaWillz What’s Next For You Hackathon or Challenge “Actions on Google” Developer Community Google+
  67. 67. @KeshaWillz Stema 2.0 Store Women in a Database Include Photos of Women Add Self-Service Form
  68. 68. @KeshaWillz Stema 2.0 If you’re a woman in STEM and want to be included, let me know.
  69. 69. @KeshaWillz
  70. 70. @KeshaWillz Resources Slides Tutorial­‐started/basic-­‐fulfillment-­‐conversation Code STEM Women
  71. 71. @KeshaWillz @KeshaWillz­‐rock-­‐star-­‐kesha/ 470-­‐215-­‐6442