Repository navigation
Releases: devemree/Mem-LLM
Release list
v2.5.1 — Fix graph memory and API server on a clean install
Dependency fixes. Two features were broken for anyone installing from PyPI.
Graph memory silently did nothing. pydantic was imported unconditionally but never declared as a dependency, so on a clean pip install mem-llm the import failed, GraphStore and GraphExtractor disappeared from the public API, and enable_graph_memory=True became a no-op. It only appeared to work if pydantic happened to be pulled in by something else.
The API server could not be imported. The upload endpoint uses File/Form, which FastAPI implements with python-multipart — missing from the api extra, so import mem_llm.api_server raised RuntimeError after pip install mem-llm[api].
Both are now declared. No API or behavior changes — if 2.5.0 worked for you, 2.5.1 works the same.
pip install --upgrade mem-llm
**Full Changelog**: https://github.com/emredeveloper/Mem-LLM/compare/v2.5.0...v2.5.1Mem-LLM v2.5.0
Mem-LLM v2.5.0 focuses on local-first LLM workflows, OpenAI-compatible backends, and stronger memory management.
Highlights:
- Added OpenAI-compatible API support for local providers.
- Added llama.cpp backend support for GGUF-based local inference.
- Added Memory Router for more controlled memory context handling.
- Added Temporal Graph Memory for time-aware facts and updates.
- Simplified backend alias handling and reduced duplicated code.
PyPI:
https://pypi.org/project/mem-llm/2.5.0/
Full Changelog: v2.4.8...v2.5.0

Mem-LLM v2.4.8
Release Summary
This release finalizes the recent security, documentation, and packaging updates for Mem-LLM.
Highlights
- Hardened API authentication defaults
- Improved upload path validation and workspace boundary checks
- Fixed async tool execution behavior
- Replaced unsafe calculator evaluation with AST-based parsing
- Updated LM Studio defaults and examples to
qwen3.5-2b - Added stronger LM Studio full-feature and security hardening tests
- Cleaned up remaining README, changelog, and encoding issues
Documentation
- Refreshed the main README for the current release
- Updated Web UI documentation
- Rewrote the test suite README to match the current project structure
- Removed outdated model references and old text artifacts
Packaging
- Published to PyPI as
mem-llm==2.4.8 - Synced version references across package metadata, API server, and Web UI
Notes
This release follows v2.4.7 and mainly focuses on documentation completeness, packaging consistency, and final cleanup after the core hardening changes.
Full Changelog: v2.4.7...v2.4.8
v2.4.6: Quickstart Refactor & Core Fixes
This release brings important structural improvements to the examples and a critical bug fix for the core agent system.
🚀 Enhancements
- Quickstart Refactor: Merged the
demos/directory intoquickstart/for a unified, step-by-step example experience (Scripts 01 to 13). - Standalone Examples: Removed
demo_config.pydependency from advanced examples, making them plug-and-play. - Model Adjustments: Updated
quickstartscripts to use thegoogle/gemma-3-12bmodel for LM Studio defaults. - Documentation: Modernized the PyPI and GitHub README.md files with better structure, badges, and quick links.
🐛 Bug Fixes
- ToolExecutor Crash: Fixed a critical bug in [mem_agent.py] where
ToolExecutorwas inaccessible if advanced dependencies (pyyaml, etc.) were missing, preventing the core agent from functioning.
Mem-LLM v2.4.3
This release focuses on reliability and cleanup.
Fixed memory tool-call execution in MemAgent.
Fixed API endpoint wiring for KB/memory operations and stats.
Fixed tool parser stability issue (UnboundLocalError case).
Removed Docker support files and related docs.
Improved Ollama integration tests with automatic local model selection.
Synced package/docs versioning for 2.4.3.
Release v2.1.4
Conversation Analytics (NEW)
✅ Deep Insights - Analyze user engagement, topics, and activity patterns
✅ Visual Reports - Export analytics to JSON, CSV, or Markdown
✅ Engagement Tracking - Monitor active days, session length, and interaction frequency
📋 Config Presets (NEW)
✅ Instant Setup - Initialize specialized agents with one line of code
✅ 8 Built-in Presets - chatbot, code_assistant, creative_writer, tutor, analyst, translator, summarizer, researcher
✅ Custom Presets - Save and reuse your own agent configurations
Full Changelog: v2.1.0...v2.1.4
Release v2.1.0 - Async Tools & Input Validation and added tools support in library
New Features:
- Async tool support for non-blocking I/O
- Comprehensive input validation (pattern, range, length, choice, custom)
- 5 built-in async tools (fetch_url, post_json, async file ops)
- Enhanced tool system with validation
Breaking Changes: None
Backwards Compatible: Yes"
Full Changelog: v2.0.0...v2.1.0
Mem-LLM v1.3.3 - Streaming, REST API & Web UI
🎉 What's New
⚡ Streaming Response
- Real-time streaming support for all LLM backends (Ollama, LM Studio, Gemini)
- ChatGPT-style typing effect
chat_stream()method added toMemAgentand all clients- Example:
examples/17_streaming_example.py
🌐 REST API Server
- FastAPI-based API server with full endpoints
- WebSocket support for real-time streaming
- SSE (Server-Sent Events) streaming
- Interactive API docs at
/docs - CORS and security middleware included
💻 Web UI (3 Pages)
Chat Page (index.html)
- Real-time streaming chat interface
- Backend selection (Ollama/LM Studio)
- Dynamic model configuration
- Memory and Knowledge Base settings
Memory Page (memory.html)
- View conversation history
- Search in memories
- User profile management
- Export/clear memory
Metrics Page (metrics.html)
- Real-time system statistics
- Usage charts (last 7 days)
- Backend performance metrics
- Active users list
- Auto-refresh every 30s
🚀 Easy Launch
# Windows
start_web_ui.bat
# Cross-platform
python start_web_ui.py🌍 Full English Localization
- All UI components translated to English
- Documentation updated
- Better accessibility for global community
📦 Installation
pip install mem-llm --upgrade🎯 Quick Start
from mem_llm import MemAgent
agent = MemAgent(model="granite4:3b", backend="ollama")
# Streaming response
for chunk in agent.chat_stream("Hello!"):
print(chunk, end="", flush=True)🔧 Breaking Changes
None - Fully backward compatible!
📝 Full Changelog
- Added
chat_stream()method to all LLM clients - Integrated streaming into
MemAgent - Created FastAPI server (
api_server.py) - Built 3-page Web UI (Chat, Memory, Metrics)
- Added WebSocket and SSE streaming support
- Translated all files to English
- Cleaned up redundant test files
- Added launcher scripts (
start_web_ui.bat,start_web_ui.py)
📚 Documentation
- Main README
- Web UI Guide
- Examples
- API Docs (when server running)
🙏 Contributors
Thanks to everyone who contributed to this release!
Full Code: https://github.com/emredeveloper/Mem-LLM
PyPI Package: https://pypi.org/project/mem-llm/
🆕 What's New in v1.3.2
📊 Response Metrics (v1.3.1+) – Track confidence, latency, KB usage, and quality analytics
🔍 Vector Search (v1.3.2+) – Semantic search with ChromaDB, cross-lingual support
🎯 Quality Monitoring – Production-ready metrics for response quality
🌐 Semantic Understanding – Understands meaning, not just keywords
Full Changelog: v1.3.0...v1.3.2
Changelog Entry for v1.3.0
[1.3.0] - 2025-10-31
🎉 Major Features
-
🔌 Multi-Backend LLM Support: Choose your preferred LLM backend
- Ollama: Local, privacy-first, 100+ models
- LM Studio: Fast local inference with easy GUI
- Google Gemini: Powerful cloud models (gemini-2.5-flash)
- Unified API across all backends
- Seamless switching between backends
-
🏗️ Factory Pattern Architecture: Clean, extensible design
LLMClientFactory: Central backend managementBaseLLMClient: Abstract interface for all backends- Easy to add new backends in the future
- Follows SOLID principles
-
🔍 Auto-Detection: Automatically find available LLM service
auto_detect_backend=Trueparameter- Checks Ollama → LM Studio → other local services
- No manual configuration needed
- Perfect for cross-platform apps
🆕 New Components
BaseLLMClient: Abstract base class for all LLM backendsLLMClientFactory: Factory pattern for backend creationOllamaClient(refactored): Now inherits from BaseLLMClientLMStudioClient: OpenAI-compatible local inferenceGeminiClient: Google Gemini API integrationclients/package: Organized backend implementations
✨ New MemAgent Parameters
MemAgent(
backend='ollama', # NEW: Backend selection
base_url='...', # NEW: Custom backend URL
api_key='...', # NEW: API key for cloud backends
auto_detect_backend=True, # NEW: Auto-detect available backend
**llm_kwargs # NEW: Backend-specific parameters
)📚 New Examples
11_lmstudio_example.py: Using LM Studio backend12_gemini_example.py: Using Google Gemini API13_multi_backend_comparison.py: Compare backend performance14_auto_detect_backend.py: Auto-detection feature
📖 New Documentation
MULTI_BACKEND_GUIDE.md: Comprehensive 428-line guide- Setup instructions for each backend
- Configuration examples
- Migration guide from v1.2.0
- Troubleshooting tips
🔄 Changed
- MemAgent: Now supports multiple backends (backward compatible)
- Examples: All simplified for clarity (50-70% shorter)
- Package structure: Better organized with
clients/subdirectory - Version: Updated to 1.3.0 across all files
⚡ Improved
- Backward Compatibility: All v1.2.0 code still works
- Error Messages: Backend-specific troubleshooting
- Connection Checks: Improved availability detection
- Code Quality: Clean architecture, SOLID principles
🧪 Testing
- 16+ new tests for multi-backend support
- Factory pattern tests
- Backend availability checks
- MemAgent integration tests
- Auto-detection tests
🎯 Use Cases
Local Development: Use LM Studio for fast iteration
Privacy-Critical: Use Ollama for 100% local processing
Production: Use Gemini for scale and reliability
Cross-Platform: Auto-detect for universal compatibility
📊 Comparison
| Feature | Ollama | LM Studio | Gemini |
|---|---|---|---|
| Type | Local | Local | Cloud |
| Setup | CLI | GUI | API Key |
| Speed | Medium | Fast | Very Fast |
| Privacy | 100% | 100% | Limited |
| Cost | Free | Free | Paid |
| Models | 100+ | 50+ | 3+ |
🚀 Migration from v1.2.0
Old Code (still works):
agent = MemAgent(model="granite4:tiny-h")New Code (recommended):
# Explicit backend
agent = MemAgent(backend='ollama', model="granite4:tiny-h")
# Or use different backend
agent = MemAgent(backend='lmstudio', model='local-model')
# Or cloud
agent = MemAgent(backend='gemini', model='gemini-2.5-flash', api_key='...')🔧 Breaking Changes
None! All v1.2.0 code remains fully compatible.
📦 Installation
# Standard installation
pip install mem-llm
# Upgrade
pip install -U mem-llm🙏 Credits
- Built on top of solid v1.2.0 foundation
- Inspired by community feedback for multi-backend support
- Tested extensively with Ollama, LM Studio, and Gemini