Introducing MindMeld 4.3. It’s been an incredible year for… | by MindMeld | MindMeld Blog | Medium

feature-image

Play all audios:

Loading...

It’s been an incredible year for MindMeld since open-sourcing the platform in 2019, and we’re witnessing a tremendous period of growth for conversational interfaces. We’re excited to


announce the release of MindMeld 4.3, which includes many new and innovative conversational features. As more teams and partners inside and outside of Cisco have adopted MindMeld and


developed their conversational use cases, we’ve gathered feedback and ideas to incorporate into the platform. We’ll highlight a few of the major updates here — for the complete and updated


documentation and API references, visit our documentation site. 1. DEEP EMBEDDERS FOR QUESTION ANSWERING Over the past few years, there’s been a tremendous amount of development on deep


learning-based semantic embedders. Previously, MindMeld’s question answerer relied purely on text-based information retrieval. Deep learning-based dense embeddings (character, word, or


sentence) are, in many cases, better at capturing semantic information than traditional sparse vectors. Pretrained or fine-tuned embeddings can find the best match in the knowledge base,


even if the search token isn’t present in the uploaded data. To leverage semantic embeddings, you can update your question answering config to include only the embedder or a combination of


embedding and text signals for search. You can use one of the provided embedders (sentence transformers based on BERT, RoBERTa, DistilBERT, or GloVe word vectors), or use your own. If your


application mainly deals with standard English vocabulary, one of the provided embedders will likely work well, but if the text you are searching against has quite a bit of domain-specific


vocabulary, you may benefit from training or fine-tuning your own embedder on your data. For more information, check out our guide on working with the knowledge base and question answerer.


2. CUSTOM ACTIONS IN DIALOGUE MANAGER MindMeld 4.3 introduces custom actions, which allow MindMeld developers to further separate their business logic from the conversational application.


This paradigm shift helps reduce the barriers to build and deploy conversational applications. Suppose a team building a MindMeld application wants to integrate it with the rest of their


microservices. Their microservices may be written in Java, and the developers would want to reuse as much logic as possible. Because the MindMeld application is in Python while the rest of


the services are in Java, it’s more desirable to keep a thin Python microservice for NLU while keeping as much business logic in Java as possible. With MindMeld 4.3, developers can use


custom actions to shift the responsibility of fulfilling business logic to services outside of MindMeld applications, and these services can be implemented in any language. The developers


can specify the exact conditions, such as matching a certain domain or intent, to execute the custom actions. The MindMeld application will interact with the custom action server through


HTTP requests. For more information, check out our guide on working with custom actions. 3. AUTOMATIC SLOT-FILLING FOR ENTITIES Slot-filling and information fulfillment are major components


of many conversational interfaces. For example, if we’re building a food ordering application, we want to know what meals the customer wants to order and how they want them prepared.


MindMeld 4.3 provides useful functionality for automatically prompting the user for missing entities or slots required to fulfill an intent, with minimal code on the developer side. This is


done by applying the @APP.AUTO_FILL decorator to any dialogue state handler that requires entities to be obtained before applying the functionality defined within. The functionality can also


be invoked by a direct call to the feature at any point inside the handler. Developers can define their custom responses and user input validation schemes, or rely completely on the


built-in validation methods. For more information on using automatic slot-filling, check out our guide on working with the dialogue manager. 4. NEW BLUEPRINT FOR BANKING APPLICATIONS


MindMeld 4.3 introduces a brand new blueprint application. This blueprint implements an intelligent assistant that provides support for clients of a commercial bank. Users could use it to


securely access their banking information and complete tasks as if they’re talking with a teller. They would be able to check balances, pay off credit card debt, transfer money, and carry


out various other banking operations they may perform daily. One of the benefits of MindMeld is the ability to have complete control over your data. This blueprint showcases how enterprises


like banks with strict data policies can build useful and secure conversational interfaces. For more information, check out our guide on the banking blueprint. 5. CONFIGURING LANGUAGE AND


LOCALE FOR YOUR APPLICATION In MindMeld 4.3, you can configure your application with the desired language and locale to correctly resolve system entities like time and use the appropriate


timestamp for a holiday. For more information on configuring language and locale, check out our guide on internationalization. We welcome every active contribution to our platform. Check us


out on GitHub, and send us any questions or suggestions at [email protected].