mem-llm 1.0.6__tar.gz → 1.0.10__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of mem-llm might be problematic. Click here for more details.
- mem_llm-1.0.10/CHANGELOG.md +198 -0
- {mem_llm-1.0.6 → mem_llm-1.0.10}/MANIFEST.in +2 -5
- mem_llm-1.0.10/PKG-INFO +1028 -0
- mem_llm-1.0.10/README.md +992 -0
- {mem_llm-1.0.6 → mem_llm-1.0.10}/mem_llm/__init__.py +12 -6
- mem_llm-1.0.10/mem_llm/cli.py +254 -0
- mem_llm-1.0.10/mem_llm/dynamic_prompt.py +298 -0
- {mem_llm-1.0.6 → mem_llm-1.0.10}/mem_llm/llm_client.py +46 -6
- {mem_llm-1.0.6 → mem_llm-1.0.10}/mem_llm/mem_agent.py +124 -65
- {mem_llm-1.0.6 → mem_llm-1.0.10}/mem_llm/memory_manager.py +50 -0
- mem_llm-1.0.10/mem_llm.egg-info/PKG-INFO +1028 -0
- {mem_llm-1.0.6 → mem_llm-1.0.10}/mem_llm.egg-info/SOURCES.txt +6 -9
- mem_llm-1.0.10/mem_llm.egg-info/entry_points.txt +2 -0
- mem_llm-1.0.10/mem_llm.egg-info/requires.txt +17 -0
- mem_llm-1.0.10/pyproject.toml +62 -0
- mem_llm-1.0.10/requirements-dev.txt +20 -0
- mem_llm-1.0.10/requirements-optional.txt +26 -0
- mem_llm-1.0.10/requirements.txt +14 -0
- mem_llm-1.0.6/CHANGELOG.md +0 -237
- mem_llm-1.0.6/INTEGRATION_GUIDE.md +0 -653
- mem_llm-1.0.6/PKG-INFO +0 -304
- mem_llm-1.0.6/QUICKSTART.md +0 -231
- mem_llm-1.0.6/QUICKSTART_TR.md +0 -256
- mem_llm-1.0.6/README.md +0 -263
- mem_llm-1.0.6/STRUCTURE.md +0 -231
- mem_llm-1.0.6/docs/CONFIG_GUIDE.md +0 -425
- mem_llm-1.0.6/docs/INDEX.md +0 -103
- mem_llm-1.0.6/docs/README.md +0 -16
- mem_llm-1.0.6/mem_llm/prompt_templates.py +0 -244
- mem_llm-1.0.6/mem_llm.egg-info/PKG-INFO +0 -304
- mem_llm-1.0.6/mem_llm.egg-info/requires.txt +0 -7
- mem_llm-1.0.6/requirements.txt +0 -28
- mem_llm-1.0.6/setup.py +0 -55
- {mem_llm-1.0.6 → mem_llm-1.0.10}/mem_llm/config.yaml.example +0 -0
- {mem_llm-1.0.6 → mem_llm-1.0.10}/mem_llm/config_from_docs.py +0 -0
- {mem_llm-1.0.6 → mem_llm-1.0.10}/mem_llm/config_manager.py +0 -0
- {mem_llm-1.0.6 → mem_llm-1.0.10}/mem_llm/knowledge_loader.py +0 -0
- {mem_llm-1.0.6 → mem_llm-1.0.10}/mem_llm/memory_db.py +0 -0
- {mem_llm-1.0.6 → mem_llm-1.0.10}/mem_llm/memory_tools.py +0 -0
- {mem_llm-1.0.6 → mem_llm-1.0.10}/mem_llm.egg-info/dependency_links.txt +0 -0
- {mem_llm-1.0.6 → mem_llm-1.0.10}/mem_llm.egg-info/top_level.txt +0 -0
- {mem_llm-1.0.6 → mem_llm-1.0.10}/setup.cfg +0 -0
- {mem_llm-1.0.6 → mem_llm-1.0.10}/tests/test_integration.py +0 -0
- {mem_llm-1.0.6 → mem_llm-1.0.10}/tests/test_llm_client.py +0 -0
- {mem_llm-1.0.6 → mem_llm-1.0.10}/tests/test_mem_agent.py +0 -0
- {mem_llm-1.0.6 → mem_llm-1.0.10}/tests/test_memory_manager.py +0 -0
- {mem_llm-1.0.6 → mem_llm-1.0.10}/tests/test_memory_tools.py +0 -0
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [1.0.10] - 2025-10-20
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
- 🧠 **Dynamic Prompt System**: Context-aware system prompts that adapt to active features
|
|
12
|
+
- Prevents hallucinations by only including instructions for enabled features
|
|
13
|
+
- Separate prompt sections for KB, tools, business/personal modes
|
|
14
|
+
- Automatic feature detection (Knowledge Base presence, tools availability)
|
|
15
|
+
- Logging shows active features: "✅ Knowledge Base | ❌ Tools | 💾 Memory: SQL"
|
|
16
|
+
- 🔄 **Universal Ollama Model Compatibility**: Full support for ALL Ollama models
|
|
17
|
+
- Thinking-enabled models (Qwen3, DeepSeek, etc.) now work correctly
|
|
18
|
+
- Auto-detection and handling of thinking mode
|
|
19
|
+
- `enable_thinking: false` parameter for direct responses
|
|
20
|
+
- Fallback extraction from thinking process when needed
|
|
21
|
+
- Empty response retry with simpler prompts
|
|
22
|
+
- 📊 **Comprehensive Test Suite**: Pre-publish validation system
|
|
23
|
+
- 34 automated tests covering all major features
|
|
24
|
+
- Tests: imports, CLI, Ollama, JSON/SQL memory, MemAgent, config, multi-user
|
|
25
|
+
- User scenario testing with output analysis
|
|
26
|
+
- Hallucination detection and context verification
|
|
27
|
+
|
|
28
|
+
### Changed
|
|
29
|
+
- ⚡ **LLM Token Limits**: Increased from 150 to 2000 tokens for thinking models
|
|
30
|
+
- 🧹 **Removed Obsolete Module**: Deleted `prompt_templates.py` (replaced by dynamic system)
|
|
31
|
+
- 📝 **Context Window**: Increased from 2048 to 4096 tokens for better context
|
|
32
|
+
- 🎯 **Response Quality**: Better handling of empty responses with automatic retry
|
|
33
|
+
|
|
34
|
+
### Fixed
|
|
35
|
+
- 🐛 **Thinking Model Issue**: Qwen3 and similar models now respond correctly
|
|
36
|
+
- Fixed empty responses from thinking-mode models
|
|
37
|
+
- Proper content extraction from model responses
|
|
38
|
+
- System prompt instructions to suppress thinking process
|
|
39
|
+
- 🔧 **Stop Sequences**: Removed problematic stop sequences that interfered with models
|
|
40
|
+
- ⚠️ **Empty Response Handling**: Automatic retry with fallback for reliability
|
|
41
|
+
|
|
42
|
+
### Improved
|
|
43
|
+
- 🎨 **Prompt Quality**: Feature-specific instructions prevent confusion
|
|
44
|
+
- 🚀 **Model Performance**: Works seamlessly with granite4, qwen3, llama3, and all Ollama models
|
|
45
|
+
- 📈 **User Experience**: No more irrelevant feature mentions in responses
|
|
46
|
+
- 🧪 **Testing Coverage**: Complete validation before releases
|
|
47
|
+
|
|
48
|
+
### Technical Details
|
|
49
|
+
- Created `mem_llm/dynamic_prompt.py` (350+ lines) - modular prompt builder
|
|
50
|
+
- Modified `mem_llm/mem_agent.py`:
|
|
51
|
+
- Added `has_knowledge_base` and `has_tools` tracking flags
|
|
52
|
+
- Implemented `_build_dynamic_system_prompt()` method
|
|
53
|
+
- Removed ~70 lines of old static prompt code
|
|
54
|
+
- Added empty response retry logic
|
|
55
|
+
- Modified `mem_llm/llm_client.py`:
|
|
56
|
+
- Added thinking mode detection and suppression
|
|
57
|
+
- Increased token limits and context window
|
|
58
|
+
- Improved response extraction logic
|
|
59
|
+
- Added fallback for thinking-enabled models
|
|
60
|
+
- Updated `mem_llm/__init__.py` - exported `dynamic_prompt_builder`
|
|
61
|
+
- Cleaned `MANIFEST.in` - removed non-existent files
|
|
62
|
+
- Created `comprehensive_test.py` - 34 automated tests
|
|
63
|
+
- Created `user_test.py` - real-world scenario validation
|
|
64
|
+
|
|
65
|
+
### Breaking Changes
|
|
66
|
+
- None - fully backward compatible
|
|
67
|
+
|
|
68
|
+
## [1.0.9] - 2025-10-20
|
|
69
|
+
|
|
70
|
+
### Added
|
|
71
|
+
- 📝 **PyPI-Optimized README**: Complete rewrite with practical examples
|
|
72
|
+
- 5 comprehensive usage examples with full code and output
|
|
73
|
+
- Print statements in all examples for better user experience
|
|
74
|
+
- Step-by-step workflows showing complete processes
|
|
75
|
+
- Real-world customer service scenario example
|
|
76
|
+
- Turkish language support demonstration
|
|
77
|
+
- User profile extraction example
|
|
78
|
+
- 📄 **Document Configuration Examples**: Added example demonstrating PDF/DOCX/TXT config generation
|
|
79
|
+
- 🧪 **Config Update Testing**: Verification that manual YAML edits work correctly
|
|
80
|
+
|
|
81
|
+
### Changed
|
|
82
|
+
- 🗑️ **Removed docs folder**: Consolidated documentation into main README
|
|
83
|
+
- 🪵 **Logging Behavior**: Changed from file+console to console-only logging
|
|
84
|
+
- No more `mem_agent.log` files cluttering workspace
|
|
85
|
+
- Keeps workspace clean with only `.db` and `.yaml` files
|
|
86
|
+
- 📖 **Example Format**: All examples now include:
|
|
87
|
+
- Print statements for visibility
|
|
88
|
+
- Expected output blocks
|
|
89
|
+
- Full conversation flows
|
|
90
|
+
- Real usage scenarios
|
|
91
|
+
|
|
92
|
+
### Fixed
|
|
93
|
+
- 🐛 **Log File Pollution**: Removed FileHandler from logging, only StreamHandler now
|
|
94
|
+
- 📝 **README Examples**: Fixed examples that didn't show actual output or complete process
|
|
95
|
+
|
|
96
|
+
### Improved
|
|
97
|
+
- 🎯 **User Experience**: Much clearer examples for new users
|
|
98
|
+
- 📚 **Documentation Quality**: Professional PyPI-ready documentation
|
|
99
|
+
- 🔍 **Example Clarity**: Each example shows input, process, and output
|
|
100
|
+
|
|
101
|
+
### Technical Details
|
|
102
|
+
- Modified `mem_llm/mem_agent.py` - removed FileHandler from logging setup
|
|
103
|
+
- Rewrote `README.md` with 5 detailed examples
|
|
104
|
+
- Created `examples/07_document_config.py` for PDF/DOCX/TXT feature
|
|
105
|
+
- Verified config changes work correctly with manual YAML edits
|
|
106
|
+
|
|
107
|
+
## [1.0.8] - 2025-10-20
|
|
108
|
+
|
|
109
|
+
### Added
|
|
110
|
+
- 🎯 **CLI Tool**: Full-featured command-line interface
|
|
111
|
+
- `mem-llm chat` - Interactive chat sessions
|
|
112
|
+
- `mem-llm check` - System verification
|
|
113
|
+
- `mem-llm stats` - Statistics and analytics
|
|
114
|
+
- `mem-llm export` - Data export (JSON/TXT)
|
|
115
|
+
- `mem-llm clear` - User data deletion
|
|
116
|
+
- 📊 **Feature Comparison Matrix**: Clear comparison between JSON and SQL modes
|
|
117
|
+
- 📦 **Improved Dependencies**: Proper separation of core, dev, and optional requirements
|
|
118
|
+
- `requirements.txt` - Core dependencies only
|
|
119
|
+
- `requirements-dev.txt` - Development tools
|
|
120
|
+
- `requirements-optional.txt` - Optional features (web, API, etc.)
|
|
121
|
+
- 🔧 **Better Error Handling**: Improved startup checks with user-friendly messages
|
|
122
|
+
- 📚 **Enhanced Documentation**: CLI usage examples and feature matrices
|
|
123
|
+
|
|
124
|
+
### Changed
|
|
125
|
+
- 🌍 **Multi-language Support**: Changed from "Turkish Support" to general multi-language
|
|
126
|
+
- 📖 **Documentation**: All content now in English for broader accessibility
|
|
127
|
+
- 🎨 **CLI Entry Point**: Added `mem-llm` console script in setup.py
|
|
128
|
+
|
|
129
|
+
### Fixed
|
|
130
|
+
- 🐛 Missing `click` dependency in requirements
|
|
131
|
+
- 🐛 Improved error messages when Ollama is not running
|
|
132
|
+
|
|
133
|
+
### Improved
|
|
134
|
+
- ⚡ Better user experience with CLI commands
|
|
135
|
+
- 📝 Clearer README with usage examples
|
|
136
|
+
- 🎯 More intuitive API design
|
|
137
|
+
|
|
138
|
+
## [1.0.4] - 2025-10-13
|
|
139
|
+
|
|
140
|
+
### Added
|
|
141
|
+
- ✨ Config-free knowledge base support - KB now works without config.yaml
|
|
142
|
+
- ✨ Smart keyword extraction for knowledge base search (Turkish & English stopwords)
|
|
143
|
+
- ✨ Enhanced KB context injection - KB data injected directly into user message
|
|
144
|
+
- ✨ Automatic user profile extraction (name, favorite_food, location)
|
|
145
|
+
- ✨ Turkish language support for profile extraction
|
|
146
|
+
- ✨ SQL-JSON memory compatibility methods
|
|
147
|
+
- 📚 New example: `example_knowledge_base.py`
|
|
148
|
+
- 🧪 Comprehensive test suite
|
|
149
|
+
|
|
150
|
+
### Fixed
|
|
151
|
+
- 🐛 Knowledge base not being used without config.yaml
|
|
152
|
+
- 🐛 LLM ignoring knowledge base information
|
|
153
|
+
- 🐛 User profiles returning empty dictionaries
|
|
154
|
+
- 🐛 Profile updates not working correctly with SQL memory
|
|
155
|
+
- 🐛 Keyword search failing with Turkish queries
|
|
156
|
+
|
|
157
|
+
### Improved
|
|
158
|
+
- ⚡ Better KB-first response priority in system prompts
|
|
159
|
+
- ⚡ More accurate answers from knowledge base
|
|
160
|
+
- ⚡ Enhanced search algorithm with stopword filtering
|
|
161
|
+
|
|
162
|
+
## [1.0.3] - 2025-10-12
|
|
163
|
+
|
|
164
|
+
### Added
|
|
165
|
+
- 📦 Initial PyPI release
|
|
166
|
+
- 🎯 Core memory features (JSON & SQL)
|
|
167
|
+
- 🤖 Ollama integration
|
|
168
|
+
- 💾 Knowledge base system
|
|
169
|
+
- 🛠️ User tools
|
|
170
|
+
- ⚙️ Configuration management
|
|
171
|
+
|
|
172
|
+
### Features
|
|
173
|
+
- Memory-enabled AI agent
|
|
174
|
+
- JSON and SQL memory backends
|
|
175
|
+
- Knowledge base integration
|
|
176
|
+
- User profile management
|
|
177
|
+
- Conversation history
|
|
178
|
+
- Configuration from YAML/documents
|
|
179
|
+
|
|
180
|
+
## [1.0.2] - 2025-10-11
|
|
181
|
+
|
|
182
|
+
### Internal
|
|
183
|
+
- 🔧 Package structure improvements
|
|
184
|
+
- 📝 Documentation updates
|
|
185
|
+
|
|
186
|
+
## [1.0.1] - 2025-10-10
|
|
187
|
+
|
|
188
|
+
### Fixed
|
|
189
|
+
- 🐛 Import errors after package rename
|
|
190
|
+
- 📦 Package directory naming issues
|
|
191
|
+
|
|
192
|
+
## [1.0.0] - 2025-10-09
|
|
193
|
+
|
|
194
|
+
### Initial Release
|
|
195
|
+
- 🎉 First stable release
|
|
196
|
+
- 🤖 Memory-enabled AI assistant
|
|
197
|
+
- 💾 JSON memory management
|
|
198
|
+
- 🔌 Ollama integration
|
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
include README.md
|
|
2
2
|
include requirements.txt
|
|
3
|
+
include requirements-dev.txt
|
|
4
|
+
include requirements-optional.txt
|
|
3
5
|
include CHANGELOG.md
|
|
4
|
-
include QUICKSTART.md
|
|
5
|
-
include QUICKSTART_TR.md
|
|
6
|
-
include INTEGRATION_GUIDE.md
|
|
7
|
-
include STRUCTURE.md
|
|
8
6
|
recursive-include mem_llm *.yaml
|
|
9
7
|
recursive-include mem_llm *.example
|
|
10
|
-
recursive-include docs *.md
|
|
11
8
|
|