Inspiration
We were inspired by the growing demand for interactive and personalized AI experiences. Whether it’s for entertainment, learning, or practical assistance, people are increasingly turning to AI for engaging and meaningful interactions. We wanted to create a platform that combines creativity, fun, and utility, allowing users to chat with prebuilt characters, create their own, and get help with everyday tasks. This led us to develop NebulaBot, a versatile chatbot that bridges the gap between entertainment and assistance.
What it does
NebulaBot is an AI-powered chatbot platform where users can:
- Chat with prebuilt characters: Interact with personalities like Sykkuno (gaming) or the Code Debugging Assistant (technical support).
- Create custom characters: Design unique characters with personalized traits, backstories, and dialogue examples.
- Get assistance: Use assistant characters for tasks like troubleshooting, scheduling, or learning.
- Explore categories: Browse characters from categories like Anime, Gaming, Assistants, and more.
NebulaBot offers a seamless and engaging experience for entertainment, creativity, and practical help.
How we built it
We built NebulaBot using the following technologies:
- Frontend: Streamlit for a user-friendly web interface.
- Backend: LangChain to integrate Google’s Gemini LLM for generating conversational responses.
- Database: SQLite to store prebuilt character data.
- Environment Management: Python Dotenv for securely managing API keys.
The development process involved:
- Designing the UI/UX for character selection, creation, and chatting.
- Integrating the Gemini LLM to power character interactions.
- Building a database to store prebuilt characters and their details.
- Testing and refining the chatbot’s functionality and responsiveness.
Challenges we ran into
- LLM Integration: Ensuring the Gemini LLM generated consistent and context-aware responses for each character was challenging.
- UI/UX Design: Creating an intuitive and visually appealing interface required multiple iterations.
- Session Management: Handling persistent chat history and character data across sessions was tricky.
- Custom Character Creation: Designing a system that allowed users to define unique personalities and backstories while maintaining coherent interactions required careful planning.
Accomplishments that we're proud of
- Successfully integrating Google’s Gemini LLM to deliver engaging and personality-driven conversations.
- Building a user-friendly interface that makes character creation and chatting accessible to everyone.
- Creating a versatile platform that combines entertainment, creativity, and practical assistance.
- Developing a robust system for managing prebuilt and custom characters seamlessly.
What we learned
- AI Integration: We gained hands-on experience with LangChain and Google’s Gemini LLM, learning how to fine-tune responses for specific use cases.
- UI/UX Design: We improved our skills in designing intuitive and responsive interfaces using Streamlit.
- Database Management: We learned how to efficiently store and retrieve character data using SQLite.
- Problem-Solving: Overcoming challenges like session management and custom character creation taught us valuable problem-solving skills.
What's next for NebulaBot
- Persistent Storage: Save chat history and custom characters long-term using a cloud-based database.
- Multi-User Support: Add user authentication and separate chat histories for individual users.
- Advanced Customization: Allow users to upload character avatars or customize voice responses.
- External API Integration: Add features like weather updates, news summaries, or trivia games.
- Mobile App: Develop a mobile version of NebulaBot for on-the-go access.
NebulaBot is just the beginning. We’re excited to continue evolving this platform to make it even more engaging, versatile, and user-friendly!
Log in or sign up for Devpost to join the conversation.