Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The need for speech assistant

...

Capturing observations and data in Bahmni has been done primarily with the help of a keyboard and mouse. While this has worked until now, we wanted to explore faster methods for capturing patient data, which would enable to doctor to quickly capture the required data , thus providing increased consultation time with the patient (and reduce time on computer screens). In the long run, the speech assistant could also be enhanced in other areas of Bahmni like providing faster navigation, quick view of dashboards, etc.

Table of Contents
minLevel1
maxLevel7

The solution

...

...

After quick rounds of brainstorming activities, we converged on the idea to try out speech assistant for consultation notes and use it for initial user testing and general feedback. Some notable decisions were:

  • The button to initiate consultation box with speech assistant would be kept outside (i.e, on the patient dashboard) , so that the doctor could have a glance at the entire medical history of the patient in the patient dashboard and also capture consultation notes.

  • The consultation box would be a floating box and the doctor would be able to drag and move the box around on the screen according to the doctors convenience

  • The doctor can use the consultation box even from the patient dashboard or inside the consultation

  • Even when the doctor shifts tabs inside consultation session (example, medication, orders, etc) the floating box would remain as it is

  • The doctor can simultaneously record medications/diagnosis , etc inside consultation using keyboard and also record the notes at the same time.

  • The consultation box with speech assistant would be developed in a manner which ensures that it is decoupled from Bahmni and can be used by any other OpenMRS distro as a separate plugin.

Workflows for speech assistant

...

...

  1. Initiating the speech assistant

...

→ On the same consultation box

...

Barriers to adoption

...

While interacting with the doctors, we found the possible barriers that could lessen the adoption.

  • Doctors usually work in a noisy environment. Therefore, the speech to text should be capable enough to filter the ambient noises

  • Any technology or method that ensures speed in capturing information would likely be used by the doctors to reduce interaction time with the EMR and increase time for patient consultation. Along with speed, accuracy is also another critical factor to be considered. Right now, we are testing different models and settings to test the speed and accuracy

  • Doctors prefer writing on paper. Therefore, technologies like OCR, etc are likely substitutions

Technical overview

...

High Level Architecture Diagram:

...

Speech Assistant is bundled in Bahmni apps and is available at https://speech.mybahmni.in/

Setting up Speech Assistant Feature with Bahmni

...

  • Setting up Vakyansh:

  • Setting up Speech Assistant Frontend:

    • As Speech Assistant is a microfrontend, so to use it, corresponding bundle.js needs to be included in the script tag.

    • bundle.js can be availed either from this url, which contains the latest bundle, or while building the app present in the repository.

...

Widget Connector
overlayyoutube
_templatecom/atlassian/confluence/extra/widgetconnector/templates/youtube.vm
width400px
urlhttps://www.youtube.com/watch?v=i2R_odYHAeA
height300px

...

Next Steps (and limitations)

  1. Currently the language model been used by Vakyansh is normal English model. To understand medical words, model needs to be trained with the relevant vocabulary. Trained medical model then can be used by Vakyansh to get the proper text back.

  2. Vakyansh api works better when deployed in a GPU machine. One instance of api can easily serve upto 10 concurrent audio connections. If it needs to be increased further, the api needs to be scaled.

  3. If NLP library is applied to understand the meaning from the sentence, then the usecase could be extended to other consultation tasks like Medications, Symptoms, etc.