feat(animal-chat): max_tokens 동적 조정
- 상세 질문 시: max_tokens=1500 (~2000자) - 기본 질문 시: max_tokens=500 (~750자) - is_detail_request 변수 스코프 수정
This commit is contained in:
parent
e1711d9176
commit
03481dadae
@ -3215,15 +3215,16 @@ def api_animal_chat():
|
|||||||
{chr(10).join(product_lines)}
|
{chr(10).join(product_lines)}
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
# 상세 질문 감지 (전역으로 사용)
|
||||||
|
detail_keywords = ['자세히', '상세히', '더 알려', '설명해', '왜', '어떻게', '원리', '기전', '성분']
|
||||||
|
is_detail_request = any(kw in last_user_msg for kw in detail_keywords)
|
||||||
|
|
||||||
# 벡터 DB 검색 (LanceDB RAG)
|
# 벡터 DB 검색 (LanceDB RAG)
|
||||||
vector_context = ""
|
vector_context = ""
|
||||||
vector_start = time.time()
|
vector_start = time.time()
|
||||||
try:
|
try:
|
||||||
from utils.animal_rag import get_animal_rag
|
from utils.animal_rag import get_animal_rag
|
||||||
if last_user_msg:
|
if last_user_msg:
|
||||||
# 상세 질문 감지: 더 많은 컨텍스트 제공
|
|
||||||
detail_keywords = ['자세히', '상세히', '더 알려', '설명해', '왜', '어떻게', '원리', '기전', '성분']
|
|
||||||
is_detail_request = any(kw in last_user_msg for kw in detail_keywords)
|
|
||||||
n_results = 5 if is_detail_request else 3
|
n_results = 5 if is_detail_request else 3
|
||||||
|
|
||||||
rag = get_animal_rag()
|
rag = get_animal_rag()
|
||||||
@ -3257,10 +3258,13 @@ def api_animal_chat():
|
|||||||
"content": msg.get("content", "")
|
"content": msg.get("content", "")
|
||||||
})
|
})
|
||||||
|
|
||||||
|
# max_tokens 동적 설정 (상세 질문 시 증가)
|
||||||
|
max_tokens = 1500 if is_detail_request else 500
|
||||||
|
|
||||||
response = client.chat.completions.create(
|
response = client.chat.completions.create(
|
||||||
model=OPENAI_MODEL,
|
model=OPENAI_MODEL,
|
||||||
messages=api_messages,
|
messages=api_messages,
|
||||||
max_tokens=500,
|
max_tokens=max_tokens,
|
||||||
temperature=0.7
|
temperature=0.7
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user