-
Notifications
You must be signed in to change notification settings - Fork 1
1.1 Patch Notes
- Version 0.5.7 (August 11, 2025)
- Version 0.4.4 (April 26, 2025)
- Version 0.3.4 (April 24, 2025)
- Version 0.2.1 (April 22, 2025)
- Version 0.1.0 (April 21, 2025)
Major update featuring complete modular architecture refinement, enhanced chat functionality, and comprehensive AI intelligence systems integration.
- Enhanced Modular Organization Enhanced Modular File Organization
- Chat System Updates Chat Module and API Integration Updates
- Memory Management Complete Memory Management System
- Advanced Preferences Advanced Preferences Module
- Interest Tracking Dynamic Interest Tracking System
- Mood Detection Hybrid Mood Detection & Context
- Thinking Module Inner Thoughts and Cognitive Processing
Refined and perfected the modular architecture with complete encapsulation and clean interfaces:
- Complete Module Separation - All systems properly isolated in dedicated folders
-
Clean Import Structure - Proper
__init__.pyfiles with well-defined exports - Encapsulation - Each module handles its own concerns with minimal coupling
- Scalable Architecture - Easy to extend and maintain individual components
- Professional Structure - Industry-standard Python package organization
Major improvements to chat functionality and API integration:
- Enhanced BunnyChat Integration - Seamless integration with all intelligence modules
- Improved Chat History Handling - Better conversation persistence and retrieval
- Updated API Compatibility - Full compatibility with latest LM Studio API
- Context-Aware Responses - Responses now incorporate user preferences, interests, and mood
- Performance Optimizations - Faster response times and better resource management
Comprehensive three-tier memory architecture for persistent user context:
- Three-Tier Storage - Separate storage for preferences, interests, and important memories
- User Profile Management - Individual profiles with persistent data storage
- Memory Search & Retrieval - Efficient context retrieval for enhanced conversations
- Conversation Summaries - Automatic summarization and storage of important conversations
- Data Persistence - Reliable JSON-based storage with proper error handling
Sophisticated preference extraction with hybrid detection approach:
- Hybrid Regex/NLP Detection - Combines pattern matching with natural language processing
- Confidence Scoring - Weighted confidence levels for preference reliability
- Four-Tier Classification - Loves, likes, dislikes, and hates with appropriate weighting
- Context-Aware Extraction - Considers conversation context for accurate detection
- Memory Integration - Seamless storage and retrieval through memory system
Intelligent interest detection and tracking across multiple categories:
- 10-Category Classification - Gaming, cooking, art, music, fitness, travel, tech, movies, reading, pets
- Sentiment Analysis - Positive/negative sentiment detection for accurate interest scoring
- Interest Decay System - Natural decay of interests over time for dynamic tracking
- Conversation Enhancement - Suggests relevant topics based on tracked interests
- Trend Analysis - Detects changes in interest patterns over time
Advanced mood detection with dynamic context management:
- Hybrid Detection Approach - Enhanced regex patterns with transformer model fallback
- Dynamic Context System - Temporary mood observations with natural decay
- Negation & Intensity Handling - Sophisticated pattern matching for complex emotions
- GPU Acceleration - Lightweight transformer models for complex mood analysis
- Context Integration - Mood context seamlessly integrated into conversation flow
Revolutionary cognitive processing system for enhanced AI reasoning:
- Inner Thoughts Generation - AI generates internal observations for contextual awareness
- Speculative Thinking Framework - Foundation for advanced cognitive processing
- Comprehensive Integration Bridge - Connects all user context systems seamlessly
- Context Aggregation - Combines preferences, interests, mood, and memory for rich context
- Future-Ready Architecture - Designed for evolution toward advanced cognitive capabilities
- LM Studio Compatibility - Works within API constraints while maximizing functionality
Enhanced integration between all modules for seamless operation:
- Unified Context System - All modules contribute to comprehensive user understanding
- Clean API Interfaces - Well-defined interfaces between all components
- Performance Optimization - Efficient data flow and minimal redundancy
- Error Handling - Robust error handling across all module interactions
- Extensible Design - Easy to add new modules and capabilities
Overhauled the browser UI to make it more visually pleasing and user friendly.
- Buttons Buttons
- Chat Window Chat Window Improvements
- Text Input Text Input Improvements
- User Profile Management User Profile Management
- Style Improvements Style Improvements
- Bug Fixes Bug Fixes
Updated the buttons to be more visually pleasing and user friendly. The Listening (mic) and self-prompting (timer) buttons now change colour to indicate if that feature is on or off, and the status of these features are clearly visible to the user just above the buttons.
The chat window now has a scrollbar to make it easier to read the conversation, and the chat bubbles are now a bit larger and more visually pleasing. A scroll to bottom button has been added to the chat window to make it easier to return to the current position in the conversation. The chat window now scales with the size of the text input.
Added a text input feature to allow for typing messages to the AI, which will continue to use TTS to reply to the user. Text input now scales with the size of the written message for easier readability, and a scrollbar was added in case it gets too long. Send button sends the text message directly to the AI in the same way as voice input, in the same queue. Both text input and STT can be used at the same time.
Manually input and switch the user profile, allowing for the AI to be more personal in conversation as well as "remember" things relevant to each different user.
Updated the style of the UI to be more visually pleasing and user friendly with the help of updates to the html, css and javascript files. Added AJAX for better seamless functionality. More UI improvements to come in the future, such as dark/light mode and possibly other themes and buttons as needed.
- Fixed a bug where the chat window would not allow scrolling while chat was open.
- Fixed a bug where ending chat would redirect to a blank html page with only the "chat ended" status.
- Fixed a bug where AI messages would sometimes duplicate or attempt to do live text response streaming at the same time as a final AI message.
- Fixed a bug where the chat window would flash white and refresh too often when a new message was added to the chat window.
- Other minor updates.
- User Profiles User Profiles
- Long Term Memory Long Term Memory
- UI Improvements UI Improvements
- Bug Fixes Bug Fixes
Integrated a user profile module, enabling the app to save relevant information about the user to a json file. This includes things like preferences (likes and dislikes), hobbies, interests, important dates, and anything else that might be relevant to the user. The app will use this information to make the conversation more personalized to the user.
One of the biggest "problems" with LLMs as chatbots is the limitations of the context window, as well as not being able to retain memories from one conversation to the next. Implementing long term memory would allow the AI to remember things across conversations, be able to keep conversations going and be more useful in a conversation.
At the moment I only have the base framework set up, with a simple memory module, and a preferences extraction module.
Some improvements and additions have been made to the UI, including:
- A more visually pleasing UI, with a side bar.
- Added more buttons for better control (listening on/off, timer on/off, clear chat, end chat)
- Added manual User ID input for changing the user profile.
- Added names to the chat bubbles.
There are still more improvements to make as I go along, but this is a good start. Will likely add light/dark mode and other things but what matters most right now is that I have a working UI that allows a visual text output of the chat and ways to control/test it.
Some minor bug fixes/corrections have been made, including:
- Fixed the self prompt timer so that it waits for audio to finish playing before restarting.
- Fixed the self prompt timer for the LLM so it doesn't self prompt when the user is speaking/sound is detected.
- Fixed the TTS queue so that new audio waits for previous audio to finish before playing (preventing cut off).
- While TTS is playing, STT still gathers transcriptions and consolodates them into one, to avoid creating too many transcriptions and a backlog.
I have integrated the very bare bones of a module for the management and usage of voice commands for my virtual assistant. So far, I have only added the ability to use some phrases to get the attention of the chatbot via using the command as a part of prompt engineering.
- Hey Bunny
- Okay Bunny
- Bunny
- Hey Bun Bun
- and a few more
- Removed text streaming for both live transcriptions via STT as well as the live streaming text from the LLM response to reduce latency.
- Optimized STT settings to reduce lag and latency when transcribing longer audio.
- Made sure TTS queue does not cut off currently playing audio and bump up the next item in queue.
- Optimized the VAD settings to wait 1.5 seconds of silence before deciding to send transctription to the LLM. (Was too hasty.)
- Added a confidence filter for STT to significantly reduce the amount of "false positives" where it mistakens white noise for speech, trying to fill it in with "Thank you.", "Thank you for watching", etc.
- Fixed the self prompt timer for the LLM so it doesn't self prompt when the user is speaking/sound is detected.
- Fixed the self prompt timer so that it waits for audio to finish playing before restarting.
- Removed the unnecessary div box from the HTML.
- Removed live streaming of text, messages now display once they are done.
And other general minor edits and bug fixes.
-
Speech to Text: Transcribes audio from a microphone into text using the
faster-whisperlibrary. -
Text to Speech: Converts text into speech using the
openai-edge-ttslibrary. - Voice Activated Detection: The LLM self-prompts and tries to carry the conversation alone to avoid awkward silence, but will not self prompt if the user is speaking. Transcription only happens when VAD occurs.
-
Web Interface: The web interface with
Flaskallows users to see the transcription and read to the reply in real-time in a browser window. Also gives you buttons to turn transcription/mic on/off, and clear the conversation in the browser window. (Does not delete conversation history with the LLM, you'd need to restart the app for that.)