I was sitting at my kitchen table, squinting at a Word document full of my mother‑in‑law’s recipes on my phone. Everything was there: pozole, chilaquiles, mole—but the file was cumbersome, the formatting inconsistent, and there was no extra context. I couldn’t ask it how to scale a recipe or swap an ingredient. That frustration sparked an idea: what if anyone could talk to this archive? What if I could share the warmth of my Mexican in‑laws’ kitchen with the world?
That spark became SazónBot, a bilingual AI chatbot I built to honor the García family heritage that welcomed me while embracing modern technology. This is the story of how I, not Mexican myself but lucky enough to marry into a family that shares its culinary wisdom, wove together memory and machine to create a chef you can talk to.
From Digital Files to Rich Data
It all began with a simple question: how could I transform a set of clunky Word documents into something living and useful without losing their soul? The answer lay in blending tradition with technology. Using Python and FastAPI, I developed a backend that can parse and host data extracted from digital recipes. I built a vector store with FAISS, enabling semantic search so you can ask “¿Cómo hago enchiladas?” and get a nuanced answer.
But feeding the bot isn’t enough—I needed it to be safe and reliable. I wrote custom tools in LangChain to handle recipe scaling, ingredient substitutions, and even web searches for cooking techniques. Along the way, I added a safety module to filter out harmful prompts and session memory to make conversations feel personal.
Teaching a Bot to Speak Two Languages
One of the biggest challenges was giving the bot a bilingual voice. In my adopted community, we often switch between English and Spanish, so SazónBot had to do the same. By integrating OpenAI GPT-4o-mini and building a multilingual vector store, I achieved fluid code‑switching. You can start in Spanish—“¿Cómo preparo tacos al pastor?”—and seamlessly transition to English. This wasn’t just a feature; it was a promise that everyone, regardless of language, could feel at home in SazónBot’s kitchen.
Bringing the Experience to Life
With the backend humming, it was time to create a beautiful front end. Using Next.js and Tailwind CSS, I built a responsive interface that feels like flipping through a recipe book. Embedded YouTube videos and images bring dishes to life, while an intelligent agent behind the scenes coordinates 11 tools—from scaling recipes to finding cooking videos.
Deploying the site on Vercel came with a trade‑off: the free tier means the first request may take a few seconds. But once the bot warms up, the experience is seamless. It even remembers your session so it can follow up on conversations: “¿Te gustó el mole? Would you like to scale it for six people?”
Overcoming Challenges and Making It Real
As with any passion project, I hit bumps along the road. Setting up the development environment required juggling multiple technologies: Node.js for the front end, Python for the back end, and environment variables for API keys. And like that tricky “Add to Calendar” button I sweated over in another project, each feature—be it recipe scaling or ingredient substitution—was its own mini‑challenge.
But with perseverance, I deployed a living, bilingual cookbook. The result? A chatbot that feels like chatting with your mother‑in‑law, powered by AI. I achieved my mission: bridging a heritage I married into with technology to bring authentic Mexican recipes to anyone with an internet connection.
So next time you’re craving chilaquiles or need a substitute for epazote, open SazónBot. You’ll find more than a recipe—you’ll find a piece of my extended family’s story.
Are you interested in the code? Visit my GitHub
Top comments (1)
Nice! The two languages at once in the beginning was a little overwhelming, but I asked for English only and it was smooth sailing. I subbed in partial replacement for an ingredient then scaled the recipe, no math errors!
Great job.