From c1e8ffefa72f4f28ffd72ef34de3bd931c693b9e Mon Sep 17 00:00:00 2001 From: semnisem Date: Thu, 10 Oct 2024 18:41:08 +0900 Subject: [PATCH 1/2] =?UTF-8?q?Fix:=20=EB=B3=80=EA=B2=BD=20=ED=94=84?= =?UTF-8?q?=EB=A1=AC=ED=94=84=ED=8C=85=20=EC=A7=88=EB=AC=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 연관성 판단 답변 내용 단축 --- app/main.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/app/main.py b/app/main.py index ac0ba4f..d05503c 100644 --- a/app/main.py +++ b/app/main.py @@ -456,12 +456,14 @@ async def retrieve(problem_text: str): @app.get("/analysis/augmentation") async def augment(curriculum_context, query): - prompt = "너는 공책이야. 내가 준 교육과정 중에 아래 문제와 관련된 교육과정을 골라서 고등학생 한 명에게\ - 이 문제를 왜 틀리거나 헷갈릴 수 있으며, 어떤 개념과 사고과정 등이 필요해 보이는지를 \ - 이 문제의 의도와 핵심을 짚어가되 너무 길지 않게 정리해서 고등학생에게 보여줘.\n" - context = f"교과과정은 이렇고 {curriculum_context}" - passage = f"문제는 이러해 {query}." - augmented_query = prompt + context + passage + prompt = ("너는 고등학생의 오답 문제를 통해 약점을 보완해주는 공책이야. \ + 교육과정을 참고해서 오답 문제 핵심 의도를 바탕으로 문제에서 헷갈릴만한 요소, \ + 학생이 놓친 것 같은 중요한 개념을 찾아 그 개념에 대해 4줄 이내로 설명해주고, \ + 그 개념을 적용해서 풀이를 요점에 따라서 짧게(4줄 내외) 작성해줘. \ + 만약 오답 문제와 교과과정이 관련이 없다고 판단되면, 교육과정은 참고하지 않으면 돼. \n\n\n") + passage = f"오답 문제 : {query} \n\n\n" + context = f"교과과정 : {curriculum_context} \n\n\n" + augmented_query = prompt + passage + context return augmented_query @app.get("/analysis/generation") From ee6dc8cac02c8aa4bf130a2a894325ffa1f50015 Mon Sep 17 00:00:00 2001 From: semnisem Date: Thu, 10 Oct 2024 18:42:04 +0900 Subject: [PATCH 2/2] =?UTF-8?q?Fix:=20=EB=B3=80=EA=B2=BD=20=EB=B2=A1?= =?UTF-8?q?=ED=84=B0=20=EA=B2=80=EC=83=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 검색 정확도 범위를 search_param에 지정 --- app/main.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/main.py b/app/main.py index d05503c..7d2b71a 100644 --- a/app/main.py +++ b/app/main.py @@ -422,7 +422,8 @@ async def retrieve(problem_text: str): search_params = { 'metric_type': 'COSINE', 'params': { - 'probe': 20 + 'radius': 0.35, + 'range_filter': 0.9 }, } dt5 = str(datetime.fromtimestamp(time.time())) @@ -430,7 +431,7 @@ async def retrieve(problem_text: str): data=query_embeddings[0], anns_field='content_embedding', param=search_params, - limit=3, + limit=2, expr=None, output_fields=['content', 'subject_name', 'unit_name', 'main_concept'] )