LLM API 호출만으로는 앱이 안 된다 — LangChain(랭체인)이 정확히 무엇인지, 5개 부품과 30줄 RAG 코드로 끝내기
ChatGPT API 호출 한 줄로 "AI 기능 붙였다"고 말할 수 있던 시절은 끝났습니다. 내 회사 문서로 답하게 하고, 검색도 시키고, 계산기도 쓰게 하고, 대화 맥락까지 기억하게 하려면 그 사이를 이어 주는 배관 공사 가 필요합니다. 그 배관의 표준 도구가 바로 LangChain(랭체인) 입니다. 20년 가까이 SI와 클라우드 아키텍처를 하면서 RAG 파이프라인을 직접 만들어 본 입장에서, 랭체인이 정확히 무엇이고 언제 써야 하는지 한 편으로 정리합니다. LangChain이 뭔가요? 한 문장으로 LangChain은 LLM을 중심으로 애플리케이션을 조립하는 오픈소스 프레임워크 입니다. 2022년 10월 Harrison Chase가 공개했고, Python과 JavaScript/TypeScript 두 언어를 지원합니다. 핵심 아이디어는 단순합니다. 모델, 프롬프트, 외부 데이터, 도구, 메모리 같은 부품을 표준화된 인터페이스 로 감싸서 레고처럼 연결할 수 있게 하는 것입니다. 덕분에 OpenAI GPT로 만든 체인을 Anthropic Claude나 Google Gemini, 혹은 vLLM으로 띄운 로컬 Llama 모델로 바꿀 때 코드 한두 줄만 손대면 됩니다. 벡터 DB를 Chroma에서 pgvector로 옮길 때도 마찬가지입니다. 이 "교체 가능성"이 랭체인을 쓰는 가장 큰 이유입니다. 핵심 구성요소 5가지만 알면 전체가 보인다 ① Model — 채팅 모델(ChatOpenAI, ChatAnthropic 등)과 임베딩 모델을 같은 인터페이스로 다룹니다. 어떤 벤더든 invoke() 한 번으로 호출합니다. ② Prompt Template — 프롬프트를 코드에 하드코딩하지 않고 변수가 있는 템플릿으로 관리합니다. 시스템 메시지, 예시(few-shot), 대화 기록을 조합하기 쉽습니다. ③ Output Parser — 모델이 뱉은 텍스트를 JSON, Pydantic 객체, 리스트 등 프로그램이 쓸 수 있는...