updated versions fixed issues

This commit is contained in:
Pratik Narola 2025-09-02 23:40:10 +05:30
parent a8a676f860
commit f929165a89
4 changed files with 21 additions and 14 deletions

View file

@ -1,4 +1,4 @@
FROM python:3.11-slim FROM python:3.13-slim
# Set working directory # Set working directory
WORKDIR /app WORKDIR /app
@ -7,6 +7,7 @@ WORKDIR /app
RUN apt-get update && apt-get install -y \ RUN apt-get update && apt-get install -y \
gcc \ gcc \
g++ \ g++ \
curl \
&& rm -rf /var/lib/apt/lists/* && rm -rf /var/lib/apt/lists/*
# Copy requirements and install Python dependencies # Copy requirements and install Python dependencies

View file

@ -206,8 +206,8 @@ async def chat_with_memory(request: ChatRequest):
result = await mem0_manager.chat_with_memory( result = await mem0_manager.chat_with_memory(
message=request.message, message=request.message,
user_id=request.user_id, user_id=request.user_id,
context=request.context, agent_id=request.agent_id,
metadata=request.metadata run_id=request.run_id,
) )
return result return result
@ -249,7 +249,7 @@ async def search_memories(request: MemorySearchRequest):
query=request.query, query=request.query,
user_id=request.user_id, user_id=request.user_id,
limit=request.limit, limit=request.limit,
threshold=request.threshold, threshold=request.threshold or 0.2,
filters=request.filters, filters=request.filters,
agent_id=request.agent_id, agent_id=request.agent_id,
run_id=request.run_id run_id=request.run_id
@ -341,9 +341,8 @@ async def get_graph_relationships(user_id: str):
"""Get graph relationships - pure Mem0 passthrough.""" """Get graph relationships - pure Mem0 passthrough."""
try: try:
logger.info(f"Retrieving graph relationships for user: {user_id}") logger.info(f"Retrieving graph relationships for user: {user_id}")
result = await mem0_manager.get_graph_relationships(user_id=user_id, agent_id=None, run_id=None)
result = await mem0_manager.get_graph_relationships(user_id=user_id)
return result return result
except Exception as e: except Exception as e:
@ -417,14 +416,14 @@ async def get_user_stats(user_id: str):
# Get actual memory count for this user # Get actual memory count for this user
try: try:
user_memories = await mem0_manager.get_user_memories(user_id=user_id, limit=1000) user_memories = await mem0_manager.get_user_memories(user_id=user_id, limit=10000)
memory_count = len(user_memories) memory_count = len(user_memories)
except: except:
memory_count = 0 memory_count = 0
# Get relationship count for this user # Get relationship count for this user
try: try:
graph_data = await mem0_manager.get_graph_relationships(user_id=user_id) graph_data = await mem0_manager.get_graph_relationships(user_id=user_id, agent_id=None, run_id=None)
relationship_count = len(graph_data.get('relationships', [])) relationship_count = len(graph_data.get('relationships', []))
except: except:
relationship_count = 0 relationship_count = 0
@ -467,6 +466,7 @@ async def get_active_users():
if __name__ == "__main__": if __name__ == "__main__":
import uvicorn import uvicorn
print("Starting UVicorn server...")
uvicorn.run( uvicorn.run(
"main:app", "main:app",
host="0.0.0.0", host="0.0.0.0",

View file

@ -73,7 +73,7 @@ class Mem0Manager:
async def add_memories( async def add_memories(
self, self,
messages: List[Dict[str, str]], messages: List[Dict[str, str]],
user_id: str = "default", user_id: Optional[str] = "default",
agent_id: Optional[str] = None, agent_id: Optional[str] = None,
run_id: Optional[str] = None, run_id: Optional[str] = None,
metadata: Optional[Dict[str, Any]] = None metadata: Optional[Dict[str, Any]] = None
@ -107,7 +107,7 @@ class Mem0Manager:
async def search_memories( async def search_memories(
self, self,
query: str, query: str,
user_id: str = "default", user_id: Optional[str] = "default",
limit: int = 5, limit: int = 5,
threshold: Optional[float] = None, threshold: Optional[float] = None,
filters: Optional[Dict[str, Any]] = None, filters: Optional[Dict[str, Any]] = None,

View file

@ -14,7 +14,9 @@ class ChatMessage(BaseModel):
class ChatRequest(BaseModel): class ChatRequest(BaseModel):
"""Ultra-minimal chat request.""" """Ultra-minimal chat request."""
message: str = Field(..., description="User message") message: str = Field(..., description="User message")
user_id: str = Field("default", description="User identifier") user_id: Optional[str] = Field("default", description="User identifier")
agent_id: Optional[str] = Field(None, description="Agent identifier")
run_id: Optional[str] = Field(None, description="Run identifier")
context: Optional[List[ChatMessage]] = Field(None, description="Previous conversation context") context: Optional[List[ChatMessage]] = Field(None, description="Previous conversation context")
metadata: Optional[Dict[str, Any]] = Field(None, description="Additional metadata") metadata: Optional[Dict[str, Any]] = Field(None, description="Additional metadata")
@ -22,7 +24,7 @@ class ChatRequest(BaseModel):
class MemoryAddRequest(BaseModel): class MemoryAddRequest(BaseModel):
"""Request to add memories with hierarchy support - open-source compatible.""" """Request to add memories with hierarchy support - open-source compatible."""
messages: List[ChatMessage] = Field(..., description="Messages to process") messages: List[ChatMessage] = Field(..., description="Messages to process")
user_id: str = Field("default", description="User identifier") user_id: Optional[str] = Field("default", description="User identifier")
agent_id: Optional[str] = Field(None, description="Agent identifier") agent_id: Optional[str] = Field(None, description="Agent identifier")
run_id: Optional[str] = Field(None, description="Run identifier") run_id: Optional[str] = Field(None, description="Run identifier")
metadata: Optional[Dict[str, Any]] = Field(None, description="Additional metadata") metadata: Optional[Dict[str, Any]] = Field(None, description="Additional metadata")
@ -31,7 +33,9 @@ class MemoryAddRequest(BaseModel):
class MemorySearchRequest(BaseModel): class MemorySearchRequest(BaseModel):
"""Request to search memories with hierarchy filtering.""" """Request to search memories with hierarchy filtering."""
query: str = Field(..., description="Search query") query: str = Field(..., description="Search query")
user_id: str = Field("default", description="User identifier") user_id: Optional[str] = Field("default", description="User identifier")
agent_id: Optional[str] = Field(None, description="Agent identifier")
run_id: Optional[str] = Field(None, description="Run identifier")
limit: int = Field(5, description="Maximum number of results") limit: int = Field(5, description="Maximum number of results")
threshold: Optional[float] = Field(None, description="Minimum relevance score") threshold: Optional[float] = Field(None, description="Minimum relevance score")
filters: Optional[Dict[str, Any]] = Field(None, description="Additional filters") filters: Optional[Dict[str, Any]] = Field(None, description="Additional filters")
@ -56,6 +60,8 @@ class MemoryItem(BaseModel):
id: str = Field(..., description="Memory unique identifier") id: str = Field(..., description="Memory unique identifier")
memory: str = Field(..., description="Memory content") memory: str = Field(..., description="Memory content")
user_id: Optional[str] = Field(None, description="Associated user ID") user_id: Optional[str] = Field(None, description="Associated user ID")
agent_id: Optional[str] = Field(None, description="Associated agent ID")
run_id: Optional[str] = Field(None, description="Associated run ID")
metadata: Optional[Dict[str, Any]] = Field(None, description="Memory metadata") metadata: Optional[Dict[str, Any]] = Field(None, description="Memory metadata")
score: Optional[float] = Field(None, description="Relevance score (for search results)") score: Optional[float] = Field(None, description="Relevance score (for search results)")
created_at: Optional[str] = Field(None, description="Creation timestamp") created_at: Optional[str] = Field(None, description="Creation timestamp")