Our inspiration for Triagify came from numerous conversations with healthcare professionals, including primary care physicians and the founder of Nicolette. We also spoke with individuals involved in patient safety and analyzed sample EHR implementations with FHIR. The main issue we identified was the overwhelming amount of data coming into healthcare command centers, leading to medical errors due to the difficulty in sorting through this influx of data. Current triage accuracy rates are alarmingly low, at 60 percent or below, a statistic we aim to improve with our project.
What it does
Triagify is a web application designed to assist command center workers in hospitals with patient triage. It provides recommendations based on the ESI index, using a combination of patient-provided data and EHR system data. When a patient hits the call button, we take pre-diagnostic data from them. The patient view is streamlined, allowing patients to verbally express how they're feeling and provide video and audio data from their room. This data is interpreted using a fine-tuned LLaMA 2 7B model and translated into chief complaints. Alongside data from the EHR system (such as vitals, medical history, previous conditions, etc), a machine learning model assigns an ESI triage level to each patient. The command center view presents a Kanban board view of patients with different ESI/triage levels assigned to each.
How we built it
We built Triagify using a combination of machine learning and natural language processing techniques. On the frontend, we designed out a user interface by wireframing using Figma and then translating this into a web application using Next.js and Tailwind CSS. For the backend, we wrote routes using Flask and created the data processing pipeline using Python. We used a fine-tuned llama 2 7b model to interpret patient-provided audio and video data, translating this into chief complaints. We then combined this data with information from the EHR system, including patients' vitals, medical history, previous visits, demographics, and current medications. A machine learning model was then used to assign an ESI triage level to each patient.
Challenges we ran into
One of the main challenges we faced was ensuring the accuracy and reliability of our machine learning model. We had to ensure that the model was correctly interpreting the patient-provided data and accurately assigning ESI triage levels. Additionally, ensuring the privacy and security of patient data was a significant concern, particularly given the sensitive nature of the data being processed. Many of the datasets we came across for training our model were not able to be accessed without taking a patient safety course or having research credentials.
Accomplishments that we're proud of
We're proud of the potential impact Triagify could have on improving patient safety and reducing medical errors. By providing a more efficient and accurate method of triaging patients, we hope to significantly improve the current triage accuracy rates. We're also proud of the machine learning model we developed, which combines patient-provided data with EHR system data to assign ESI triage levels.
What we learned
Through this project, we learned a great deal about the challenges facing healthcare professionals in managing the influx of data in command centers. Even from the patient side, a lot of the data is obfuscated through medical jargon. They're expected to make life altering decisions based on data they don't understand, which seems counterintuitive. We also gained valuable experience in developing and implementing machine learning models, particularly in the context of healthcare applications.
What's next for Triagify
Looking ahead, we plan to continue refining and improving Triagify. We aim to further enhance the accuracy of our machine learning model and explore additional features that could further assist command center workers. In the future, we want to expand past only triaging when patients hit the button. A good venue to explore might be all the wasted time in the ER where people wait for doctors that could be used to get pre-diagnostic data. Then, we could run our data processing backend and improve the triage pipeline universally in hospitals.