Visão geral do Assistente VirtualVirtual Assistant Overview

Visão geralOverview

Clientes e parceiros têm uma necessidade significativa de fornecer um assistente de conversação adaptado à sua marca, personalizado para seus usuários e disponibilizado em uma ampla variedade de telas e dispositivos.Customers and partners have a significant need to deliver a conversational assistant tailored to their brand, personalized to their users, and made available across a broad range of canvases and devices.

Dando continuidade à abordagem de software livre da Microsoft em relação ao SDK do Bot Framework, a solução de Assistente Virtual de código aberto oferece um conjunto de recursos básicos e controle total sobre a experiência do usuário final.Continuing Microsoft's open-sourced approach towards the Bot Framework SDK, the open-source Virtual Assistant solution provides you with a set of core foundational capabilities and full control over the end user experience.

Este modelo incorpora o Enterprise Template anterior, reúne todos os componentes de suporte e práticas recomendadas identificados por meio da construção de experiências de conversação e simplifica bastante a criação de um projeto novo do bot que inclui: tentativas de conversação básicas, integração de expedição, QnA Maker, Application Insights e uma implantação automatizada.This template incorporates the previous Enterprise Template and brings together all of the best practices and supporting components identified through building conversational experiences and greatly simplifies the creation of a new bot project including: basic conversational intents, Dispatch integration, QnA Maker, Application Insights and an automated deployment.

Acreditamos plenamente que nossos clientes devem conduzir e fortalecer os insights de seus clientes e seu relacionamento com eles.We strongly believe our customers should own and enrich their customer relationships and insights. Assim, um Assistente Virtual fornece controle total sobre a experiência do usuário para nossos clientes e parceiros com a disponibilização do código de software livre no GitHub.Therefore, any Virtual Assistant provides complete control of the user experience to our customers and partners through open-sourcing the code on GitHub. O nome, a voz e a personalidade podem ser alterados para atender às necessidades da organização.The name, voice and personality can be changed to suit the organization’s needs. Nossa solução de Assistente Virtual simplifica a criação de seu próprio assistente, permitindo que você comece a usá-lo em minutos e evolua usando nossas ferramentas de desenvolvimento de ponta a ponta.Our Virtual Assistant solution simplifies creation of your own assistant enabling you to get started in minutes and then extended using our end to end development tooling.

O escopo da funcionalidade do Assistente Virtual é amplo, normalmente oferecendo aos usuários finais vários recursos.The scope of Virtual Assistant functionality is broad, typically offering end users a range of capabilities. Para aumentar a produtividade do desenvolvedor e permitir um ecossistema vibrante de experiências de conversação reutilizáveis, estamos oferecendo aos desenvolvedores exemplos inicias de habilidades de conversação reutilizáveis.To increase developer productivity and to enable a vibrant ecosystem of reusable conversational experiences, we are providing developers initial examples of reusable conversational skills. Essas habilidades podem ser adicionadas a um aplicativo de conversação para dar vida a uma experiência de conversa específica, por exemplo, para localizar um ponto de interesse, interagir com o calendário, tarefas, emails e muitos outros cenários.These Skills can be added into a conversational application to lighten up a specific conversation experience, such as finding a point of interest, interacting with calendar, tasks, email and many other scenarios. As habilidades são totalmente personalizáveis e consistem em modelos de linguagem para várias linguagens, diálogos e códigos.Skills are fully customizable and consist of language models for multiple languages, dialogs and code.

Diagrama do Assistente Virtual

IntroduçãoGetting Started

Examine a documentação Assistente Virtual e Habilidades para ver informações mais detalhadas.Explore the Virtual Assistant and Skills documentation for more detailed information.

ConteúdoWhat's in the box

O Modelo de Assistente Virtual reúne várias da melhores práticas que identificamos durante a construção de experiências de conversação e automatiza a integração de componentes que consideramos altamente benéficos para desenvolvedores do Bot Framework.The Virtual Assistant Template brings together a number of best practices we've identified through the building of conversational experiences and automates integration of components that we've found to be highly beneficial to Bot Framework developers. Esta seção cobre algumas informações básicas em relação a decisões importantes para ajudar a explicar por que o modelo funciona dessa forma.This section covers some background to key decisions to help explain why the template works the way it does.

Agora o modelo de Assistente Virtual incorpora as funcionalidades do Enterprise Template anterior, incluindo intenções de conversação básicas em vários idiomas, Expedição, QnA e insights de conversa.The Virtual Assistant template now incorporates the previous Enterprise Template capabilities including base conversational intents in multiple languages, Dispatching, QnA, and conversational insights. As funcionalidades a seguir, relacionadas ao assistente, estão atualmente disponíveis. Outras funcionalidades estão sendo planejadas e trabalharemos junto aos nossos clientes e parceiros para a criação de um roteiro.The following Assistant related capabilities are provided at this time; further capabilities are planned and we'll be working closely with customers and partners to help inform the roadmap.

RecursoFeature DESCRIÇÃODescription
IntegraçãoOnboarding Um exemplo de fluxo de integração que permite ao assistente cumprimentar o usuário e coletar informações iniciais.An example OnBoarding flow enabling your Assistant to greet the user and collect initial information.
Arquitetura de eventosEventing Architecture Eventos no contexto do Assistente Virtual permitem que o aplicativo cliente que está hospedando o Assistente (em um navegador da Web ou em um dispositivo como um carro ou alto-falante) obtenha informações sobre os eventos de usuário ou dispositivo enquanto recebe eventos para executar operações do dispositivo.Events in the context of the Virtual Assistant enable the client application hosting the assistant (in a web-browser or on a device such as a car or speaker) to exchange information about the user or device events while also receiving events to perform device operations.
Contas vinculadasLinked Accounts Em um cenário de fala, não é prático para um usuário inserir seu nome de usuário e senha para dar suporte a sistemas de comandos de voz.In a speech-led scenario it's not practical for a user to enter their username and password for supporting systems through voice commands. Portanto, uma experiência complementar separada dá ao usuário a oportunidade de entrar e conceder permissão a um Assistente Virtual para recuperar tokens para uso posterior.Therefore, a separate companion experience provides an opportunity for the user to signin and provide permission for an Virtual Assistant to retrieve tokens for later use.
Habilitação de habilidadesSkill Enablement Todo programador deve desenvolver por conta própria o vasto conjunto de recursos comuns disponíveis atualmente.A broad set of common capabilities exist today, which require each developer to build themselves. A solução Assistente Virtual inclui uma nova habilidade que permite que novos recursos sejam conectados a um Assistente Virtual usando somente configurações, além de fornecer um mecanismo de autenticação para que as habilidades solicitem tokens para atividades downstream.Our Virtual Assistant solution includes a new Skill capability enabling new capabilities to be plugged into an Virtual Assistant through configuration only and provide an authentication mechanism for Skills to request tokens for down-stream activities.
Habilidade de ponto de interessePoint of Interest Skill A versão prévia da habilidade ponto de interesse (PoI) fornece um modelo de linguagem abrangente para localizar pontos de interesse e solicitar direções.The preview Point of Interest (PoI) skill provides a comprehensive language model for finding points of interest and requesting directions. Atualmente, a habilidade fornece integração com o Azure Mapas.The skill currently provides integration into Azure Maps.
Habilidade de calendárioCalendar Skill A versão prévia da habilidade de calendário fornece um modelo de linguagem abrangente para atividades comuns relacionadas a calendário. A habilidade, no momento, está integrada ao Microsoft Graph (Office 365/Outlook.com) e o suporte para APIs do Google chegará em breve.The preview Calendar Skill provides a comprehensive language model for common calendar related activities, The skill is currently integrated into Microsoft Graph (Office 365/Outlook.com) with support for Google APIs to follow soon.
Habilidade de emailEmail Skill A versão prévia da habilidade de email fornece um modelo de linguagem abrangente para atividades comuns relacionadas a email. A habilidade, no momento, está integrada ao Microsoft Graph (Office 365/Outlook.com) e o suporte para APIs do Google chegará em breve.The preview Email Skill provides a comprehensive language model for common email related activities, The skill is currently integrated into Microsoft Graph (Office 365/Outlook.com) with support for Google APIs to follow soon.
Habilidade de tarefasTo Do Skill A versão prévia da Habilidade de tarefas pendentes fornece um modelo de linguagem abrangente para atividades comuns relacionadas a tarefas pendentes. A habilidade, no momento, está integrada ao OneNote e o suporte a Microsoft Graph (outlookTask) chegará em breve.The preview To Do Skill provides a comprehensive language model for common task related activities, The skill is currently integrated into OneNote with Microsoft Graph (outlookTask) support to follow soon.
Integração do dispositivoDevice Integration Nossos SDKs do Serviço de Bot do Azure (DirectLine), junto com o cartão adaptável e os SDKs de Fala facilitam a integração multiplataforma com os dispositivos.Our Azure Bot Service SDKs (DirectLine) along with Adaptive Card and Speech SDKs enable easy cross-platform integration to devices. Outros exemplos de integração de dispositivos e plataforma, incluindo o Microsoft Edge, estão planejados.Additional device integration examples and platform including Edge are planned.
Agentes de testeTest Harnesses Além do Bot Framework Emulator, um agente de teste baseado em WebChat é fornecido para permitir o teste de cenários mais complexos de autenticação.In addition to the Bot Framework Emulator, a WebChat based test harness is provided enabling more complex authentication scenarios to be tested. Um agente de teste simples baseado em console demonstra a abordagem de troca de mensagens a fim de mostrar a facilidade de integração do dispositivo.A simple Console based test harness demonstrates the approach to exchange messages to help frame the ease of device integration.
Implantação automatizadaAutomated Deployment Todos os recursos do Azure necessários para o seu Assistente são implantados automaticamente: Registro de bot, Serviço de Aplicativo do Azure, LUIS, QnA Maker, Content Moderator, Cosmos DB, Armazenamento do Azure e Application Insights.All the Azure resources required for your Assistant are automatically deployed: Bot registration, Azure App Service, LUIS, QnAMaker, Content Moderator, CosmosDB, Azure Storage, and Application Insights. Além disso, modelos do LUIS para todas as habilidades, do QnAMaker e de expedição são criados, treinados e publicados para habilitar o teste de imediato.Additionally, LUIS models for all skills, QnAMaker, and Dispatch models are created, trained, and published to enable immediate testing.
Modelo de linguagem automotivaAutomotive Language Model Um modelo de linguagem automotiva que abrange domínios nucleares, como telefone, navegação e controle de recursos no carro, estará disponível em breve.An Automotive language model covering core domains such as telephone, navigation and control of in-car features is coming soon.

Cenários de ExemploExample Scenarios

O Assistente Virtual pode ser usado em diversos cenários de diferentes setores.The Virtual Assistant extends across a broad number of industry scenarios. Alguns cenários de exemplo são mostrados abaixo para fins de referência.Some example scenarios are shown below for reference purposes.

  • Indústria automotiva: Assistente Pessoal habilitado por voz integrado ao carro que oferece aos usuários finais a capacidade de executar funções tradicionais do carro (por exemplo, navegação, rádio) além dos cenários com foco na produtividade, como remarcar reuniões quando você estiver atrasado ou adicionar itens à sua lista de tarefas, além de experiências proativas em que o carro pode sugerir tarefas com base em eventos, tais como dar partida no motor, ir para casa ou habilitar o modo de piloto automático.Automotive Industry: Voice enabled Personal Assistant integrated into the car providing end users the ability to perform traditional car operations (e.g. navigation, radio) along with productivity focused scenarios such as moving meetings when you're running late, adding items to your task list and proactive experiences where the car can suggest tasks to complete based on events such as starting the engine, traveling home or enabling cruise control. Os Cartões Adaptáveis são renderizados na integração da Unidade Principal e Fala, executados por meio de interações Apertar para Falar e Wake Word (palavra de início do Assistente).Adaptive Cards are rendered within the Head Unit and speech integration performed through Push-To-Talk or Wake Word interactions.

  • Hospitalidade: Assistente Pessoal habilitado por voz integrado a um dispositivo em um quarto de hotel que oferece vários cenários voltados para hospitalidade (por exemplo, estender sua estadia, solicitar check-out tardio, serviço de quarto), incluindo concierge e a capacidade de encontrar restaurantes e atrações locais.Hospitality: Voice enabled Personal Assistant integrated into a hotel room device providing a broad range of hospitality focused scenarios (e.g. extend your stay, request late checkout, room service) including concierge and the ability to find local restaurants and attractions. A opção de vinculação às suas contas de produtividade permite experiências mais personalizadas, tais como alarmes sugeridos, avisos meteorológicos e aprendizado de padrões entre estadias.Optional linking to your productivity accounts open up more personalized experiences such as suggested alarm calls, weather warnings and learning of patterns across stays. Uma evolução da personalização da TV existente nas salas atualmente.An evolution of the current TV personalization experienced in room today.

  • Enterprise: experiências personalizadas de Assistente do Funcionário habilitado por voz e texto e integradas a dispositivos da empresa e a telas de conversa existentes (por exemplo, Teams, WebChat, Slack), permitindo que os funcionários administrem seus calendários, encontrem salas de reunião disponíveis, localizem pessoas com habilidades específicas ou realizem operações de RH.Enterprise: Voice and Text enabled branded Employee Assistant experiences integrated into enterprise devices and existing conversation canvases (e.g. Teams, WebChat, Slack) enabling employees to manage their calendars, find available meeting rooms, find people with specific skills, or perform HR related operations.

Princípios do Assistente PessoalVirtual Assistant Principles

Seus dados, sua marca e sua experiênciaYour data, your brand and your experience

Todos os aspectos da experiência do usuário final são seus e é você que os controla.All aspects of the end user experience are owned and controlled by you. Isso inclui a identidade visual, nome, voz, personalidade, respostas e avatar.This includes the branding, name, voice, personality, responses, and avatar. Os códigos-fonte do Assistente Virtual e das habilidades de suporte são fornecidos integralmente, permitindo que você os ajuste conforme necessário.The source code to the Virtual Assistant and supporting Skills are provided in full, enabling you to adjust as required.

O Assistente Virtual será implantado em sua assinatura do Azure.Your Virtual Assistant will be deployed within your Azure subscription. Portanto, todos os dados gerados pelo assistente (perguntas feitas, comportamento do usuário e outros) ficam inteiramente restritos à assinatura do Azure.Therefore, all data generated by your assistant (questions asked, user behaviour, etc.) is entirely contained within your Azure subscription. Confira a Nuvem Confiável do Azure para os Serviços Cognitivos e, mais especificamente, a seção do Azure na Central de Confiabilidade para obter mais informações.See Cognitive Services Azure Trusted Cloud, and more specifically the Azure section of the Trust Center, for additional information.

Gravar uma vez, inserir em qualquer lugarWrite it once, embed it anywhere

O Assistente Virtual utiliza a plataforma de inteligência artificial de conversação da Microsoft e, portanto, pode aparecer em qualquer canal do Bot Framework.The Virtual Assistant leverages the Microsoft Conversational AI platform and therefore can be surfaced through any Bot Framework channel.

Além disso, é possível inserir experiências na área de trabalho e nos aplicativos móveis (assim como carros, alto-falantes e despertadores) por meio do canal Direct Line.In addition, you can embed experiences into desktop and mobile apps (like cars, speakers, and alarm clocks) through the Direct Line channel.

Soluções com a mesma tecnologia do EnterpriseEnterprise Grade Solutions

A solução Assistente Virtual é criada com base no Serviço de Bot do Azure, no Serviço Cognitivo de Reconhecimento Vocal e na Fala Unificada com um amplo conjunto de componentes de suporte do Azure.The Virtual Assistant solution is built on the Azure Bot Service, Language Understanding Cognitive Service, and Unified Speech along with a broad set of supporting Azure components. Isso significa que você se beneficia da infraestrutura global do Azure, incluindo as certificações ISO 27018, HIPAA, PCI DSS e SOC 1, 2 e 3.This means that you benefit from the Azure global infrastructure, including ISO 27018, HIPPA, PCI DSS, and SOC 1, 2, and 3 certification.

Além disso, o suporte ao Reconhecimento Vocal é fornecido pelo Serviço Cognitivo LUIS, que dá suporte a um amplo conjunto de idiomas listados aqui.In addition, Language Understanding support is provided by the LUIS Cognitive Service which supports a broad set of languages listed here. O Serviço Cognitivo de Tradução fornece funcionalidades adicionais de Tradução Automática para ampliar ainda mais o alcance do Assistente Virtual.The Translator Cognitive Service provides additional machine translation capabilities to extend the reach of your Virtual Assistant even further.

Integrado e contextualIntegrated and Context Aware

O Assistente Virtual pode ser incorporado ao dispositivo e ao ecossistema, permitindo uma experiência totalmente integrada e inteligente.Your Virtual Assistant can be incoroporated into your device and ecosystem, enabling a truly integrated and intelligent experience. Com esse reconhecimento contextual, experiências mais inteligentes podem ser desenvolvidas para oferecer ainda mais personalização.Through this contextual awareness more intelligent experiences can be developed and deliver further personalization than otherwise possible.

Integração com assistentes de terceiros3rd Party assistant integration

O Assistente Virtual permite que você crie sua própria experiência exclusiva, mas também pode deixar o trabalho para o Assistente Digital escolhido pelo usuário final, dependendo do tipo de pergunta.The Virtual Assistant enables you to deliver your own unique experience but also hand-off to the end-users chosen Digital Assistant for certain types of questions.

Integração flexívelFlexible integration

A arquitetura de nosso Assistente Virtual é flexível e pode ser integrada a outros investimentos que você possa ter feito em funcionalidades de processamento de Fala ou de Linguagem Natural que se integram aos sistemas de back-end e APIs existentes.Our Virtual Assistant architecture is flexible and can be integrated with existing investments you may have made into device-based speech or natural language processing capabilities that integrate with your existing back-end systems and APIs.

Cartões AdaptáveisAdaptive Cards

Os Cartões Adaptáveis permitem que o Assistente Virtual retorne elementos da experiência do usuário (por exemplo, cartões, imagens, botões) junto com respostas baseadas em texto.Adaptive Cards provide the ability for your Virtual Assistant to return user experience (UX) elements (e.g. Cards, Images, Buttons) alongside text-based responses. Se a tela do dispositivo ou da conversa tiver uma tela, esses Cartões Adaptáveis poderão ser renderizados entre vários dispositivos e plataformas, oferecendo suporte à experiência do usuário quando apropriado.If the device or conversation canvas has a screen these Adaptive Cards can be rendered across a broad range of devices and platforms, providing UX support where appropriate. Exemplos de Cartões Adaptáveis podem ser encontrados aqui, com informações sobre as opções de renderização nesta documentação.Examples of Adaptive Cards can be found here with information on rendering options in the documentation here.

HabilidadesSkills

Além do assistente de base, existe um amplo conjunto de funcionalidades comuns que devem ser criadas pelos próprios desenvolvedores.In addition to the base assistant there exists a broad set of common capabilities which require each developer to build themselves. A produtividade é um ótimo exemplo de como cada organização precisa criar modelos de linguagem (LUIS), diálogos (código), integração (código) e geração de linguagem (respostas) para habilitar experiências comuns de calendário, tarefa ou email.Productivity is a great example where each organization would need to create language models (LUIS), dialogs (code), integration (code) and language generation (responses) to enable popular Calendar, Task or email experiences.

Isso fica ainda mais complicado pela necessidade de dar suporte a vários idiomas e resultados em uma grande quantidade de trabalho exigida de uma organização que esteja criando seu próprio assistente.This is then further complicated by the need to support multiple languages and results in a large amount of work required for any organisation building their own assistant.

Nossa solução Assistente Virtual inclui uma nova funcionalidade de habilidade que permite que novas funcionalidades sejam inseridas em um assistente personalizado somente por meio de configuração.Our Virtual Assistant solution includes a new Skill capability that enables capabilities to be plugged into a custom-assistant through configuration only.

Todos os aspectos de cada habilidade (modelo de linguagem, diálogos, código de integração e geração de linguagem) são totalmente personalizados por desenvolvedores, já que o código-fonte completo é fornecido no GitHub, juntamente com o Assistente Virtual.All aspects of each Skill (language model, dialogs, integration code and language generation) are completely customizable by developers as the full source code is provided on GitHub along with the Virtual Assistant.

IntroduçãoGetting Started

Consulte os tutoriais para saber como criar e implantar seu Assistente Virtual.Refer to the tutorials to learn how to create and deploy your Virtual Assistant.