Introduction
The sections below provide a list of common best practices used when designing a voice experience for a custom skill. While you should plan to monitor and tune your voice interactions based on the ways that users interact with your skill, the tips in this document will improve the usability of your design out of the gate, before you have the benefit of user data.
Note that the recommendations in this document apply to the custom interaction model you create for a custom skill. If you are using the Smart Home Skill API, you do not need to worry about building the interaction model yourself. For more about the different types of skills you can create, see Understanding the Different Types of Skills.
- Getting Information from the User
- Make It Clear that the User Needs to Respond
- Don’t Assume Users Know What to Do
- Clearly Present the Options
- Keep It Brief
- Avoid Overwhelming Users with Too Many Choices
- Offer Help for Complex Skills
- Ask Only Necessary Questions
- Use Confirmation Selectively
- Obtain One Piece of Information at a Time
- Use the Amazon Alexa App to Enhance Discovery
- Presenting Information to the User
- Using Text-to-Speech Effectively
- Handling Dialogue Errors
- Related Topics
- Other Resources
Getting Information from the User
Make It Clear that the User Needs to Respond
Presenting the options alone does not sufficiently inform the user that they need to respond, so make sure you ask the user a question so they know that they are expected to say something.
User: Alexa, start Trivia Challenge.
| Do | Don’t |
|---|---|
| Trivia Challenge: Trivia Challenge. Here are your categories: 80’s Pop Songs, Potent Potables, or European History. Which one do you want? |
Trivia Challenge: Trivia Challenge. You can choose from the following categories: 80’s Pop Songs, Potent Potables, or European History. |
Don’t Assume Users Know What to Do
When users experience your capability for the first time, they may give only minimal information by simply asking Alexa to talk to your skill without providing any further detail. When this happens, you need to tell them what options they have for interacting with your experience.
User: Alexa, talk to Car Fu.
| Do | Don’t |
|---|---|
| Car Fu: Car Fu. You can ask to get a ride or request a fare estimate. Which will it be? User: Get a ride. Car Fu: Sending your request. A mobile alert will let you know when your car arrives. Thanks for using Car Fu. |
Car Fu: Opening Car Fu. User: (Here, it may not be obvious to users what they can do unless you give them some options) |
Clearly Present the Options
When prompting the user with a set of options, construct the language of your prompt so that it is clear to the user that it is an either/or question. Otherwise, the Alexa TTS service may render the prompt in a way that sounds like a yes/no question. It is important to listen to every prompt on the test device to verify that the TTS has elicited the expected responses.
User: Alexa, ask Food Taxi to order a burger for me.
| Do | Don’t |
|---|---|
| Food Taxi: | Food Taxi: |
| Which side would you like: french fries or a salad? | Would you like French fries or a salad? |
| User: Salad | User: Yes |
Keep It Brief
Speech is linear and time-based and users cannot skim spoken content like they can visual content. Users need to make quick decisions in response to questions they are asked because time is ticking. Therefore, prompts should be short and concise, while still being clear.
User: Alexa, ask Astrology Daily to give me my horoscope
| Do | Don’t |
|---|---|
| Astrology Daily: Horoscope for which sign? | Astrology Daily: There are 12 zodiac signs that I can give you a horoscope for, please tell which one you’d like. |
Avoid Overwhelming Users with Too Many Choices
When presenting users with a list of options to choose from, make sure choices are clearly stated, do not present more than three choices, and avoid repetitive wording.
User: Alexa, ask Dairy Shack to order me a milkshake.
| Do | Don’t |
|---|---|
| Dairy Shack: Which flavor would you like: Chocolate, Vanilla, or Strawberry? | Dairy Shack: What flavor do you want? For chocolate, say Chocolate. For vanilla, say Vanilla. Or for strawberry, say Strawberry. |
Offer Help for Complex Skills
When your Alexa capability does a lot of things (more than three), you should not try to fit every option into a single prompt. Instead, present the most important options first, along with help. If the user asks for help, you should list out all your capabilities. Remember to ask the user a question after presenting the options.
User: Alexa, start Score Keeper
| Do | Don't |
|---|---|
Score Keeper: Score Keeper. You can give a player points, ask for the score, or say help. What would you like? User: Help Score Keeper: Here are some things you can say: add John, You can also say, stop, if you're done. So, how can I help? |
Score Keeper:Score Keeper. You can give a player points, add a new player, ask for the score, User: What's the score? |
Note: to provide help for your skill, implement a handler for the built-in AMAZON.HelpIntent that returns the help text. The AMAZON.HelpIntent is invoked when the user requests help using common phrases such as “help,” “help me,” and so on.
Ask Only Necessary Questions
You should make smart assumptions when possible in order to avoid unnecessary questions. Asking non-essential questions adds friction to the user experience and makes your experience seem less thoughtful. Examples:
- If your skill only does one thing, do not ask the user if they want to do that thing.
- Make educated guesses when appropriate (without making it difficult to correct).
- Tailor prompt examples based on the user (e.g., user profile).
User: Alexa, start Joke Bank.
| Do | Don’t |
|---|---|
| Joke Bank: What’s black, white, and red all over? An embarrassed skunk. | Joke Bank: Would you like to hear a joke? User: Yes. |
Use Confirmation Selectively
Avoid dialogs that create too many confirmations, but confirm actions of high consequence, such as:
- Actions that are publicly visible (for example, posting to social media)
- Actions that affect another person (for example, sending a message)
- Actions where money is involved (for example, when the user is buying something)
User: Alexa, ask Astrology Daily for my horoscope.
Astrology Daily: Horoscope for what sign?
User: Libra
| Do | Don’t |
|---|---|
| Astrology Daily: Today’s outlook for Libra is… | Astrology Daily: You want the horoscope for Libra, right? User: Yes |
Obtain One Piece of Information at a Time
Users may not always give all of the information required in one step. If information cannot be assumed, ask the user for the missing information step-by-step.
User: Alexa, Ask Date Night to make a reservation at Haymarket tonight.
| Do | Don’t |
|---|---|
| Date Night: Reservation at Haymarket. For what time tonight? User: About 7:30. |
Date Night: To make a reservation, you need to say the location, time, date and number of people. Please start over. |
Use the Amazon Alexa App to Enhance Discovery
Take advantage of your card in the Alexa App to educate users on the capabilities of your experience. When you provide example phrases in your card, include “full intent” examples. Think of these as the equivalent of the way you’d verbally describe how to use your skill to someone who’d never used it before. Avoid using examples where the user does not give an intent.
| Do | Don't |
|---|---|
|
|
Presenting Information to the User
Make Sure Users Know They are in the Right Place
In short interactions, it is not necessary to explicitly tell users that they are entering or exiting your experience, but it is still important to let them know where they are to help confirm that they are in the right place (this also helps in cases where Alexa mistakenly routed them to your skill). In speech-only interactions, users do not have the benefit of visuals to orient themselves. Using landmarks tells users that Alexa heard them correctly, orients them in the interaction, and helps to instill trust in your experience.
User: Alexa, ask Astrology Daily for today’s Pisces horoscope.
| Do | Don’t |
|---|---|
| Astrology Daily: Here’s today’s Pisces horoscope: You’ve got a friend who can help you overcome today’s problems. [dialog ends] |
Astrology Daily: You’ve got a friend who can help you overcome today’s problems. [dialog ends] |
Present Information in Consumable Pieces
Humans can only retain small pieces of information that they hear. As such, you should only present what is absolutely required in order to keep the interaction as short as possible. When presenting longer lists, group them into small chunks of three to five items and ask the user if they want to continue after you present each chunk. This also helps users feel like they are in control of the interaction.
User: Alexa, ask Savvy Consumer for best sellers in garden.
| Do | Don't |
|---|---|
Savvy Consumer: The top seller in the garden department is Repel Lemon Eucalyptus Natural Insect Repellent, 4-Ounce Pump Spray Would you like to hear the rest? User: "Yes" Savvy Consumer: Number 2: TERRO Ant Killer Liquid Ant Baits Number 3: Weber 12-Inch 3-Sided Grill Brush Number 4: Black & Decker 30-Feet Line String Trimmer Replacement Spool Would you like to hear more? User: "No" |
Savvy Consumer: Here are the top sellers in the garden department Number 1: Repel Lemon Eucalyptus Natural Insect Repellent, 4-Ounce Pump Spray Number 2: TERRO Ant Killer Liquid Ant Baits Number 3: Weber 12-Inch 3-Sided Grill Brush Number 4: Black & Decker 30-Feet Line String Trimmer Replacement Spool Number 5:… |
Write for the Ear, not the Eye
The prompts written for voice-forward experiences will be heard, not read, so it is important to write them for spoken conversation. Fragment sentences and ending sentences with a preposition are acceptable, if it sounds natural in spoken dialog. Also, remember that what looks good on paper may not sound good when spoken, so make sure to listen to your prompts on your test device to make sure the TTS sounds good.
User: Alexa ask NHL tracker to give me update on the Sharks game.
| Do | Don’t |
|---|---|
| NHL Tracker: The Sharks are trailing the Stars, 3 to 2, in the third period. | NHL Tracker: San Jose Sharks (40-33-9): 2 goals. Dallas Stars (41-31-10): 3 goals. Time remaining: 4:35, 3^rd^ period |
Avoid Technical and Legal Jargon
Be honest with the user about what is happening, but don’t use technical jargon that the user won’t understand or that does not sound natural. Similarly, since legal messages often contain long, unnatural language meant for reading, not spoken dialog, they can disrupt the voice experience and can confuse users. As much as possible, keep legal jargon out of an Alexa experience (though you should consult your own legal counsel about what may be required for your Alexa experience, and this is not legal advice). Legal disclaimers can be added to the Alexa app for users to read and take time to process, if needed.
User: Alexa, ask Flight Stats for the status of Alaska 328.
| Do | Don’t |
|---|---|
| Flight Stats: Alaska flight 328, from Seattle to San Jose, is delayed due to mechanical repairs, and is now scheduled to depart at 6:25. | Flight Stats: Alaska 328, Seattle to San Jose, is in state DELAY::XFM5341 at the moment. Reposted time of departure is 1825. |
User: Alexa, talk to Taxi Broker.
| Do | Don’t |
|---|---|
| Taxi Broker: Taxi Broker. Where to? The user was presented with terms and conditions when enabling the skill. |
Taxi Broker: Taxi Broker. The Taxi Brokers terms and conditions may apply; if you are a resident of New York then NY law… Where to? |
Using Text-to-Speech Effectively
You provide text that the Alexa service converts to speech. The following best practices can improve the quality of the text-to-speech conversion.
Use SSML Tags to Modify Prosody
Use SSML tags to modify the prosody or add emphasis to your text. For instance, you can use the <prosody> tag to change the volume, pitch, and rate of the speech.
Do not use text formatting such as all caps or repeated letters to change these elements.
| Do | Don't |
|---|---|
|
|
Clarify Specialized Abbreviations and Symbols
Alexa’s text-to-speech conversion handles most text such as abbreviations and special characters automatically. For example:
- “Dr. Smith” is spoken as “Doctor Smith”
- “amazon.com” is spoken as “amazon dot com”
- “Lake Shore Dr.” is spoken as “Lake Shore Drive”
However, this conversion is not automatic for some specialized or uncommon abbreviations. Test the text-to-speech conversion and either write out text or use an SSML tag such as <say-as> or <sub>.
| Do | Don't |
|---|---|
|
|
|
|
Use SSML to Specify the Right Variants When Necessary
Many English words have different pronunciations depending on meaning or part of speech. For example, “read” is pronounced differently in these two sentences:
- I read the book yesterday
- I plan to read the book next week
When using words with these types of variations, you may need to specify the variant to use to ensure that the text-to-speech conversion pronounces the word correctly.
| Do | Don't |
|---|---|
The following words rhyme with said: bed, fed, |
The following words rhyme with said: bed, fed, read. |
The following words rhyme with ace: bass, mace, pace. The following words rhyme with pass: |
The following words rhyme with ace: bass, mace, pace. The following words rhyme with pass: bass, lass, mass. |
Write Text-to-Speech in the Target Language or Using Supported Phonemes
Use native words and sounds when writing your text-to-speech responses. The Alexa Skills Kit currently supports English (US), English (UK), and German.
Use the <phoneme> SSML tag to customize the pronunciation using the supported phonemes or add phonemic/phonetic pronunciation for the text (for example, people may pronounce words like “pecan” differently).
Supported phonemes are provided for each supported language (English (US), English (UK), and German).
| Do | Don't |
|---|---|
From the French for red stick, <phoneme alphabet="ipa" ph="bɑˈtɔn ˈɹuʒ">baton rouge</phoneme>. This example uses English phonemes to approximate French pronunciation. |
From the French for red stick, <phoneme alphabet="ipa" ph="bɑˈtɔ̃ ˈʁuʒ">baton rouge</phoneme>. This example uses phonemes that are not supported by Alexa for English (ɔ̃ and ʁ). |
Test the Text-to-Speech Results and Revise as Needed
Test how Alexa converts the text you provide to speech and make sure it sounds the way you intend. In addition to testing with an Alexa-enabled device (such as an Amazon Echo), you can use the Service Simulator on the developer portal to listen to your skill’s responses and experiment with SSML. See “Basic Testing with the Service Simulator” in Testing an Alexa Skill.
If you encounter a problem with the text-to-speech conversion, try the following:
- Modify the text. Slight changes in the text can affect the synthesis, which may fix the problem. This is most useful for intonation issues.
- Mark up the text using the supported SSML tags.
- Report the problem on the developer forums. This may be most useful for pronunciation issues.
Handling Dialogue Errors
Use Re-Prompting to Provide Guidance
If user says something that Alexa does not understand, or the user does not respond at all, the Alexa Skills Kit gives you the option of specifying a re-prompt (a prompt that is played after an error). Since only a single prompt is permitted for both low confidence and timeout dialogue errors, the prompt you write needs to give the user guidance on what kind of response you are expecting. It is acceptable for re-prompts to be slightly more verbose than the first prompt users hear, but the content needs to clearly present what the user is expected to say.
User: Alexa, ask Tide Pooler for high tides.
Tide Pooler: High tides for what city?
User: Las Vegas
| Do | Don’t |
|---|---|
| Tide Pooler: I can only provide tide information for coastal cities, like San Diego or Boston. Now, which city would you like? User: Virginia Beach. |
Tide Pooler: Please tell me another city. User: Uh… |
Offer a Way Out if the User Gets Stuck
False accepts occur when Alexa incorrectly understood what the user said and continues with the wrong information. If Alexa presents your skill to the user by mistake, or the user is otherwise stuck in the interaction, you should offer a way out in the help prompt in case they are unaware that the “stop” command is available.
User: Alexa, start Store Finder
Alexa: [Misinterprets this request as “start Score Keeper”]
| Do | Don't |
|---|---|
|
Score Keeper: Score Keeper. You can give a player points, ask for the score, or say help. What would you like? User: Help Score Keeper: Here are some things you can say: (lists several options) You can also say, stop, if you're done. So, how can I help? User: Stop. |
Score Keeper: Score Keeper. You can give a player points, ask for the score, or say help. What would you like? User: Help Score Keeper: Here are some things you can say: (lists several options) So, how can I help? Note no indication of how to exit the skill. |
Don’t Blame the User
Errors will happen. Expect that they will and handle them well. Do not place blame on the user when errors happen, but do not be too apologetic either (doing so makes your experience seem tentative and further reduces user confidence in your skill).
User: Ask Hotel Hub to find a hotel
Hotel Hub: Hotel reservations for what city?
User: [background noise]
| Do | Don’t |
|---|---|
| Hotel Hub: What city was that? | Hotel Hub: The city you gave is not valid. Please say the city where you want to make reservations. |
Expect the Unexpected
Unlike a visual interface, where the user can only interact with the affordances presented on the screen, there is no way to limit what users can say in a speech interaction. Because of this, it is important to plan for reasonable things users might say that are not supported –and then handle them intelligently.
User: Ask Date Night to make a reservation at Haymarket tomorrow.
Date Night: Reservation at Haymarket. For what time tomorrow?
User: At 10:30 pm
| Do | Don’t |
|---|---|
| Date Night: Haymarket takes reservations between 5:00 and 9:30 pm. What time would you like your reservation? User: 9:00 Date Night: And for how many people? |
Date Night: Sorry, what time would you like your reservation for? User: 10:30 pm Date Night: I’m having trouble understanding. <error earcon> [stream closes; dialog ends] |
Related Topics
- Alexa Voice Design Guide
- Steps to Build a Custom Skill
- Registering and Managing Custom Skills in the Developer Portal.
- Use the Skill Builder (Beta) to Define Intents, Slots, and Dialogs
Other Resources
If you’re interested in learning more about designing voice interactions, see these additional resources:
- Wired for Speech: How Voice Activates and Advances the Human-Computer Relationship, by Nass and Brave
- The Elements of VUI Style: A Practical Guide to Voice User Interface Design, by Bouzid and Ma
- Don’t Make Me Tap!: A Common Sense Approach to Voice Usability, by Bouzid and Ma
- The Voice in the Machine: Building Computers That Understand Speech, by Pieraccini
- Voice User Interface Design, by Cohen, Giangola, and Balogh
Auf Deutsch übersetzte Seiten+
Best Practices für Voice Design
Einleitung
In den folgenden Abschnitten finden Sie eine Liste der empfohlenen Verfahrensweisen für die Erstellung einer Spracherfahrung für einen benutzerdefinierten Skill. Sie sollten Ihre Sprachinteraktionen so überprüfen und einrichten, wie die Benutzer mit Ihrem Skill interagieren. Die Tipps in diesem Dokument verbessern die Benutzerfreundlichkeit Ihres Designs von Anfang an, bevor Sie Benutzerdaten berücksichtigen können.
Beachten Sie, dass sich die Empfehlungen in diesem Dokument auf das benutzerdefinierte Interaktionsmodell beziehen, das Sie für einen benutzerdefinierten Skill erstellen. Wenn Sie die Smart Home Skill API verwenden, brauchen Sie das Interaktionsmodell nicht selbst zu erstellen. Weitere Informationen über die verschiedenen Skills, die Sie erstellen können, finden Sie unter Informationen zu den verschiedenen Skilltypen.
Abfragen von Informationen vom Benutzer
Verdeutlichen Sie, dass der Benutzer antworten muss
Allein die Präsentation der Optionen ist nicht ausreichend, um den Benutzer darauf hinzuweisen, dass er antworten muss. Stellen Sie dem Benutzer also unbedingt eine Frage, aus der hervorgeht, dass er etwas sagen soll.
Benutzer: Alexa, starte Fragespiel.
| So geht's | So geht's nicht |
|---|---|
| Fragespiel: Fragespiel. Du kannst die folgende Kategorien auswählen: Astronomie, Chemie oder Fußball. Welche nimmst du? |
Fragespiel: Fragespiel. Du kannst eine der folgenden Kategorien auswählen: Astronomie, Chemie oder Fußball. |
Gehen Sie nicht davon aus, dass die Benutzer wissen, was sie tun sollen
Wenn Benutzer Ihren Skill zum ersten Mal verwenden, machen sie evtl. nur minimale Angaben, indem sie Alexa einfach bitten, sich an Ihren Skill zu wenden, ohne weitere Details anzugeben. In diesem Fall muss Ihr Skill den Benutzern mitteilen, welche Optionen für die Interaktion verfügbar sind.
Benutzer: Alexa, rufe Mitfahrdienst auf.
| So geht's | So geht's nicht |
|---|---|
| Mitfahrdienst: Mitfahrdienst. Du kannst eine Mitfahrgelegenheit bestellen oder einen Kostenvorschlag anfordern. Was möchtest du gerne? Benutzer: Mitfahrgelegenheit. Mitfahrdienst: Deine Anfrage wird abgeschickt. Du erhältst eine Nachricht auf dein Mobiltelefon, wenn jemand eine Mitfahrgelegenheit anbietet. Danke, dass du Mitfahrdienst verwendet hast. |
Mitfahrdienst: Mitfahrdienst wird geöffnet. Benutzer: (Hier ist dem Benutzer nicht ganz klar, was er tun kann, sofern Sie ihm nicht einige Optionen anbieten.) |
Präsentieren Sie die Optionen eindeutig und klar.
Wenn Sie dem Benutzer eine Reihe von Optionen anbieten, formulieren Sie Ihre Aufforderung als Entweder/Oder-Frage. Sonst könnte der Alexa TTS-Service die Aufforderung so wiedergeben, dass sie wie eine Ja-Nein-Frage klingt. Hören Sie sich jede Frage auf dem Testgerät an, um sicherzustellen, dass der TTS die erwartete Antwort gibt.
Benutzer: Alexa, bitte Lieferfix, einen Burger für mich zu bestellen.
| So geht's | So geht's nicht |
|---|---|
| Lieferfix: | Lieferfix: |
| Welche Beilage möchtest du: Pommes oder Salat? | Möchtest du Pommes oder Salat? |
| Benutzer: Salat | Benutzer: Ja |
Fassen Sie sich kurz
Sprache ist linear und zeitbasiert. Die Benutzer können gesprochene Inhalte nicht überfliegen, wie etwa visuelle Inhalte. Die Benutzer müssen beim Beantworten von Fragen schnelle Entscheidungen treffen, weil die Zeit läuft. Deshalb müssen die Eingabeaufforderungen kurz und bündig, aber dennoch eindeutig sein.
Benutzer: Alexa, bitte Astro Dienst um mein Horoskop.
| So geht's | So geht's nicht |
|---|---|
| Astro Dienst: Horoskop für welches Sternzeichen? | Astro Dienst: Ich kann Horoskope für 12 Sternzeichen ausgeben, sage mir bitte, welches du möchtest. |
Vermeiden Sie es, den Benutzern zu viele Wahlmöglichkeiten anzubieten.
Wenn Sie den Benutzern eine Liste von Optionen anbieten, achten Sie darauf, dass die Optionen deutlich erkennbar sind. Geben Sie nicht mehr als drei Optionen vor und vermeiden Sie es, Ausdrücke zu wiederholen.
Benutzer: Alexa, bitte Lieferfix, mir einen Milchshake zu bestellen.
| So geht's | So geht's nicht |
|---|---|
| Lieferfix: Welche Geschmacksrichtung möchtest du: Schokolade, Vanille oder Erdbeere? | Lieferfix: Welche Geschmacksrichtung möchtest du? Für Schokolade sage „Schokolade“. Für Vanille sage „Vanille“. Für Erdbeere sage „Erdbeere“. |
Bieten Sie bei komplexen Skills Hilfe an
Wenn Ihr Alexa Skill viele Dinge tun kann (mehr als drei), sollten Sie nicht alle Optionen in eine Eingabeaufforderung integrieren. Präsentieren Sie stattdessen die wichtigsten Optionen zuerst und geben Sie Hilfestellung. Wenn der Benutzer um Hilfe bittet, führen Sie alle Optionen auf. Denken Sie daran, dem Benutzer eine Frage zu stellen, nachdem Sie die Optionen vorgestellt haben.
Benutzer: Alexa, starte Scorekeeper
| So geht's | So geht's nicht |
|---|---|
Scorekeeper: Scorekeeper. Du kannst einem Spieler Punkte geben, seinen Punktestand abrufen oder „Hilfe“ sagen. Was möchtest du tun? Benutzer: Hilfe Scorekeeper: Du kannst Folgendes sagen: Jonas hinzufügen, Du kannst auch „Stopp“ sagen, wenn du fertig bist. Wie kann ich dir helfen? |
Scorekeeper: Scorekeeper. Du kannst einem Spieler Punkte geben, einen neuen Spieler hinzufügen, den Punktestand abrufen, Benutzer: Wie ist der Punktestand? |
Hinweis: Wenn Sie für Ihren Skill Hilfe anbieten möchten, implementieren Sie einen Handler für das integrierte AMAZON.HelpIntent, das den Hilfetext wiedergibt. AMAZON.HelpIntent wird aufgerufen, wenn der Benutzer mit allgemeinen Ausdrücken wie „Hilfe“, „Hilf mir“ usw. um Hilfe bittet.
Stellen Sie nur wirklich notwendige Fragen
Stellen Sie, sofern möglich, Vermutungen an, um unnötige Fragen zu vermeiden. Durch unnötige Fragen wird die Benutzererfahrung schwerfällig, sie erscheint dann weniger gut durchdacht. Beispiele:
- Wenn Ihr Skill nur eine Sache ausführt, fragen Sie den Benutzer nicht, ob er dies tun möchte.
- Stellen Sie, sofern möglich, begründete Vermutungen an (ohne aber eine Korrektur zu erschweren).
- Entwerfen Sie benutzerorientierte (dem Benutzerprofil entsprechende), maßgeschneiderte Eingabeaufforderungen.
Benutzer: Alexa, starte Spaßalarm
| So geht's | So geht's nicht |
|---|---|
| Spaßalarm: Was ist schwarz, weiß und überall rot? Ein verlegenes Stinktier. | Spaßalarm: Möchtest du einen Witz hören? Benutzer: Ja. |
Verwenden Sie Bestätigungen selektiv
Vermeiden Sie Dialoge, aus denen sich zu viele Bestätigungen ergeben. Bestätigen Sie allerdings Aktionen mit wesentlichen Folgen. Beispiel:
- Aktionen, die öffentlich sichtbar sind (zum Beispiel Beiträge in sozialen Medien)
- Aktionen, die eine andere Person betreffen (zum Beispiel eine Nachricht senden)
- Aktionen mit Geldbewegungen (zum Beispiel, wenn der Benutzer etwas kauft)
Benutzer: Alexa, rufe mein Horoskop von Astro Dienst ab.
Astro Dienst: Horoskop für welches Sternzeichen?
Benutzer: Waage
| So geht's | So geht's nicht |
|---|---|
| Astro Dienst: Die heutige Prognose für Waage lautet… | Astro Dienst: Sie möchten das Horoskop für Waage, nicht wahr? Benutzer: Ja |
Bitten Sie immer nur um eine Angabe
Der Benutzer gibt möglicherweise nicht immer alle erforderlichen Informationen in einem Schritt an. Wenn Informationen nicht vermutet werden können, bitten Sie den Benutzer schrittweise um die fehlenden Angaben.
Benutzer: Alexa, buche bei Restaurant-Service eine Reservierung im „Kempinski“ für heute Abend.
| So geht's | So geht's nicht |
|---|---|
| Restaurant-Service: Reservierung im Kempinski. Für welche Uhrzeit heute Abend? Benutzer: Etwa 19:30 Uhr. |
Restaurant-Service: Für eine Reservierung musst du Ort, Uhrzeit, Datum und Anzahl der Personen angeben. Beginnen Sie bitte von vorn. |
Verwenden Sie die Amazon Alexa App, um die Erkennung zu verbessern
Nutzen Sie Ihre Karte in der Alexa App, um die Benutzer über die Möglichkeiten Ihres Skills zu informieren. Wenn Sie in Ihrer Karte Beispieläußerungen angeben, verwenden Sie solche mit „vollständiger Absicht“. Denken Sie dabei an die Art, wie Sie jemandem, der den Skill noch nie benutzt hat, seine Möglichkeiten mündlich erklären würden. Vermeiden Sie Beispiele, in denen der Benutzer keine Absicht ausdrückt.
| So geht's | So geht's nicht |
|---|---|
|
|
Präsentieren von Informationen für den Benutzer
Achten Sie darauf, dass der Benutzer weiß, dass er sich am richtigen Ort befindet
Bei kurzen Interaktionen ist es nicht erforderlich, dem Benutzer explizit mitzuteilen, dass er jetzt Ihre Anwendung benutzt oder beendet, er sollte jedoch darüber informiert werden, wo er sich gerade befindet. So wird bestätigt, dass er sich am richtigen Ort befindet (dies ist auch hilfreich, falls Alexa ihn irrtümlicherweise zu Ihrem Skill geleitet hat). Bei rein sprachlichen Interaktionen kann der Benutzer sich zur Orientierung nicht auf Bilder beziehen. Wenn wir Meilensteine verwenden, erfährt der Benutzer, dass Alexa ihn korrekt verstanden hat, orientiert ihn bei der Interaktion und hilft, Vertrauen zu Ihrer Anwendung zu gewinnen.
Benutzer: Alexa, rufe beim Astro Dienst das heutige Horoskop für Fische ab.
| So geht's | So geht's nicht |
|---|---|
| Astro Dienst: Hier ist das heutige Horoskop für Fische: Sie haben einen Freund, der Ihnen helfen kann, die aktuellen Probleme zu überwinden. [Dialogende] |
Astro Dienst: Sie haben einen Freund, der Ihnen helfen kann, die aktuellen Probleme zu überwinden. [Dialogende] |
Präsentieren Sie Informationen in leicht verständlichen Einheiten
Beim Zuhören kann man sich immer nur kleine Informationseinheiten merken. Deshalb sollten Sie nur das absolut Erforderliche präsentieren, damit die Interaktion so kurz wie möglich gehalten wird. Gruppieren Sie längere Listen in kleine Einheiten von drei bis fünf Elementen und fragen Sie den Benutzer nach jeder Einheit, ob er fortfahren möchte. So hat der Benutzer auch das Gefühl, dass er die Interaktion steuert.
Benutzer: Alexa, frage beim Kaufberater, welcher Gartenartikel am beliebtesten ist.
| So geht's | So geht's nicht |
|---|---|
Kaufberater: Der Topseller in der Gartenabteilung ist Repel, ein natürliches Insektenschutzmittel mit Zitrone und Eukalyptus als Pumpspray Möchtest du auch die anderen hören? Benutzer: „Ja“ Kaufberater: Nummer 2: TERRO, flüssiger Ameisen-Killer Nummer 3: Weber, dreiseitige Grillbürste 30 cm Nummer 4: Black & Decker, 10 m Ersatzrolle für Rasentrimmer Möchtest du mehr hören? Benutzer: „Nein“ |
Kaufberater: Dies sind die Topseller in der Gartenabteilung, Nummer 1: Repel, natürliches Insektenschutzmittel mit Zitrone und Eukalyptus als Pumpspray Nummer 2: TERRO, flüssiger Ameisen-Killer Nummer 3: Weber, dreiseitige Grillbürste 30 cm Nummer 4: Black & Decker, 10 m Ersatzrolle für Rasentrimmer Nummer 5:… |
Schreiben Sie für die Ohren, nicht für die Augen
Die Eingabeaufforderungen für die Spracherfahrung werden gehört, nicht gelesen. Es ist also wichtig, sie für die gesprochene Unterhaltung zu schreiben. Satzfragmente sowie Sätze, die mit einer Präposition enden, sind akzeptabel, sofern es im gesprochenen Dialog natürlich klingt. Bedenken Sie auch Folgendes: Ein Satz kann sich geschrieben gut anhören, jedoch möglicherweise nicht so gut, wenn er gesprochen wird. Hören Sie sich Ihre Eingabeaufforderung unbedingt auf Ihrem Testgerät an, damit gewährleistet ist, dass sich die Umwandlung von Text in Sprache gut anhört.
Benutzer: Alexa, schau beim Bundesliga-Tracker, wie das Bayern München-Spiel gerade steht.
| So geht's | So geht's nicht |
|---|---|
| Bundesliga: Bayer München führt zu Beginn der 2. Halbzeit mit 2 zu 1. | Bundesliga: Bayern München, (34. und 42. Minute): Tore durch Schweinsteiger und Alaba nach nicht gegebenem Abseits. Hamburger SV (52. Spielminute): Tor durch Jatta. Verbleibende Spielzeit: 22 Minuten. |
Vermeiden Sie technische und juristische Fachsprache
Seien Sie dem Benutzer gegenüber ehrlich über das, was geschieht, aber verwenden Sie keinen technischen Jargon, den der Benutzer nicht versteht oder der nicht natürlich ist. Dies gilt auch für juristische Hinweise, die häufig in einer langatmigen, nicht natürlichen Sprache verfasst sind, da sie im Allgemeinen gelesen und nicht gesprochen werden. Solche Hinweise können die Spracherfahrung unterbrechen und den Benutzer verwirren. Vermeiden Sie so weit wie möglich juristischen Jargon in der Alexa-Anwendung (Sie sollten jedoch juristischen Rat darüber einholen, was für Ihre Alexa-Anwendung erforderlich ist und dies ist kein juristischer Rat). Haftungsausschlüsse können gegebenenfalls der Alexa-App hinzugefügt werden, sodass die Benutzer sie lesen und in Ruhe verarbeiten können.
Benutzer: Alexa, frage bei Flugdatenbank nach dem Status von LH 431.
| So geht's | So geht's nicht |
|---|---|
| Flugdatenbank: Lufthansa-Flug LH 31 von New York nach Frankfurt ist wegen einer mechanischen Reparatur verspätet und soll um 18:25 Uhr starten. | Flugdatenbank: LH 341, New York nach Frankfurt, befindet sich derzeit im Status VERSPÄTET::XFM5341. Neue Startzeit ist 18:25. |
Benutzer: Alexa, rufe die Taxi App auf.
| So geht's | So geht's nicht |
|---|---|
| Taxi-App: Taxi-App. Wohin möchten Sie fahren? Der Benutzer wurde bei der Aktivierung des Skills über die Geschäftsbedingungen informiert. |
Taxi-App: Taxi-App. Die Geschäftsbedingungen der Taxi-App sind gegebenenfalls anzuwenden. Sollten Sie keine bestimmte Route angeben, wählt der Fahrer kraft Beförderungsbedingungen die kürzeste Route… Wohin möchten Sie fahren? |
Effektive Nutzung der Umwandlung von Text in Sprache
Sie geben Text vor, den der Alexa-Service in Sprache umwandelt. Die folgenden bewährten Verfahren können die Qualität der Umwandlung von Text in Sprache verbessern.
Verlassen Sie sich allein auf den Text und nicht auf Betonung und auf Intonation (Satzmelodie)
Verwenden Sie Wörter, die Informationen effektiv vermitteln, denn Sie haben keinen Einfluss auf Betonung und Intonation bei der Sprachausgabe.
Sie können den SSML-Tag break verwenden, um Pausen hinzuzufügen, aber Elemente wie Tonhöhe, Bereich, Geschwindigkeit, Dauer oder Lautstärke können nicht verändert werden. Text, der zu stark auf Rhythmus, Betonung oder anderen Merkmalen beruht, ist in einer Sprachschnittstelle möglicherweise nicht sehr effektiv. Verwenden Sie keine Textformatierung, wie etwa Großbuchstaben oder wiederholte Buchstaben, um diese Elemente zu verändern.
| So geht's | So geht's nicht |
|---|---|
|
|
Klären Sie spezielle Abkürzungen und Symbole.
Die Umwandlung von Text in Sprache durch Alexa kann die meisten Abkürzungen und Sonderzeichen automatisch verarbeiten. Zum Beispiel:
- „Dr. Schmidt“ wird als „Doktor Schmidt“ ausgesprochen
- „amazon.com“ wird als „amazon dot com“ ausgesprochen
- „Uferstr.“ wird als „Uferstraße“ ausgesprochen
Jedoch ist diese Umwandlung für bestimmte spezielle oder unübliche Abkürzungen nicht automatisch. Testen Sie die Umwandlung von Text in Sprache und schreiben Sie den Text entweder aus oder verwenden Sie ein SSML-Tag.
| So geht's | So geht's nicht |
|---|---|
|
|
|
|
Testen Sie die Umwandlung von Text in Sprache und überarbeiten Sie bei Bedarf
Testen Sie, wie Alexa Ihren Text in Sprache umwandelt, und vergewissern Sie sich, dass es so klingt, wie Sie beabsichtigen. Zusätzlich zum Testen mit einem Gerät, das den Alexa-Dienst nutzt (etwa dem Amazon Echo), können Sie den Service Simulator auf dem Entwicklerportal verwenden, um die Antworten Ihres Skills anzuhören und mit SSML zu experimentieren. Siehe „Grundlagen zum Testen mit dem Service Simulator“ in Einen Alexa Skill testen.
Falls Sie bei der Umwandlung von Text in Sprache auf ein Problem stoßen sollten, gehen Sie wie folgt vor:
- Ändern Sie den Text. Leichte Änderungen am Text können die Synthese beeinflussen, wodurch das Problem möglicherweise behoben wird. Dies ist sehr hilfreich bei Intonationsproblemen.
- Markieren Sie den Text mit unterstützten SSML-Tags.
- Melden Sie das Problem in den Entwicklerforen. Dies kann sehr hilfreich sein bei Ausspracheproblemen.
Umgang mit Dialogfehlern
Verwenden Sie eine erneute Eingabeaufforderung, um Hilfestellung zu geben
Wenn der Benutzer etwas sagt, das Alexa nicht versteht, oder der Benutzer überhaupt nicht antwortet, haben Sie im Alexa Skills Kit die Möglichkeit, eine erneute Eingabeaufforderung anzugeben (eine Eingabeaufforderung, die nach einem Fehler abgespielt wird). Da nur eine Eingabeaufforderung für Fehler aufgrund von Ungenauigkeit bzw. Zeitüberschreitung zulässig ist, muss die von Ihnen geschriebene Eingabeaufforderung einen Hinweis auf die von Ihnen erwartete Antwort enthalten. Erneute Eingabeaufforderungen können etwas wortreicher sein als die erste Eingabeaufforderung an den Benutzer. Der Inhalt muss jedoch deutlich machen, was der Benutzer sagen soll.
Benutzer: Alexa, frage den Wattläufer nach den Hochwasserzeiten.
Wattläufer: Hochwasserzeiten für welchen Ort?
Benutzer: Hamburg
| So geht's | So geht's nicht |
|---|---|
| Wattläufer: Ich kann nur Gezeitenangaben für Küstenstädte machen, etwa wie Cuxhaven oder St. Peter-Ording.Für welche Stadt möchtest du die Angabe? Benutzer: Büsum |
Wattläufer: Nenne mir bitte eine andere Stadt. Benutzer: Hmmm… |
Bieten Sie eine Lösung an, wenn der Benutzer nicht weiter weiß
Falsche Annahmen treten auf, wenn Alexa den Benutzer falsch verstanden hat und mit der falschen Information fortfährt. Für den Fall, dass Alexa Ihren Skill dem Benutzer irrtümlicherweise präsentiert oder der Benutzer auf andere Weise in der Interaktion nicht weiter weiß, sollten Sie in der Hilfe eine Lösung anbieten, falls der Benutzer nicht weiß, dass der Befehl „Stopp“ verfügbar ist.
Benutzer: Alexa, starte Spielerbörse
Alexa: [Missversteht die Anforderung als „starte Scorekeeper“]
| So geht's | So geht's nicht |
|---|---|
|
Scorekeeper: Scorekeeper. Du kannst einem Spieler Punkte geben, seinen Punktestand abrufen oder „Hilfe“ sagen. Was möchtest du tun? Benutzer: Hilfe Scorekeeper: Du kannst Folgendes sagen: (Listet mehrere Optionen auf) Du kannst auch „Stopp“ sagen, wenn du fertig bist. Wie kann ich dir helfen? Benutzer: Stop. |
Scorekeeper: Scorekeeper. Du kannst einem Spieler Punkte geben, seinen Punktestand abrufen oder „Hilfe“ sagen. Was möchtest du tun? Benutzer: Hilfe Scorekeeper: Du kannst Folgendes sagen: (listet mehrere Optionen auf) Wie kann ich dir helfen? Beachten Sie, dass kein Hinweis gegeben wird, wie man den Skill beenden kann. |
Geben Sie nicht dem Benutzer die Schuld
Es werden Fehler auftreten. Gehen Sie davon aus, dass der Benutzer gut damit umgehen wird. Geben Sie nicht dem Benutzer die Schuld, wenn Fehler auftreten. Entschuldigen Sie sich aber auch nicht zu sehr (sonst könnte Ihre Anwendung als unvollständig wahrgenommen werden, was das Vertrauen in Ihren Skill reduzieren würde).
Benutzer: Bitte Hotelfinder, ein Hotel zu suchen.
Hotelfinder: Hotelreservierung für welche Stadt?
Benutzer: [Hintergrundgeräusche]
| So geht's | So geht's nicht |
|---|---|
| Hotelfinder: Welche Stadt ist das? | Hotelfinder: Die von dir angegebene Stadt ist ungültig. Bitte nenne die Stadt, in der du eine Reservierung vornehmen möchtest. |
Erwarten Sie das Unerwartete
Anders als bei einer visuellen Schnittstelle, wo die Benutzer nur mit den gezeigten Optionen interagieren können, ist die Anzahl der Optionen bei der sprachlichen Interaktion unbegrenzt. Aus diesem Grund müssen Sie vorausahnen, welche nicht unterstützten Begriffe die Benutzer sagen könnten, und dann intelligent damit umgehen.
Benutzer: Buche bei Restaurant-Service im „Kempinski“ für morgen.
Restaurant-Service: Reservierung im Kempinski. Für welche Uhrzeit morgen?
Benutzer: Um 22:30 Uhr
| So geht's | So geht's nicht |
|---|---|
| Restaurant-Service: Das Kempinski nimmt Reservierungen zwischen 17:00 und 21:30 an. Für welche Uhrzeit möchtest du reservieren? Benutzer: 21:00 Restaurant-Service: Und für wie viele Personen? |
Restaurant-Service: Entschuldigung, für welche Uhrzeit wolltest du die Reservierung? Benutzer: 22:30 Restaurant-Service: Ich habe dich nicht richtig verstanden. <error earcon> [Stream wird geschlossen; Dialogende] |
Nächste Schritte
- So geht es weiter: Benutzerdefinierte Skills im Entwicklerportal registrieren und verwalten.
- Zurückgehen zu: Handbuch für Sprachdesign
- Zurückkehren zu: Schritte zum Erstellen eines benutzerdefinierten Skill
Andere Ressourcen
Wenn Sie mehr über das Erstellen von Sprachinteraktionen erfahren möchten, stehen Ihnen folgende Ressourcen zur Verfügung:
- Wired for Speech: How Voice Activates and Advances the Human-Computer Relationship, von Nass und Brave
- The Elements of VUI Style: A Practical Guide to Voice User Interface Design, von Bouzid und Ma
- Don’t Make Me Tap!: A Common Sense Approach to Voice Usability, von Bouzid und Ma
- The Voice in the Machine: Building Computers That Understand Speech, von Pieraccini
- Voice User Interface Design, von Cohen, Giangola und Balogh