
“ 일주일에 다섯 번 학교를 가니까 이제 뭘 입어야할지 모르겠네.."
" 내 옷장 속에 이런 옷이 있었어? "
" 옷장에 있는 옷을 어떻게 입어야 이쁘지? "
이런 생각에서 하루동안 진행한 토이 프로젝트.
Gemini Flash 모델을 LangGraph와 결합해, 자연어 피드백까지 반영 가능한 “AI Stylist: Style For U”를 만들었습니다.
| 기술 | 설명 |
|---|---|
| LangChain | 프롬프트 기반 LLM 활용 |
| LangGraph | 상태 기반 LLM 워크플로우 구성 |
| Gemini Flash | 빠른 응답 LLM 모델 |
| Streamlit | 프론트엔드 웹 UI 구성 |
| BLIP | 이미지 자동 설명 (태그 추출) |
초기에는 LangChain만 사용했지만,
“추천 → 피드백 반영 → 수정” 흐름을 구성하려면
상태 관리와 흐름 제어가 중요한데, 이 부분에서 LangGraph가 딱 맞았습니다.
[옷장 json + 사용자의 위치/성별] -> [initial_plan_node] -> [초기 코디 출력] -> [피드백 입력] -> [feedback_node] -> [수정된 코디 출력]
graph = StateGraph(WardrobeState)
graph.add_node("initial_plan", initial_plan_node)
graph.add_node("apply_feedback", feedback_node)
graph.set_entry_point("initial_plan")
graph.add_edge("initial_plan", "apply_feedback")
graph.add_edge("apply_feedback", END)
app = graph.compile()

시연 링크는 아래를 참고해주시면 감사하겠습니다!
AI Stylist : Style For U
단순히 결과만 보여주는 AI가 아니라, 사용자와 대화하며 점점 더 똑똑해지는 AI Agent를 직접 만들어봤다는 것이 가장 인상 깊었습니다.
이 프로젝트는 단순한 코드 실행이 아니라, LangGraph를 통해 LLM을 능동적으로 제어하며 에이전트 형태로 구성한 첫 경험이었습니다. 사용자 피드백에 따라 요일별 코디를 수정하는 구조를 만들며, 진짜 대화형 AI Agent를 설계하고 운영하는 감각을 배웠습니다.
또한 Gemini LLM을 사용하면서 프롬프트 구성, LLM 응답 제어, 상태 기반 워크플로우 구성까지 실전에서 경험할 수 있었습니다.
덕분에 5등 안에 들어 에어팟🏆 까지 받을 수 있었고, 무엇보다도 LLM 기반 프로젝트에 자신감을 가지게 된 계기였습니다. 😄