Inspiration
Luna was born from a very personal experience.
I moved to the United States as an international student without my family. Like many students living far from home, there were moments when I simply wanted someone to talk to. Not just another chatbot on a screen, but a physical companion that could listen, respond naturally, and make conversations feel more human.
The name "Luna" was inspired by a friend's cat. Luna is incredibly calm, comforting, and always brings a sense of companionship. That feeling inspired me to create an AI companion that could provide emotional support through conversation.
My goal is not to replace human relationships, but to create technology that helps people feel a little less alone.
What it does
Luna is a physical AI companion running on an NVIDIA Jetson Orin Nano.
It listens to spoken conversations, understands natural language, remembers recent context, and replies using realistic speech. Instead of relying on a screen, Luna is designed to communicate naturally through voice, making interactions feel more like talking with another person.
The system supports conversational memory, multiple AI providers, and can generate varied responses instead of repeating identical phrases.
How I built it
The project was built in Python on an NVIDIA Jetson Orin Nano.
Speech recognition is handled locally before sending requests to OpenAI's Responses API. The project also supports Gemini through a provider abstraction layer.
During development I used OpenAI Codex extensively to help refactor the architecture, integrate the Responses API, improve conversational memory, and validate code changes.
The application includes provider abstraction, short-term memory, configurable AI models, voice synthesis, and a modular architecture for future expansion.
Challenges I ran into
The biggest challenge was making conversations feel natural instead of robotic.
Reducing repetitive responses, managing conversational memory, integrating multiple AI providers, and balancing latency with response quality required several iterations.
Another challenge was building everything on embedded hardware while keeping the interaction responsive.
Accomplishments that I'm proud of
I'm proud that Luna became a real physical AI companion instead of just another chatbot.
It can now hold more natural conversations, remember context, run on embedded hardware, and demonstrate a practical use of modern AI models in an everyday companion.
What I learned
This project taught me a great deal about conversational AI, embedded systems, API integration, software architecture, and building reliable AI applications using OpenAI tools.
It also showed me how important thoughtful design is when building technology intended to support people emotionally.
What's next for Luna
Future versions will include long-term memory, interruption handling during speech, streaming responses, multi-user profiles, mobile integration, and richer emotional interactions.
My long-term vision is to build an AI companion that feels genuinely present while respecting user privacy and remaining helpful in everyday life.
Log in or sign up for Devpost to join the conversation.