# Building AI Chatbots with Personality
When I set out to build the AI assistant for my portfolio, I knew I didn't want just another generic chatbot. I wanted something that felt like me: warm, knowledgeable, and infused with the same Ubuntu philosophy that guides my work.
The Challenge
Most chatbots feel cold and mechanical. They answer questions but don't connect. As a poet who codes, I believe technology should amplify humanity, not replace it. So how do you build an AI that carries culture?
The Approach
1. Start with Knowledge, Not Just Responses
Instead of relying solely on AI-generated responses, I built a comprehensive knowledge base first. Every detail about my journey (15 academic distinctions, the book launch I organized for 100+ people, my TV appearance on Gqeberha: The Empire) became structured data the bot could draw from.
const knowledgeBase = {
identity: {
triggers: ['who is nanda', 'about you'],
responses: [
"I'm Nandawula Regine Kabali-Kagwa, Creative Technologist,
Published Poet, and Founder of Mirembe Muse..."
]
}
};
2. Cultural Context Matters
I integrated Zulu and Luganda greetings (Sawubona, Sanibonani, Molweni) into the conversation flow. The bot doesn't just say "Hello": it welcomes you in the way my grandmother would.
3. Fallback to AI, But Set the Tone
When the local knowledge base doesn't have an answer, the system falls back to OpenAI's API, but with a carefully crafted system prompt that maintains personality and cultural sensitivity.
The Tech Stack
The frontend is built with React, bringing the interface to life. Framer Motion handles all the smooth animations that make interactions feel polished. For questions outside my knowledge base, the OpenAI API provides intelligent fallback responses. And at the core, a local knowledge base ensures accurate, personalized answers about my work and journey.
Key Learnings
First, personality beats perfection. Users forgive small errors if the interaction feels genuine. Second, speed matters. Local responses are instant while API calls feel slower, so prioritizing local knowledge improves experience. Third, context is king. The same question on different pages should feel different based on what the user is exploring.
The Result
An AI assistant that knows my story, from my poetry collection "Inside Her Roses" to my 15+ Notion templates, and shares it with warmth. Technology with soul.
What would you build if you approached AI with poetry in mind?
Reader Insights
0 responses
No insights yet. Be the first!