Training Mika-X's Brain: testing v01

Category: AI, Human-Robot Interaction, Machine Learning, Neural Networks, Deep Learning

Here's a little glimpse into v.01 of Mika-X Companion Chat, an app I'm putting together, that will grow (eventually), into a full-fledged personal assistant that knows you better than you know yourslef. If you let her, of course... 😄 But all big things have small beginnings. Since Mika is being created with HRI in mind, allowing for as natural interaction as possible, here is the list of things implemented in v.01:

Mika-X Companion v01 - features


a) Emotionally-Aware Responses (work in progress)
Mika understands not just what you say, but how you say it. Utilizing voice recognition, if you say "I like you," she can now analyze the emotion in your voice to give a contextually appropriate answer.

  • A happy, positive tone will get an enthusiastic and caring response
  • A neutral tone will get a calculated, informative response.
  • A hesitant or negative tone will make her gently inquire if everything is okay, showing concern
b) Multi-Turn Conversations & Follow-Up Questions
While perfectly handling single questions and answers, Mika can engage in multi-step conversations, where she asks for clarification or your preference.

c) Displaying Images and Playing Sounds
Mika can display images along with her response, or play you some music. Or both.

d) Voice & Text Modes
For convenience, you can switch between Voice mode (where you have a conversation with Mika, currently using Piper TTS) and quiet Text Mode, anythime during conversation.

e) Companion Modes (work in progress)
Perhaps the most significant new feature is the addition of Companion Modes. Mika is not just a passive assistant waiting for your questions. She's proactive from the get go. The moment the application starts, Mika greets you first, asking how you're feeling. Based on your response, she can enter one of several dedicated modes:

  • "Cheer Up" Mode: If you say you're sad, she'll show her dance moves, offer cute distractions or a listening ear 🙌
  • "Relaxation" Mode: If you're feeling stressed, she will guide you through a series of calming options, like soothing music, breathing exercises or even crash-course in yoga 🎶
  • "Sensual" Mode: If you tell her you miss her, the conversation will take a more intimate and romantic turn, which go go pretty far if you play your cards right 😉
f) The Romance Points (RP) System
To create a real sense of a developing relationship, I added the Romance Points (RP) system. Many interactions now have a point value. This system is crucial because it allows Mika's conversations to evolve. As your RP score increases, you will unlock different, more intimate, and trusting dialogue options that wouldn't be available at the start. It creates a genuine feeling of earning her affection and trust over time. 💕


What's coming in v02?


Mika's kiss

Here are the main things I plan for v02. Currently, Mika's "brain" is based on a collection of JSON files. The next natural step will be to utilize the power of LLM to elevate her understaning and ways of expression, limiting the need for using fallback responses.

a) Implementing a combination of RAG with Function Calling - a combination of natural language with specific results that kick in when necessary, with LLM acting as NLU (Natural Language Understanding) & Dialogue Manager
b) Utilizing Threading for Performance - so long-running tasks happen in parallel and don't block the main application
c) Memory and Continuity - enabling Mika to remember the last mode she was in and your preferences.
d) Further Fine-tuning - improved facial/voice models
e) Improved Talking Animation and Overall Graphics - smoother animation, more realistic movement, potentially lip-synching (looking into it)


Is there anything you would like to see in upcoming versions of Mika? Let me know.

A lot of new stuff coming, so make sure to follow any of my social media accounts for heads up when the next Lab entry is coming. Cheers!

- Adam

Share:

Restricted Area Access

Enter authorization code to proceed: