MemMachine-Playground / gateway_client.py
AnirudhEsthuri-MV's picture
Update gateway_client.py
c882b4d
raw
history blame
1.95 kB
import os
from datetime import datetime
import requests
# Backend server URL - can be set via environment variable
# For Hugging Face Spaces: Set MEMORY_SERVER_URL in Space settings (Repository secrets)
# For local development: Set MEMORY_SERVER_URL in your .env file
EXAMPLE_SERVER_PORT = os.getenv("MEMORY_SERVER_URL")
def ingest_and_rewrite(user_id: str, query: str, model_type: str = "openai") -> str:
"""Pass a raw user message through the memory server and get context-aware response."""
print("entered ingest_and_rewrite")
resp = requests.post(
f"{EXAMPLE_SERVER_PORT}/memory/store-and-search",
params={"user_id": user_id, "query": query},
timeout=1000,
)
resp.raise_for_status()
return resp.text
def add_session_message(user_id: str, msg: str) -> None:
"""Add a raw message into memory via memory server."""
requests.post(
f"{EXAMPLE_SERVER_PORT}/memory",
params={"user_id": user_id, "query": msg},
timeout=5,
)
def create_persona_query(user_id: str, query: str) -> str:
"""Create a persona-aware query by searching memory context via memory server."""
resp = requests.get(
f"{EXAMPLE_SERVER_PORT}/memory",
params={
"query": query,
"user_id": user_id,
"timestamp": datetime.now().isoformat(),
},
timeout=1000,
)
resp.raise_for_status()
search_results = resp.json()
if search_results.get("profile"):
return f"Based on your profile: {search_results['profile']}\n\nQuery: {query}"
else:
return f"Query: {query}"
def add_new_session_message(user_id: str, msg: str) -> None:
"""Alias for add_session_message for backward compatibility."""
add_session_message(user_id, msg)
def delete_profile(user_id: str) -> bool:
"""Delete all memory for the given user_id via the CRM server."""
# NOT IMPLEMENTED
return False