250113 TIL Query 분석 및 Agent 설계
1. 한 일
OpenAI 기반 Query 분석 및 Agent 설계
- Query 분석 Agent 작성:
- 대화 내역과 사용자 질문을 분석해 도서 검색, 시험 계획 생성, 일반 대화로 분류.
AgentExecutor
와 OpenAI LLM을 조합한 동적 툴 실행 로직 구현.
- 검색 결과 반환 개선:
- 하이브리드 검색 결과에 책의 전체 정보를 포함하도록 로직 수정.
- 검색어와의 유사도를 기준으로 신뢰할 수 있는 결과만 반환하는 기준 설계.
2. TroubleShooting
OpenAI Agent 템플릿 오류
- 문제:
ChatPromptTemplate
에서 사용되지 않는 변수(title
등)가 포함되어 발생하는 오류.
- 해결:
- 불필요한 변수를 템플릿에서 제거.
- 입력 데이터와 템플릿 변수의 일관성을 유지하도록 설계.
Hybrid Search의 점수 기준
- 문제: 하이브리드 검색에서 결과 신뢰도 기준 설정의 모호성.
- 해결:
- 검색 결과 점수에 따라 신뢰도 기준을 0.5 이상으로 설정.
- 문제:
- 계획 생성 함수, 일반 대화 함수 실행 시 인자로 넘겨주는 chat_history
의 대화 내역이 tool이 시작될 때 실행되는 on_tool_start
callback과 충돌.
- 해결:
- 계획 생성 함수, 일반 대화 함수를 tool에서 제외.
3. 느낀 점
유연한 설계의 중요성
- JSON 데이터를 중심으로 설계한 시스템은 확장성과 관리 용이성이 높음.
- 텍스트 데이터 처리 시,
rf
문자열, JSON 변환 등 다양한 도구를 활용해 오류를 방지하고 유연성을 극대화할 수 있음.