From aca49d418dd6fd747f0605450141d424b285b662 Mon Sep 17 00:00:00 2001 From: Kangji <drcotr0623@naver.com> Date: Fri, 17 Nov 2023 02:01:12 +0900 Subject: [PATCH 1/5] fix: add omitted parameter --- fastapi/src/user/router.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fastapi/src/user/router.py b/fastapi/src/user/router.py index 542e838..c54cff8 100644 --- a/fastapi/src/user/router.py +++ b/fastapi/src/user/router.py @@ -79,7 +79,7 @@ def create_user(req: CreateUserRequest, verification_id: int = Depends(check_ver profile_id = service.create_profile(db, req.profile) service.create_user(db, req, verification_id, profile_id, main_lang_id, salt, hash) session_key = generate_session_key(profile_id) - create_session(db, profile_id) + create_session(db, session_key, profile_id) db.commit() return SessionResponse(access_token=session_key, token_type="bearer") From e00f3d2ae420b891a90bc1c3b241608c6fc78a4f Mon Sep 17 00:00:00 2001 From: Kangji <drcotr0623@naver.com> Date: Fri, 17 Nov 2023 02:02:12 +0900 Subject: [PATCH 2/5] fix: must filter before limit --- fastapi/src/chatting/service.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/fastapi/src/chatting/service.py b/fastapi/src/chatting/service.py index 94e71be..ea6ad87 100644 --- a/fastapi/src/chatting/service.py +++ b/fastapi/src/chatting/service.py @@ -98,10 +98,10 @@ def get_all_texts( ) if chatting_id is not None: query = query.where(Chatting.id == chatting_id) - if limit is not None: - query = query.limit(limit=limit) if timestamp is not None: query = query.where(Text.timestamp <= timestamp) + if limit is not None: + query = query.limit(limit=limit) return query.all() From a693f733fabaea15b9f7a2ba2cd82f43213934e1 Mon Sep 17 00:00:00 2001 From: Kangji <drcotr0623@naver.com> Date: Fri, 17 Nov 2023 02:03:07 +0900 Subject: [PATCH 3/5] fix: change wrong return type which generates 500 --- fastapi/src/chatting/router.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fastapi/src/chatting/router.py b/fastapi/src/chatting/router.py index 5b6050b..6768faf 100644 --- a/fastapi/src/chatting/router.py +++ b/fastapi/src/chatting/router.py @@ -158,7 +158,7 @@ def get_topic_recommendation( limit: int = Query( 1, description="how many topics to return"), user_id: int = Depends(check_session), - db: DbSession = Depends(DbConnector.get_db)) -> TopicResponse: + db: DbSession = Depends(DbConnector.get_db)) -> List[TopicResponse]: intimacy = service.get_recent_intimacy(db, user_id, chatting_id) tag = service.intimacy_tag(intimacy) topics = service.get_topics(db, tag, limit) From bc007a31eed7727d123a48e73e96d49872aed32f Mon Sep 17 00:00:00 2001 From: Kangji <drcotr0623@naver.com> Date: Fri, 17 Nov 2023 02:05:28 +0900 Subject: [PATCH 4/5] fix: handle divbyzero --- fastapi/src/user/service.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/fastapi/src/user/service.py b/fastapi/src/user/service.py index 93d4a37..3eb43ca 100644 --- a/fastapi/src/user/service.py +++ b/fastapi/src/user/service.py @@ -224,9 +224,10 @@ def get_similarity(df_me: pd.DataFrame, df_target: pd.DataFrame) -> float: cnt += len(set(my_list) & set(target_list)) my_size += len(my_list) target_size += len(target_list) - similarity = cnt / np.sqrt((my_size * target_size)) - return similarity + if my_size == 0 or target_size == 0: + return None + return cnt / np.sqrt((my_size * target_size)) def get_mbti_f(initiator: User, responder: User) -> int: From 3be8c69dab9dca6586181ea34e540331ef88a456 Mon Sep 17 00:00:00 2001 From: Kangji <drcotr0623@naver.com> Date: Fri, 17 Nov 2023 02:05:39 +0900 Subject: [PATCH 5/5] fix: wrong if-else branch --- fastapi/src/chatting/router.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/fastapi/src/chatting/router.py b/fastapi/src/chatting/router.py index 6768faf..63026e3 100644 --- a/fastapi/src/chatting/router.py +++ b/fastapi/src/chatting/router.py @@ -122,6 +122,11 @@ def create_intimacy(chatting_id: int, user_id: int = Depends(check_session), curr_texts = service.get_all_texts(db, user_id, chatting_id, limit=20) if is_default: + # we cannot calculate delta value with default intimacy + prev_texts = [] + similarity = None + num_F = None + else: prev_texts = service.get_all_texts( db, user_id, chatting_id, limit=20, timestamp=recent_intimacy.timestamp) initiator = chatting.initiator @@ -130,11 +135,6 @@ def create_intimacy(chatting_id: int, user_id: int = Depends(check_session), df_responder = get_user_dataframe(responder) similarity = get_similarity(df_initiator, df_responder) num_F = get_mbti_f(initiator, responder) - else: - # we cannot calculate delta value with default intimacy - prev_texts = [] - similarity = None - num_F = None intimacy = calculator.calculate( user_id, curr_texts, prev_texts, recent_intimacy, similarity, num_F)