💫 Inspiration

Around 80% of medical equipment in developing countries is donated, according to the WHO. This charity sounds great on paper, but there's a catch -- around 50-80% of it is out of service or broken. (for comparison, that number is around 1% in most developed countries) While the charities making these donations no doubt have good intentions in mind, much of the life saving potential here is wasted, because not only is there a lack of working medical equipment, there is also a lack of support & repair.

A good portion of donations are older models that may already have seen many years of use and by now are on their last legs. Plus, manufacturers may not even have any sort of local presence in places like Africa, and when you add in that hospital staff are rarely trained in maintenance & have limited technical expertise, when these machines break ... well, they stay broken.

ℹ️ What it does

Jua (from the Swahili for "sunshine") is an AI-powered app designed to enable hospitals in lower-income & developing countries to troubleshoot & fix basic problems that may have otherwise taken their equipment out of service, unlocking the potential of these donations.

💬 Chat

The main focus of the app is Jua Chat, an AI-powered assistant using OpenAI's GPT3.5 model. Our assistant lets users ask their questions and get solutions fast, rather than A.) trying to contact manufacturers that may not be able / willing to help or B.) reading hundreds of pages of dense, hard-to-understand manuals. (which is especially difficult if you're not a native English speaker!)

Chat is able to access information from thousands of pages of manuals and can pull that information to provide detailed support information & answers. It can even provide references to where in the document the information was found for further reading & fact-checking if necessary!

By empowering medical staff to solve these sorts of basic problems, we can prevent a good chunk of crucial, life-saving equipment from ending up in a junkyard!

🙋 Connect

We also built Connect, a simple platform where users can go for in-person support if needed. The goal is to bring together those with some experience working with these machines and those who have problems bigger than what Jua Chat is able to help with. Users are able to filter by specializations & location to find experts that are able to help them.

In many countries, there is no official support network, so through this platform medical professionals are able to create their own, grassroots support network, all for a fraction of the cost that would likely be charged by first-party service.

🛠️ How we built it

alt text The user interface of Jua was prototyped in Figma first before actually building it. The frontend was written in Vue.js and used Tailwind CSS for styling. Credit to Preline UI for providing an amazing set of premade components!

The backend was built around FastAPI and uses paper-qa combined with some custom prompts.

❓Challenges we ran into

For me personally, the biggest challenge by far was simply time. My initial plans were a little bit too ambitious, and I definitely struggled to fit everything into just a few short days. (the code base is definitely reflects that - it's a mess ...)

I also struggled a little bit to integrate the AI Q&A functionality into the app. I tested using multiple different models off the Hugging Face Hub but the quality wasn't as great as I'd hoped; I then was going to try LangChain but decided I didn't have enough time for it.

💪 Accomplishments that we're proud of

I'm personally quite proud of the design of the app, I think it's some of the better work I've done recently. Mostly, though, I'm proud that I was able to set a plan and fit in everything I wanted to make for this app despite external factors limiting the number of hours I could put in.

I'm also proud of my work on the backend portion of the website, especially the exploration & research I did into LLMs & NLP in order to get everything working.

📚 What we learned

I honestly never thought I would be spending time during a hackathon reading reports on medical device availability in sub-Saharan Africa, but here we are! Even though the U.S. healthcare system is notoriously dysfunctional, doing this research really gives you some perspective, and in the end, I really am fortunate to live in a country where hospitals are, at the very least, well-equipped and well-staffed.

On the technical side: I learned a lot about LLMs & NLP before I finally just decided to work with a more pre-built solution for Jua Chat. For me, NLP is definitely one of these most interesting areas of AI, and when you combine that with how quickly it moves nowadays, I'm happy I got the chance to educate myself a little bit!

🔮What's next for Jua

In the future, I'd like to improve the question answering capability a little bit. While I'm satisfied with the results as they stand right now, there's of course always room for improvement. I'd also like to try some other models for text generation - Meta's new LLaMA 2 has especially caught my eye ...

The next improvement on the roadmap: currently Jua is built using web technologies and requires internet access. While this is faster to prototype (for me personally at least), it's not optimal if you have limited internet access like many areas of developing countries - therefore I'd like to rewrite this to be a fully-fledged native app with offline capability.

Tying into that - many people using this will not have the latest iPhone or Samsung; they will likely be using lower-powered devices that may struggle to run a massive language model, so the choice is either to have a low-powered model that may give low-quality results running locally, or a more powerful one in the cloud that would require internet access. Neither of them is a great option, so there remains some more work to be done here. alt text

Built With

Share this project:

Updates