ভেতরে কী হয়: ৬ ধাপের AI হারনেসInside: the 6-step AI harness
যা চেনে: Knows:
ফর্মবন্ধুFormBondhu
ফর্ম বা দরখাস্তের ছবি দিন। Gemma 4 পড়ে বলবে কেন ফেরত আসবে, বাংলায় ঠিক করার উপায় দেখাবে, আর দরখাস্ত নতুন করে লিখে দেবে।Snap a filled form or application letter. Gemma 4 finds what will get it sent back, tells you how to fix it, and rewrites your letter.
গল্পটা পড়ুনRead the story আর্কিটেকচার দেখুনView the architecture
Gemma দেখে, কোড সিদ্ধান্ত নেয়।Gemma sees, code decides.
ভেতরে কী হয়: ৬ ধাপের AI হারনেসInside: the 6-step AI harness
মডেলEngine
যা চেনে: Knows:
প্রথম সেমিস্টারে কয়েক দিনের ছুটির দরকার হয়েছিল। দরখাস্ত কার বরাবর লিখব, কোন ফরম্যাটে, সাথে কী দিতে হবে, কেউ বলে দেয়নি। ঠিকঠাক করে জমা দিতে কয়েকবার যাওয়া-আসা করতে হয়েছিল, শুধু একটা ছুটির দরখাস্তের জন্য।
In my first semester I needed a few days of leave. Nobody told me who to address the application to, what format it needed, or what to attach. Getting one simple leave application right took several trips to the office.
ক্যাম্পাসে প্রায় সবারই এমন গল্প আছে: ভুল অফিসে দরখাস্ত, ভুল ফরম্যাটে তারিখ, বাদ পড়া স্বাক্ষর। কুমিরা ক্যাম্পাসে প্রতিটি ভুল মানে আরেকবার লম্বা বাসযাত্রা। ফর্মবন্ধু সেই সমস্যার জন্য: অফিসে যাওয়ার আগেই ফোনে ছবি তুলে ভুলটা ধরা, বাংলায় ঠিক করার উপায় জানা, আর দরকার হলে দরখাস্তটা নতুন করে লিখে নেওয়া।
Almost everyone on campus has a story like this: the wrong office, a date in the wrong format, a missing signature. At the Kumira campus every mistake means another long bus ride. FormBondhu is for that moment: photograph the paper before you go, see what will get it returned, read the fix in Bangla, and get the letter rewritten if needed.
একটি যাচাই যেভাবে চলে, ক্লায়েন্ট থেকে মডেল পর্যন্তHow one check flows, from client to model
Interfaces
multipart image ↓ POST /api/check
API: FastAPI on Vercel Fluid compute (Python 3.12, maxDuration 180 s)
async generator ↓ harness.run()
Harness: app/harness.py, app/rules.py
Steps 4, 5 and 6 run concurrently (asyncio.as_completed). Gemma sees, code decides.
httpx async ↓ JSON mode, thinkingLevel minimal, retry + backoff on 429/5xx
Engines: app/gemma.py (open-weights only)
Ground truth and quality