mem-llm 1.0.7__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.

Files changed (47) hide show
  1. mem_llm-1.0.10/CHANGELOG.md +198 -0
  2. {mem_llm-1.0.7 → mem_llm-1.0.10}/MANIFEST.in +2 -5
  3. mem_llm-1.0.10/PKG-INFO +1028 -0
  4. mem_llm-1.0.10/README.md +992 -0
  5. {mem_llm-1.0.7 → mem_llm-1.0.10}/mem_llm/__init__.py +12 -6
  6. mem_llm-1.0.10/mem_llm/cli.py +254 -0
  7. mem_llm-1.0.10/mem_llm/dynamic_prompt.py +298 -0
  8. {mem_llm-1.0.7 → mem_llm-1.0.10}/mem_llm/llm_client.py +46 -6
  9. {mem_llm-1.0.7 → mem_llm-1.0.10}/mem_llm/mem_agent.py +124 -65
  10. mem_llm-1.0.10/mem_llm.egg-info/PKG-INFO +1028 -0
  11. {mem_llm-1.0.7 → mem_llm-1.0.10}/mem_llm.egg-info/SOURCES.txt +6 -9
  12. mem_llm-1.0.10/mem_llm.egg-info/entry_points.txt +2 -0
  13. mem_llm-1.0.10/mem_llm.egg-info/requires.txt +17 -0
  14. mem_llm-1.0.10/pyproject.toml +62 -0
  15. mem_llm-1.0.10/requirements-dev.txt +20 -0
  16. mem_llm-1.0.10/requirements-optional.txt +26 -0
  17. mem_llm-1.0.10/requirements.txt +14 -0
  18. mem_llm-1.0.7/CHANGELOG.md +0 -73
  19. mem_llm-1.0.7/INTEGRATION_GUIDE.md +0 -653
  20. mem_llm-1.0.7/PKG-INFO +0 -304
  21. mem_llm-1.0.7/QUICKSTART.md +0 -231
  22. mem_llm-1.0.7/QUICKSTART_TR.md +0 -256
  23. mem_llm-1.0.7/README.md +0 -263
  24. mem_llm-1.0.7/STRUCTURE.md +0 -231
  25. mem_llm-1.0.7/docs/CONFIG_GUIDE.md +0 -425
  26. mem_llm-1.0.7/docs/INDEX.md +0 -103
  27. mem_llm-1.0.7/docs/README.md +0 -16
  28. mem_llm-1.0.7/mem_llm/prompt_templates.py +0 -244
  29. mem_llm-1.0.7/mem_llm.egg-info/PKG-INFO +0 -304
  30. mem_llm-1.0.7/mem_llm.egg-info/requires.txt +0 -7
  31. mem_llm-1.0.7/requirements.txt +0 -28
  32. mem_llm-1.0.7/setup.py +0 -55
  33. {mem_llm-1.0.7 → mem_llm-1.0.10}/mem_llm/config.yaml.example +0 -0
  34. {mem_llm-1.0.7 → mem_llm-1.0.10}/mem_llm/config_from_docs.py +0 -0
  35. {mem_llm-1.0.7 → mem_llm-1.0.10}/mem_llm/config_manager.py +0 -0
  36. {mem_llm-1.0.7 → mem_llm-1.0.10}/mem_llm/knowledge_loader.py +0 -0
  37. {mem_llm-1.0.7 → mem_llm-1.0.10}/mem_llm/memory_db.py +0 -0
  38. {mem_llm-1.0.7 → mem_llm-1.0.10}/mem_llm/memory_manager.py +0 -0
  39. {mem_llm-1.0.7 → mem_llm-1.0.10}/mem_llm/memory_tools.py +0 -0
  40. {mem_llm-1.0.7 → mem_llm-1.0.10}/mem_llm.egg-info/dependency_links.txt +0 -0
  41. {mem_llm-1.0.7 → mem_llm-1.0.10}/mem_llm.egg-info/top_level.txt +0 -0
  42. {mem_llm-1.0.7 → mem_llm-1.0.10}/setup.cfg +0 -0
  43. {mem_llm-1.0.7 → mem_llm-1.0.10}/tests/test_integration.py +0 -0
  44. {mem_llm-1.0.7 → mem_llm-1.0.10}/tests/test_llm_client.py +0 -0
  45. {mem_llm-1.0.7 → mem_llm-1.0.10}/tests/test_mem_agent.py +0 -0
  46. {mem_llm-1.0.7 → mem_llm-1.0.10}/tests/test_memory_manager.py +0 -0
  47. {mem_llm-1.0.7 → 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