Skip to content

Commit 0dfe4cc

Browse files
authored
feat: demo product api change (#74)
## Description Summary: change env config and load db Fix: #(issue) Reviewer: @(reviewer) ## Checklist: - [x] I have performed a self-review of my own code | 我已自行检查了自己的代码 - [ ] I have commented my code in hard-to-understand areas | 我已在难以理解的地方对代码进行了注释 - [ ] I have added tests that prove my fix is effective or that my feature works | 我已添加测试以证明我的修复有效或功能正常 - [ ] I have added necessary documentation (if applicable) | 我已添加必要的文档(如果适用) - [ ] I have linked the issue to this PR (if applicable) | 我已将 issue 链接到此 PR(如果适用) - [ ] I have mentioned the person who will review this PR | 我已提及将审查此 PR 的人
2 parents 0c415bd + c8ea029 commit 0dfe4cc

File tree

3 files changed

+11
-6
lines changed

3 files changed

+11
-6
lines changed

pyproject.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ sqlalchemy = "^2.0.41"
2828
redis = "^6.2.0"
2929
pika = "^1.3.2"
3030
schedule = "^1.2.2"
31-
pika = "^1.3.2"
3231

3332
[tool.poetry.group.dev]
3433
optional = false

src/memos/api/routers/product_router.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,8 @@ async def register_user(user_req: UserRegisterRequest):
6565
user_config, default_mem_cube = APIConfig.create_user_config(
6666
user_name=user_req.user_id, user_id=user_req.user_id
6767
)
68+
logger.info(f"user_config: {user_config.model_dump(mode='json')}")
69+
logger.info(f"default_mem_cube: {default_mem_cube.config.model_dump(mode='json')}")
6870
mos_product = get_mos_product_instance()
6971
# Register user with default config and mem cube
7072
result = mos_product.user_register(

src/memos/mem_os/product.py

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
from typing import Any, Literal
88

99
from transformers import AutoTokenizer
10-
10+
from dotenv import load_dotenv
1111
from memos.configs.mem_os import MOSConfig
1212
from memos.log import get_logger
1313
from memos.mem_cube.general import GeneralMemCube
@@ -29,7 +29,9 @@
2929

3030
logger = get_logger(__name__)
3131

32-
CUBE_PATH = "/tmp/data"
32+
load_dotenv()
33+
34+
CUBE_PATH = os.getenv("MOS_CUBE_PATH", "/tmp/data/")
3335
with open("./tmp/fake_data.json") as f:
3436
MOCK_DATA = json.loads(f.read())
3537

@@ -820,13 +822,15 @@ def chat_with_references(
820822
self.add(
821823
user_id=user_id,
822824
messages=[
823-
{"role": "user", "content": query},
824-
{"role": "assistant", "content": full_response}
825+
{"role": "user", "content": query, "chat_time": str(datetime.now().strftime("%Y-%m-%d %H:%M:%S"))},
826+
{"role": "assistant", "content": full_response, "chat_time": str(datetime.now().strftime("%Y-%m-%d %H:%M:%S"))}
825827
],
826828
mem_cube_id=cube_id
827829
)
830+
# Keep chat history under 30 messages by removing oldest conversation pair
828831
if len(self.chat_history_manager[user_id].chat_history) > 30:
829-
self.chat_history_manager[user_id].chat_history.pop(0)
832+
self.chat_history_manager[user_id].chat_history.pop(0) # Remove oldest user message
833+
self.chat_history_manager[user_id].chat_history.pop(0) # Remove oldest assistant response
830834

831835
def get_all(
832836
self,

0 commit comments

Comments
 (0)