DEV Community

Minyong Hwang
Minyong Hwang

Posted on

Message Explainer: Turn Confusing Messages Into Clear Next Steps

Why I built it

I often work with overseas customers and partners in English. Not everyone I work with is equally comfortable reading business messages in English, so colleagues sometimes ask for help understanding what a message means, what matters, and what action they need to take. I built Message Explainer to turn confusing messages into clear next steps.

The problem

Important actions are frequently buried inside polite language and background details. A reader may understand individual words but still miss the deadline, changed time, price, or required response.

What Message Explainer does

The user pastes a public or non-sensitive English message. Message Explainer returns four predictable sections:

  • WHAT DOES THIS MEAN?
  • WHAT MATTERS?
  • WHAT DO I NEED TO DO?
  • WHAT SHOULD I CHECK?

The product is positioned around MESSAGE → MEANING → PRIORITY → ACTION, not literal translation alone.

Why open-weight AI

The application runs HuggingFaceTB/SmolLM2-360M-Instruct locally through Transformers and PyTorch. It uses no paid AI API, external account, database, or message-history service. Keeping the model small made the prototype practical on a CPU and reduced the risk of a late model migration.

How it works

The model receives the message with a strict four-section contract and an instruction not to invent facts. A deterministic post-processing layer enforces the headings, supplies a grounded Korean meaning for several common message patterns when the small model answers only in English, and restores omitted dates, times, amounts, links, or email references directly from the source.

This hybrid design favors traceable source facts over polished but unsupported prose.

Demo

Synthetic input:

Your appointment scheduled for October 10 at 3 PM has been moved to October 12 at 2 PM. Please confirm the new time by October 8.

The app explains in Korean that the appointment changed, highlights the new date and time, identifies the confirmation action, and preserves the October 8 deadline. No real personal information is used.

Tech stack

  • Python 3.12
  • HuggingFaceTB/SmolLM2-360M-Instruct
  • PyTorch and Transformers
  • Gradio
  • pytest

What I learned

The first concept was a screenshot-based Screen Guide. Two small open-weight vision models could sometimes name a screen but could not reliably provide safe, actionable guidance, so that path failed its quality gate. The text-based pivot worked, but the small language model still omitted some grounded facts and sometimes answered in English. A narrow source-preservation layer made the behavior more reliable without adding a paid service or replacing the model.

Limitations

The model is intentionally small. Its Korean output is not a full translation service, and only common price-change, appointment-change, and submission-deadline meanings have deterministic Korean fallbacks. Users must compare the result with the original message. Medical, financial, legal, security, credential-bearing, private, and other high-risk messages are outside the supported scope.

Repository / Demo

Top comments (0)