[AI] Langchain 기반 멀티스텝 AI 구현 - 100-hours-a-week/21-iceT-wiki GitHub Wiki
1. 프로젝트 기능별 LangChain 기반 멀티스텝 AI 구현 검토
기능 영역 | 요구 특성 | LangChain 적합도 | 비고 |
---|---|---|---|
문제 해설 | 단계적 추론, 조건 분기, 언어 선택 처리 | 높음 | ✅ 도입 결정 |
챗봇 | 이전 대화 기반 기억, 흐름 제어 | 높음 | ✅ 도입 고려 |
문제 추천 시스템 | 정형 데이터 기반 분석 및 조건 필터링 | 낮음 | 기존 로직 유지 |
유저 군집화 | 통계 기반 모델, clustering 알고리즘 | 낮음 | 기존 ML 파이프라인 유지 |
2. 문제 해설 AI 기능에 도입하기로 결정한 이유
- 프롬프트를 통해 옳은 해설을 답변하도록 유도할 수 있지만, 생성된 코드는 이를 반영하지 못하는 문제가 자주 발생함
- 순열과 조합과 같은 문제 유형에서 알고리즘의 유형을 잘못 파악하는 경우가 발생하는데, 프롬프트를 나눠서 관리하면 수정과 관리가 용이해짐
- 챗봇의 경우 V2에 추가될 예정이므로 우선순위가 낮음
3. 도입 방법 및 결과
문제 해설 생성을 다음과 같은 단계로 분리
- 1단계 : 해설 생성
Problem Check
: 문제 핵심 요구사항 요약Problem Solving
: 적합한 알고리즘 분류 및 해결 전략 설명Comment
: 알고리즘 선택 시 주의사항이나 전략 보완
- 2단계 : 코드 생성
-
Solution Code
: 수강생이 선택한 언어로 정답 코드 생성
결과 이전에 오답을 출력했던 백준 15649, 백준 1744 도 정답을 출력해냄