memorisdk 1.0.0__py3-none-any.whl → 1.0.2__py3-none-any.whl
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 memorisdk might be problematic. Click here for more details.
- {memoriai → memori}/core/memory.py +40 -5
- {memoriai → memori}/integrations/__init__.py +1 -1
- {memoriai → memori}/integrations/anthropic_integration.py +1 -1
- {memoriai → memori}/integrations/litellm_integration.py +1 -1
- {memoriai → memori}/integrations/openai_integration.py +1 -1
- {memorisdk-1.0.0.dist-info → memorisdk-1.0.2.dist-info}/METADATA +121 -38
- memorisdk-1.0.2.dist-info/RECORD +44 -0
- memorisdk-1.0.2.dist-info/entry_points.txt +2 -0
- memorisdk-1.0.2.dist-info/top_level.txt +1 -0
- memorisdk-1.0.0.dist-info/RECORD +0 -44
- memorisdk-1.0.0.dist-info/entry_points.txt +0 -2
- memorisdk-1.0.0.dist-info/top_level.txt +0 -1
- {memoriai → memori}/__init__.py +0 -0
- {memoriai → memori}/agents/__init__.py +0 -0
- {memoriai → memori}/agents/conscious_agent.py +0 -0
- {memoriai → memori}/agents/memory_agent.py +0 -0
- {memoriai → memori}/agents/retrieval_agent.py +0 -0
- {memoriai → memori}/config/__init__.py +0 -0
- {memoriai → memori}/config/manager.py +0 -0
- {memoriai → memori}/config/settings.py +0 -0
- {memoriai → memori}/core/__init__.py +0 -0
- {memoriai → memori}/core/database.py +0 -0
- {memoriai → memori}/database/__init__.py +0 -0
- {memoriai → memori}/database/connectors/__init__.py +0 -0
- {memoriai → memori}/database/connectors/mysql_connector.py +0 -0
- {memoriai → memori}/database/connectors/postgres_connector.py +0 -0
- {memoriai → memori}/database/connectors/sqlite_connector.py +0 -0
- {memoriai → memori}/database/queries/__init__.py +0 -0
- {memoriai → memori}/database/queries/base_queries.py +0 -0
- {memoriai → memori}/database/queries/chat_queries.py +0 -0
- {memoriai → memori}/database/queries/entity_queries.py +0 -0
- {memoriai → memori}/database/queries/memory_queries.py +0 -0
- {memoriai → memori}/database/templates/__init__.py +0 -0
- {memoriai → memori}/database/templates/basic_template.py +0 -0
- {memoriai → memori}/database/templates/schemas/__init__.py +0 -0
- {memoriai → memori}/scripts/llm_text.py +0 -0
- {memoriai → memori}/tools/__init__.py +0 -0
- {memoriai → memori}/tools/memory_tool.py +0 -0
- {memoriai → memori}/utils/__init__.py +0 -0
- {memoriai → memori}/utils/exceptions.py +0 -0
- {memoriai → memori}/utils/helpers.py +0 -0
- {memoriai → memori}/utils/logging.py +0 -0
- {memoriai → memori}/utils/pydantic_models.py +0 -0
- {memoriai → memori}/utils/schemas.py +0 -0
- {memoriai → memori}/utils/validators.py +0 -0
- {memorisdk-1.0.0.dist-info → memorisdk-1.0.2.dist-info}/WHEEL +0 -0
- {memorisdk-1.0.0.dist-info → memorisdk-1.0.2.dist-info}/licenses/LICENSE +0 -0
|
@@ -89,6 +89,7 @@ class Memori:
|
|
|
89
89
|
self.search_engine = None
|
|
90
90
|
self.conscious_agent = None
|
|
91
91
|
self._background_task = None
|
|
92
|
+
self._conscious_init_pending = False
|
|
92
93
|
|
|
93
94
|
if conscious_ingest or auto_ingest:
|
|
94
95
|
try:
|
|
@@ -168,16 +169,44 @@ class Memori:
|
|
|
168
169
|
"Conscious-ingest: Starting conscious agent analysis at startup"
|
|
169
170
|
)
|
|
170
171
|
|
|
171
|
-
#
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
172
|
+
# Check if there's a running event loop
|
|
173
|
+
try:
|
|
174
|
+
loop = asyncio.get_running_loop()
|
|
175
|
+
# If we're in an event loop, create the task
|
|
176
|
+
if self._background_task is None or self._background_task.done():
|
|
177
|
+
self._background_task = loop.create_task(
|
|
178
|
+
self._run_conscious_initialization()
|
|
179
|
+
)
|
|
180
|
+
logger.debug(
|
|
181
|
+
"Conscious-ingest: Background initialization task started"
|
|
182
|
+
)
|
|
183
|
+
except RuntimeError:
|
|
184
|
+
# No event loop running, defer initialization until first async call
|
|
185
|
+
logger.debug(
|
|
186
|
+
"Conscious-ingest: No event loop available, deferring initialization"
|
|
175
187
|
)
|
|
176
|
-
|
|
188
|
+
self._conscious_init_pending = True
|
|
177
189
|
|
|
178
190
|
except Exception as e:
|
|
179
191
|
logger.error(f"Failed to initialize conscious memory: {e}")
|
|
180
192
|
|
|
193
|
+
def _check_deferred_initialization(self):
|
|
194
|
+
"""Check and handle deferred conscious memory initialization"""
|
|
195
|
+
if self._conscious_init_pending and self.conscious_agent:
|
|
196
|
+
try:
|
|
197
|
+
loop = asyncio.get_running_loop()
|
|
198
|
+
if self._background_task is None or self._background_task.done():
|
|
199
|
+
self._background_task = loop.create_task(
|
|
200
|
+
self._run_conscious_initialization()
|
|
201
|
+
)
|
|
202
|
+
logger.debug(
|
|
203
|
+
"Conscious-ingest: Deferred initialization task started"
|
|
204
|
+
)
|
|
205
|
+
self._conscious_init_pending = False
|
|
206
|
+
except RuntimeError:
|
|
207
|
+
# Still no event loop, keep pending
|
|
208
|
+
pass
|
|
209
|
+
|
|
181
210
|
async def _run_conscious_initialization(self):
|
|
182
211
|
"""Run conscious agent initialization in background"""
|
|
183
212
|
try:
|
|
@@ -475,6 +504,8 @@ class Memori:
|
|
|
475
504
|
def _inject_openai_context(self, kwargs):
|
|
476
505
|
"""Inject context for OpenAI calls"""
|
|
477
506
|
try:
|
|
507
|
+
# Check for deferred conscious initialization
|
|
508
|
+
self._check_deferred_initialization()
|
|
478
509
|
# Extract user input from messages
|
|
479
510
|
user_input = ""
|
|
480
511
|
for msg in reversed(kwargs.get("messages", [])):
|
|
@@ -513,6 +544,8 @@ class Memori:
|
|
|
513
544
|
def _inject_anthropic_context(self, kwargs):
|
|
514
545
|
"""Inject context for Anthropic calls"""
|
|
515
546
|
try:
|
|
547
|
+
# Check for deferred conscious initialization
|
|
548
|
+
self._check_deferred_initialization()
|
|
516
549
|
# Extract user input from messages
|
|
517
550
|
user_input = ""
|
|
518
551
|
for msg in reversed(kwargs.get("messages", [])):
|
|
@@ -563,6 +596,8 @@ class Memori:
|
|
|
563
596
|
mode: "conscious" (one-shot short-term) or "auto" (continuous retrieval)
|
|
564
597
|
"""
|
|
565
598
|
try:
|
|
599
|
+
# Check for deferred conscious initialization
|
|
600
|
+
self._check_deferred_initialization()
|
|
566
601
|
# Extract user input from messages
|
|
567
602
|
user_input = ""
|
|
568
603
|
messages = params.get("messages", [])
|
|
@@ -5,7 +5,7 @@ RECOMMENDED: Use LiteLLM instead for unified API and native callback support.
|
|
|
5
5
|
This integration is provided for direct Anthropic SDK usage.
|
|
6
6
|
|
|
7
7
|
Usage:
|
|
8
|
-
from
|
|
8
|
+
from memori.integrations.anthropic_integration import MemoriAnthropic
|
|
9
9
|
|
|
10
10
|
# Initialize with your memori instance
|
|
11
11
|
client = MemoriAnthropic(memori_instance, api_key="your-key")
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
LiteLLM Integration - DEPRECATED
|
|
3
3
|
|
|
4
4
|
This integration is deprecated. LiteLLM now uses native callbacks
|
|
5
|
-
implemented directly in
|
|
5
|
+
implemented directly in memori/core/memory.py
|
|
6
6
|
|
|
7
7
|
The native callback system is more robust and uses LiteLLM's official
|
|
8
8
|
extension mechanism instead of monkey-patching.
|
|
@@ -5,7 +5,7 @@ RECOMMENDED: Use LiteLLM instead for unified API and native callback support.
|
|
|
5
5
|
This integration is provided for direct OpenAI SDK usage.
|
|
6
6
|
|
|
7
7
|
Usage:
|
|
8
|
-
from
|
|
8
|
+
from memori.integrations.openai_integration import MemoriOpenAI
|
|
9
9
|
|
|
10
10
|
# Initialize with your memori instance
|
|
11
11
|
client = MemoriOpenAI(memori_instance, api_key="your-key")
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: memorisdk
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.2
|
|
4
4
|
Summary: The Open-Source Memory Layer for AI Agents & Multi-Agent Systems
|
|
5
|
-
Author-email:
|
|
5
|
+
Author-email: GibsonAI Team <noc@gibsonai.com>
|
|
6
6
|
License: Apache-2.0
|
|
7
|
-
Project-URL: Homepage, https://github.com/GibsonAI/
|
|
8
|
-
Project-URL: Documentation, https://gibsonai.github.io/
|
|
9
|
-
Project-URL: Repository, https://github.com/GibsonAI/
|
|
10
|
-
Project-URL: Bug Tracker, https://github.com/GibsonAI/
|
|
11
|
-
Project-URL: Changelog, https://github.com/GibsonAI/
|
|
12
|
-
Project-URL: Contributing, https://github.com/GibsonAI/
|
|
7
|
+
Project-URL: Homepage, https://github.com/GibsonAI/memori
|
|
8
|
+
Project-URL: Documentation, https://gibsonai.github.io/memori
|
|
9
|
+
Project-URL: Repository, https://github.com/GibsonAI/memori.git
|
|
10
|
+
Project-URL: Bug Tracker, https://github.com/GibsonAI/memori/issues
|
|
11
|
+
Project-URL: Changelog, https://github.com/GibsonAI/memori/blob/main/CHANGELOG.md
|
|
12
|
+
Project-URL: Contributing, https://github.com/GibsonAI/memori/blob/main/CONTRIBUTING.md
|
|
13
13
|
Keywords: ai,memory,agents,llm,artificial-intelligence,multi-agent
|
|
14
14
|
Classifier: Development Status :: 3 - Alpha
|
|
15
15
|
Classifier: Intended Audience :: Developers
|
|
@@ -70,15 +70,38 @@ Requires-Dist: litellm>=1.0.0; extra == "all"
|
|
|
70
70
|
Requires-Dist: anthropic>=0.3.0; extra == "all"
|
|
71
71
|
Dynamic: license-file
|
|
72
72
|
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
73
|
+
[](https://gibsonai.com/)
|
|
74
|
+
|
|
75
|
+
# memori
|
|
76
|
+
|
|
77
|
+
<p align="center">
|
|
78
|
+
<strong>Open-Source Memory Engine for LLMs, AI Agents & Multi-Agent Systems</strong>
|
|
79
|
+
</p>
|
|
80
|
+
|
|
81
|
+
<p align="center">
|
|
82
|
+
<i>Make LLMs context-aware with human-like memory, dual-mode retrieval, and automatic context injection.</i>
|
|
83
|
+
</p>
|
|
84
|
+
|
|
85
|
+
<p align="center">
|
|
86
|
+
<a href="https://gibsonai.github.io/memori/">Learn more</a>
|
|
87
|
+
·
|
|
88
|
+
<a href="https://www.gibsonai.com/discord">Join Discord</a>
|
|
89
|
+
</p>
|
|
90
|
+
|
|
91
|
+
<p align="center">
|
|
92
|
+
<a href="https://badge.fury.io/py/memorisdk">
|
|
93
|
+
<img src="https://badge.fury.io/py/memori.svg" alt="PyPI version">
|
|
94
|
+
</a>
|
|
95
|
+
<a href="https://pepy.tech/projects/memorisdk">
|
|
96
|
+
<img src="https://static.pepy.tech/badge/memorisdk" alt="Downloads">
|
|
97
|
+
</a>
|
|
98
|
+
<a href="https://opensource.org/licenses/MIT">
|
|
99
|
+
<img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License: MIT">
|
|
100
|
+
</a>
|
|
101
|
+
<a href="https://www.python.org/downloads/">
|
|
102
|
+
<img src="https://img.shields.io/badge/python-3.8+-blue.svg" alt="Python 3.8+">
|
|
103
|
+
</a>
|
|
104
|
+
</p>
|
|
82
105
|
|
|
83
106
|
---
|
|
84
107
|
|
|
@@ -92,32 +115,69 @@ Dynamic: license-file
|
|
|
92
115
|
|
|
93
116
|
## ⚡ Quick Start
|
|
94
117
|
|
|
118
|
+
Install Memori:
|
|
119
|
+
|
|
95
120
|
```bash
|
|
96
|
-
pip install
|
|
121
|
+
pip install memorisdk
|
|
97
122
|
```
|
|
98
123
|
|
|
99
|
-
|
|
100
|
-
from memoriai import Memori
|
|
124
|
+
### Example with LiteLLM
|
|
101
125
|
|
|
102
|
-
|
|
103
|
-
office_work = Memori(
|
|
104
|
-
database_connect="sqlite:///office_memory.db",
|
|
105
|
-
conscious_ingest=True, # Short-term working memory (one-shot context)
|
|
106
|
-
openai_api_key="your-key"
|
|
107
|
-
)
|
|
126
|
+
1. Install LiteLLM:
|
|
108
127
|
|
|
109
|
-
|
|
128
|
+
```bash
|
|
129
|
+
pip install litellm
|
|
130
|
+
```
|
|
110
131
|
|
|
111
|
-
|
|
132
|
+
2. Set OpenAI API Key:
|
|
133
|
+
|
|
134
|
+
```bash
|
|
135
|
+
export OPENAI_API_KEY="sk-your-openai-key-here"
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
3. Run this Python script:
|
|
139
|
+
|
|
140
|
+
```python
|
|
141
|
+
from memori import Memori
|
|
112
142
|
from litellm import completion
|
|
113
143
|
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
144
|
+
# Initialize memory
|
|
145
|
+
memori = Memori(conscious_ingest=True)
|
|
146
|
+
memori.enable()
|
|
147
|
+
|
|
148
|
+
print("=== First Conversation - Establishing Context ===")
|
|
149
|
+
response1 = completion(
|
|
150
|
+
model="gpt-4o-mini",
|
|
151
|
+
messages=[{
|
|
152
|
+
"role": "user",
|
|
153
|
+
"content": "I'm working on a Python FastAPI project"
|
|
154
|
+
}]
|
|
155
|
+
)
|
|
156
|
+
|
|
157
|
+
print("Assistant:", response1.choices[0].message.content)
|
|
158
|
+
print("\n" + "="*50)
|
|
159
|
+
print("=== Second Conversation - Memory Provides Context ===")
|
|
160
|
+
|
|
161
|
+
response2 = completion(
|
|
162
|
+
model="gpt-4o-mini",
|
|
163
|
+
messages=[{
|
|
164
|
+
"role": "user",
|
|
165
|
+
"content": "Help me add user authentication"
|
|
166
|
+
}]
|
|
117
167
|
)
|
|
118
|
-
|
|
168
|
+
print("Assistant:", response2.choices[0].message.content)
|
|
169
|
+
print("\n💡 Notice: Memori automatically knows about your FastAPI Python project!")
|
|
119
170
|
```
|
|
120
171
|
|
|
172
|
+
---
|
|
173
|
+
|
|
174
|
+
**🚀 Ready to explore more?**
|
|
175
|
+
- [📖 Examples](#examples) - Basic usage patterns and code samples
|
|
176
|
+
- [🔌 Framework Integrations](#framework-integrations) - LangChain, Agno & CrewAI examples
|
|
177
|
+
- [🎮 Interactive Demos](#interactive-demos) - Live applications & tutorials
|
|
178
|
+
|
|
179
|
+
---
|
|
180
|
+
|
|
121
181
|
## 🧠 How It Works
|
|
122
182
|
|
|
123
183
|
### 1. **Universal Recording**
|
|
@@ -222,7 +282,7 @@ memori = Memori(
|
|
|
222
282
|
|
|
223
283
|
### Simple Setup
|
|
224
284
|
```python
|
|
225
|
-
from
|
|
285
|
+
from memori import Memori
|
|
226
286
|
|
|
227
287
|
# Conscious mode - Short-term working memory
|
|
228
288
|
memori = Memori(
|
|
@@ -249,7 +309,7 @@ memori = Memori(
|
|
|
249
309
|
|
|
250
310
|
### Advanced Configuration
|
|
251
311
|
```python
|
|
252
|
-
from
|
|
312
|
+
from memori import Memori, ConfigManager
|
|
253
313
|
|
|
254
314
|
# Load from memori.json or environment
|
|
255
315
|
config = ConfigManager()
|
|
@@ -317,7 +377,7 @@ essential = memori.get_essential_conversations(limit=5)
|
|
|
317
377
|
|
|
318
378
|
### **Memory Retrieval Tools**
|
|
319
379
|
```python
|
|
320
|
-
from
|
|
380
|
+
from memori.tools import create_memory_tool
|
|
321
381
|
|
|
322
382
|
# Create memory search tool for your LLM
|
|
323
383
|
memory_tool = create_memory_tool(memori)
|
|
@@ -355,7 +415,7 @@ memory_relationships # Entity connections
|
|
|
355
415
|
## 📁 Project Structure
|
|
356
416
|
|
|
357
417
|
```
|
|
358
|
-
|
|
418
|
+
memori/
|
|
359
419
|
├── core/ # Main Memori class, database manager
|
|
360
420
|
├── agents/ # Memory processing with Pydantic
|
|
361
421
|
├── database/ # SQLite/PostgreSQL/MySQL support
|
|
@@ -365,7 +425,7 @@ memoriai/
|
|
|
365
425
|
└── tools/ # Memory search tools
|
|
366
426
|
```
|
|
367
427
|
|
|
368
|
-
##
|
|
428
|
+
## Examples
|
|
369
429
|
|
|
370
430
|
- **[Basic Usage](./examples/basic_usage.py)** - Simple memory setup with conscious ingestion
|
|
371
431
|
- **[Personal Assistant](./examples/personal_assistant.py)** - AI assistant with intelligent memory
|
|
@@ -373,9 +433,32 @@ memoriai/
|
|
|
373
433
|
- **[Advanced Config](./examples/advanced_config.py)** - Production configuration
|
|
374
434
|
- **[Interactive Demo](./memori_example.py)** - Live conscious ingestion showcase
|
|
375
435
|
|
|
436
|
+
## Framework Integrations
|
|
437
|
+
|
|
438
|
+
Memori works seamlessly with popular AI frameworks:
|
|
439
|
+
|
|
440
|
+
| Framework | Description | Example | Features |
|
|
441
|
+
|-----------|-------------|---------|----------|
|
|
442
|
+
| 🤖 [Agno](./examples/integrations/agno_example.py) | Memory-enhanced agent framework integration with persistent conversations | Simple chat agent with memory search | Memory tools, conversation persistence, contextual responses |
|
|
443
|
+
| 👥 [CrewAI](./examples/integrations/crewai_example.py) | Multi-agent system with shared memory across agent interactions | Collaborative agents with memory | Agent coordination, shared memory, task-based workflows |
|
|
444
|
+
| 🌊 [Digital Ocean AI](./examples/integrations/digital_ocean_example.py) | Memory-enhanced customer support using Digital Ocean's AI platform | Customer support assistant with conversation history | Context injection, session continuity, support analytics |
|
|
445
|
+
| 🔗 [LangChain](./examples/integrations/langchain_example.py) | Enterprise-grade agent framework with advanced memory integration | AI assistant with LangChain tools and memory | Custom tools, agent executors, memory persistence, error handling |
|
|
446
|
+
| 🚀 [Swarms](./examples/integrations/swarms_example.py) | Multi-agent system framework with persistent memory capabilities | Memory-enhanced Swarms agents with auto/conscious ingestion | Agent memory persistence, multi-agent coordination, contextual awareness |
|
|
447
|
+
|
|
448
|
+
## Interactive Demos
|
|
449
|
+
|
|
450
|
+
Explore Memori's capabilities through these interactive demonstrations:
|
|
451
|
+
|
|
452
|
+
| Title | Description | Tools Used | Live Demo |
|
|
453
|
+
|------------|-------------|------------|-----------|
|
|
454
|
+
| 🌟 [Personal Diary Assistant](./demos/personal_diary_assistant/) | A comprehensive diary assistant with mood tracking, pattern analysis, and personalized recommendations. | Streamlit, LiteLLM, OpenAI, SQLite | [Run Demo](https://personal-diary-assistant.streamlit.app/) |
|
|
455
|
+
| 🌍 [Travel Planner Agent](./demos/travel_planner/) | Intelligent travel planning with CrewAI agents, real-time web search, and memory-based personalization. Plans complete itineraries with budget analysis. | CrewAI, Streamlit, OpenAI, SQLite | |
|
|
456
|
+
| 🧑🔬 [Researcher Agent](./demos/researcher_agent/) | Advanced AI research assistant with persistent memory, real-time web search, and comprehensive report generation. Builds upon previous research sessions. | Agno, Streamlit, OpenAI, ExaAI, SQLite | [Run Demo](https://researcher-agent-memori.streamlit.app/) |
|
|
457
|
+
|
|
376
458
|
## 🤝 Contributing
|
|
377
459
|
|
|
378
|
-
See [CONTRIBUTING.md](./CONTRIBUTING.md) for development setup and guidelines.
|
|
460
|
+
- See [CONTRIBUTING.md](./CONTRIBUTING.md) for development setup and guidelines.
|
|
461
|
+
- Community: [Discord](https://www.gibsonai.com/discord)
|
|
379
462
|
|
|
380
463
|
## 📄 License
|
|
381
464
|
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
memori/__init__.py,sha256=EpqarE_UsvWNALb2YWk4XAc5SML5uRjZOr1DHIrXNgo,3202
|
|
2
|
+
memori/agents/__init__.py,sha256=9M3IG5R10FfVgT8tUzBZ2pZ0SypSpYkFfhtyvMyeTpE,261
|
|
3
|
+
memori/agents/conscious_agent.py,sha256=6sgoTOkSrRGTAdEKGZPa5V6DFdzVxm_InZS85OnsVLE,20478
|
|
4
|
+
memori/agents/memory_agent.py,sha256=Sz3MsQ4aRUccN5YO86he3tAwyP43KXFAH7KXPOC7QFY,12891
|
|
5
|
+
memori/agents/retrieval_agent.py,sha256=PofpjLvx7Y4M9ns6kkypwT2D9eFaO2xffSuPovi8zuw,21490
|
|
6
|
+
memori/config/__init__.py,sha256=tQAxopgOsea02u9iId-ocOY86nWWNGC3rvt3AOFcLn8,295
|
|
7
|
+
memori/config/manager.py,sha256=xi8d8xW3obyV6v9UHDG6idSAymge8yWxGW11e2mI0nQ,10388
|
|
8
|
+
memori/config/settings.py,sha256=nrrWD4hwdbtYlIPtJFHgGyMudGP-hz9sA-KBW_7ZZbE,9724
|
|
9
|
+
memori/core/__init__.py,sha256=jvhHn-KL3bzRHs11-4B0BCKH6gkAf6Gf_G59If8fD0M,157
|
|
10
|
+
memori/core/database.py,sha256=eok8lvXvFbHk_H2TEiYnRAX5nVE0xQgE0TUigRfGovs,36248
|
|
11
|
+
memori/core/memory.py,sha256=8xF7Yi1k13OkNGisc_ehY_iuU3E0qTHiSc_mnw2iouk,54955
|
|
12
|
+
memori/database/__init__.py,sha256=kMLxwfRfTVvw0oV1kl9v-Dkyqm6ggcsMV6hltqdrN3k,189
|
|
13
|
+
memori/database/connectors/__init__.py,sha256=tG283nMRMWWM3B4WBfi7PMYnSUcH2Go5C88O91dOjcE,275
|
|
14
|
+
memori/database/connectors/mysql_connector.py,sha256=P9tahYczjgfm_0iZpD1OxekeXLXnbpKt9M9EEe9NAjU,4861
|
|
15
|
+
memori/database/connectors/postgres_connector.py,sha256=30wMEeVbvAc30_OrA0MqjePEgCGd9ejtG2ycXZLlotM,5495
|
|
16
|
+
memori/database/connectors/sqlite_connector.py,sha256=5KbOh0OrIt8e7NEw7aYSk7pl5PMLnMCvf_GbA0Wzsvk,4782
|
|
17
|
+
memori/database/queries/__init__.py,sha256=BIxenJzxOosD2-myGfGrortbq18rQycxBfqdMJhm-Cc,319
|
|
18
|
+
memori/database/queries/base_queries.py,sha256=ZBMxqt48j3ooF5OZIkKtBSh24Ex-Mnhg-3wnyL3cl-M,10595
|
|
19
|
+
memori/database/queries/chat_queries.py,sha256=gFsLLjAov502Pns9HAMr_MqLDETplZBQSPs9nqWFCnk,4431
|
|
20
|
+
memori/database/queries/entity_queries.py,sha256=no6bzXHNzRs4mmbi4MggW2F19XxfJ-0RQKv3iv84a64,7518
|
|
21
|
+
memori/database/queries/memory_queries.py,sha256=hodLllgfLbQvdeOSCcZadPyAF3ro3O6Mbz0jAtDIXvc,5609
|
|
22
|
+
memori/database/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
23
|
+
memori/database/templates/basic_template.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
24
|
+
memori/database/templates/schemas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
25
|
+
memori/integrations/__init__.py,sha256=9VVDvedcu4ZxK2Tt_fT5ZSRPV9xakfEloNhPibpvHA8,1978
|
|
26
|
+
memori/integrations/anthropic_integration.py,sha256=IJtqPYTcMaYsXKWUabR4XDMpCabg9qMK7d-8T9A1CcY,8169
|
|
27
|
+
memori/integrations/litellm_integration.py,sha256=fNQqov9TThFD9YRWLAFsZ1R4-Bsm4E70qYQ17Z4ZVik,351
|
|
28
|
+
memori/integrations/openai_integration.py,sha256=e_CV-CGPhwhTvH5fiA1NDcKYGZiDtN74luRJP5r2OdQ,12033
|
|
29
|
+
memori/scripts/llm_text.py,sha256=HDkuGMb527yupSbA3syBFA9WHBPnP2lVqEKW6trIZtU,1603
|
|
30
|
+
memori/tools/__init__.py,sha256=0KPbWAFYmvEleacrby4RzhJGW5GPdFiXN6RWwFrbqf4,200
|
|
31
|
+
memori/tools/memory_tool.py,sha256=j57j2-MbhC9oTQJxBOnEBssB536OAb7igFA-XnxtHy4,20917
|
|
32
|
+
memori/utils/__init__.py,sha256=e3AN4KfomQBQDsr53HwfvOeTtI3QZMzGQMYpRp8l6ow,1757
|
|
33
|
+
memori/utils/exceptions.py,sha256=JGLo2S8ElG3gBjD4aJeVPWNsNB9OLPYAYzCdKfiEW74,12136
|
|
34
|
+
memori/utils/helpers.py,sha256=_lpGSsI2UkMyYUY6X9k_VEpACvyxwY51TzgYVPZTeBk,13059
|
|
35
|
+
memori/utils/logging.py,sha256=HXf3UrE0cm72KvFwyCjE7237opIxdNqzqxQQauhrX34,7131
|
|
36
|
+
memori/utils/pydantic_models.py,sha256=U9nVy3Dko1X_dS4PpA7z2aacqegSSwOmZvQzPuVRcA0,8047
|
|
37
|
+
memori/utils/schemas.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
38
|
+
memori/utils/validators.py,sha256=2btILpEh2yBS_6rytp2B2epFxMT4876SibS0yNj6bKI,11287
|
|
39
|
+
memorisdk-1.0.2.dist-info/licenses/LICENSE,sha256=gyrDaYsSODngoYE1l68l_UfjppS-oYDrf1MvY1JGhgE,10430
|
|
40
|
+
memorisdk-1.0.2.dist-info/METADATA,sha256=KlUMw305S5PF68k0fxmS4ByYTLmEPrguzlr3FyzgqbI,16784
|
|
41
|
+
memorisdk-1.0.2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
42
|
+
memorisdk-1.0.2.dist-info/entry_points.txt,sha256=ir3aWDbFfKGKQlnJCW440GQ2saYNznptoXWheOUtu5c,43
|
|
43
|
+
memorisdk-1.0.2.dist-info/top_level.txt,sha256=Nm3ad0isbJYBzTEce-O_gmkAEiTbAbyilgAhRt8IoGA,7
|
|
44
|
+
memorisdk-1.0.2.dist-info/RECORD,,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
memori
|
memorisdk-1.0.0.dist-info/RECORD
DELETED
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
memoriai/__init__.py,sha256=EpqarE_UsvWNALb2YWk4XAc5SML5uRjZOr1DHIrXNgo,3202
|
|
2
|
-
memoriai/agents/__init__.py,sha256=9M3IG5R10FfVgT8tUzBZ2pZ0SypSpYkFfhtyvMyeTpE,261
|
|
3
|
-
memoriai/agents/conscious_agent.py,sha256=6sgoTOkSrRGTAdEKGZPa5V6DFdzVxm_InZS85OnsVLE,20478
|
|
4
|
-
memoriai/agents/memory_agent.py,sha256=Sz3MsQ4aRUccN5YO86he3tAwyP43KXFAH7KXPOC7QFY,12891
|
|
5
|
-
memoriai/agents/retrieval_agent.py,sha256=PofpjLvx7Y4M9ns6kkypwT2D9eFaO2xffSuPovi8zuw,21490
|
|
6
|
-
memoriai/config/__init__.py,sha256=tQAxopgOsea02u9iId-ocOY86nWWNGC3rvt3AOFcLn8,295
|
|
7
|
-
memoriai/config/manager.py,sha256=xi8d8xW3obyV6v9UHDG6idSAymge8yWxGW11e2mI0nQ,10388
|
|
8
|
-
memoriai/config/settings.py,sha256=nrrWD4hwdbtYlIPtJFHgGyMudGP-hz9sA-KBW_7ZZbE,9724
|
|
9
|
-
memoriai/core/__init__.py,sha256=jvhHn-KL3bzRHs11-4B0BCKH6gkAf6Gf_G59If8fD0M,157
|
|
10
|
-
memoriai/core/database.py,sha256=eok8lvXvFbHk_H2TEiYnRAX5nVE0xQgE0TUigRfGovs,36248
|
|
11
|
-
memoriai/core/memory.py,sha256=nYPqO4dCzKEzVxYKJn4OvrSz7zq3vQ3gUpGkpZ1B88A,53313
|
|
12
|
-
memoriai/database/__init__.py,sha256=kMLxwfRfTVvw0oV1kl9v-Dkyqm6ggcsMV6hltqdrN3k,189
|
|
13
|
-
memoriai/database/connectors/__init__.py,sha256=tG283nMRMWWM3B4WBfi7PMYnSUcH2Go5C88O91dOjcE,275
|
|
14
|
-
memoriai/database/connectors/mysql_connector.py,sha256=P9tahYczjgfm_0iZpD1OxekeXLXnbpKt9M9EEe9NAjU,4861
|
|
15
|
-
memoriai/database/connectors/postgres_connector.py,sha256=30wMEeVbvAc30_OrA0MqjePEgCGd9ejtG2ycXZLlotM,5495
|
|
16
|
-
memoriai/database/connectors/sqlite_connector.py,sha256=5KbOh0OrIt8e7NEw7aYSk7pl5PMLnMCvf_GbA0Wzsvk,4782
|
|
17
|
-
memoriai/database/queries/__init__.py,sha256=BIxenJzxOosD2-myGfGrortbq18rQycxBfqdMJhm-Cc,319
|
|
18
|
-
memoriai/database/queries/base_queries.py,sha256=ZBMxqt48j3ooF5OZIkKtBSh24Ex-Mnhg-3wnyL3cl-M,10595
|
|
19
|
-
memoriai/database/queries/chat_queries.py,sha256=gFsLLjAov502Pns9HAMr_MqLDETplZBQSPs9nqWFCnk,4431
|
|
20
|
-
memoriai/database/queries/entity_queries.py,sha256=no6bzXHNzRs4mmbi4MggW2F19XxfJ-0RQKv3iv84a64,7518
|
|
21
|
-
memoriai/database/queries/memory_queries.py,sha256=hodLllgfLbQvdeOSCcZadPyAF3ro3O6Mbz0jAtDIXvc,5609
|
|
22
|
-
memoriai/database/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
23
|
-
memoriai/database/templates/basic_template.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
24
|
-
memoriai/database/templates/schemas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
25
|
-
memoriai/integrations/__init__.py,sha256=91g1ydUEvljM6dSSo64NB9XLYTyQA5Kr76rgpGIOYVo,1980
|
|
26
|
-
memoriai/integrations/anthropic_integration.py,sha256=qKAAnUweJmdaDMpw2C-OEtlYQ76XEUr0nC0-gTzeht8,8171
|
|
27
|
-
memoriai/integrations/litellm_integration.py,sha256=EgerRkbtRTeDKwg1_zZMJEJR7fgGXtCqyMJTtmUHczM,353
|
|
28
|
-
memoriai/integrations/openai_integration.py,sha256=mMSN0UyIOwyJ018Dyp08qEYBjqDgpqMW6XPDY4YFIZo,12035
|
|
29
|
-
memoriai/scripts/llm_text.py,sha256=HDkuGMb527yupSbA3syBFA9WHBPnP2lVqEKW6trIZtU,1603
|
|
30
|
-
memoriai/tools/__init__.py,sha256=0KPbWAFYmvEleacrby4RzhJGW5GPdFiXN6RWwFrbqf4,200
|
|
31
|
-
memoriai/tools/memory_tool.py,sha256=j57j2-MbhC9oTQJxBOnEBssB536OAb7igFA-XnxtHy4,20917
|
|
32
|
-
memoriai/utils/__init__.py,sha256=e3AN4KfomQBQDsr53HwfvOeTtI3QZMzGQMYpRp8l6ow,1757
|
|
33
|
-
memoriai/utils/exceptions.py,sha256=JGLo2S8ElG3gBjD4aJeVPWNsNB9OLPYAYzCdKfiEW74,12136
|
|
34
|
-
memoriai/utils/helpers.py,sha256=_lpGSsI2UkMyYUY6X9k_VEpACvyxwY51TzgYVPZTeBk,13059
|
|
35
|
-
memoriai/utils/logging.py,sha256=HXf3UrE0cm72KvFwyCjE7237opIxdNqzqxQQauhrX34,7131
|
|
36
|
-
memoriai/utils/pydantic_models.py,sha256=U9nVy3Dko1X_dS4PpA7z2aacqegSSwOmZvQzPuVRcA0,8047
|
|
37
|
-
memoriai/utils/schemas.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
38
|
-
memoriai/utils/validators.py,sha256=2btILpEh2yBS_6rytp2B2epFxMT4876SibS0yNj6bKI,11287
|
|
39
|
-
memorisdk-1.0.0.dist-info/licenses/LICENSE,sha256=gyrDaYsSODngoYE1l68l_UfjppS-oYDrf1MvY1JGhgE,10430
|
|
40
|
-
memorisdk-1.0.0.dist-info/METADATA,sha256=C5HnlWjVCx-pEe5eDYFxBXkijN4iTgz1LnNPve0aQFc,13018
|
|
41
|
-
memorisdk-1.0.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
42
|
-
memorisdk-1.0.0.dist-info/entry_points.txt,sha256=8qHNW4hrF9viZ3C523UVeD8-Ttfv0glnolVGsW0dEd4,45
|
|
43
|
-
memorisdk-1.0.0.dist-info/top_level.txt,sha256=k-gJd3WNS2pa1YwVhAQ5gHvuLNt_bx1eAAalk5JVQnk,9
|
|
44
|
-
memorisdk-1.0.0.dist-info/RECORD,,
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
memoriai
|
{memoriai → memori}/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|