# LangChain Wiki

## CH01 LangChain 시작하기
- [01. 설치 영상보고 따라하기](https://wikidocs.net/153263)
- [02. OpenAI API 키 발급 및 테스트](https://wikidocs.net/153264)
- [03. LangSmith 추적 설정](https://wikidocs.net/153265)
- [04. OpenAI API 사용(GPT-4o 멀티모달)](https://wikidocs.net/153266)
- [05. LangChain Expression Language(LCEL)](https://wikidocs.net/153267)
- [06. LCEL 인터페이스](https://wikidocs.net/153268)
- [07. Runnable](https://wikidocs.net/153269)

## CH02 프롬프트(Prompt)
- [01. 프롬프트(Prompt)](https://wikidocs.net/153270)
- [02. 퓨샷 프롬프트(FewShotPromptTemplate)](https://wikidocs.net/153271)
- [03. LangChain Hub](https://wikidocs.net/153272)
- [04. 개인화된 프롬프트(Hub에 업로드)](https://wikidocs.net/153273)

## CH03 출력 파서(Output Parsers)
- [01. Pydantic 출력 파서(PydanticOutputParser)](https://wikidocs.net/153274)
- [02. 콤마 구분자 출력 파서(CommaSeparatedListOutputParser)](https://wikidocs.net/153275)
- [03. 구조화된 출력 파서(StructuredOuputParser)](https://wikidocs.net/153276)
- [04. JSON 출력 파서(JsonOutputParser)](https://wikidocs.net/153277)
- [05. 데이터프레임 출력 파서(PandasDataFrameOutputParser)](https://wikidocs.net/153278)
- [06. 날짜 형식 출력 파서(DatetimeOutputParser)](https://wikidocs.net/153279)
- [07. 열거형 출력 파서(EnumOutputParser)](https://wikidocs.net/153280)
- [08. 출력 수정 파서(OutputFixingParser)](https://wikidocs.net/153281)

## CH04 모델(Model)
- [01. 다양한 LLM 모델 활용](https://wikidocs.net/153282)
- [02. 캐싱(Cache)](https://wikidocs.net/153283)
- [03. 모델 직렬화(Serialization) - 저장 및 불러오기](https://wikidocs.net/153284)
- [04. 토큰 사용량 확인](https://wikidocs.net/153285)
- [05. 구글 생성 AI(Google Generative AI)](https://wikidocs.net/153286)
- [06. 허깅페이스 엔드포인트(HuggingFace Endpoints)](https://wikidocs.net/153287)
- [07. 허깅페이스 로컬(HuggingFace Local)](https://wikidocs.net/153288)
- [08. 허깅페이스 파이프라인(HuggingFace Pipeline)](https://wikidocs.net/153289)
- [09. 올라마(Ollama)](https://wikidocs.net/153290)
- [10. GPT4ALL](https://wikidocs.net/153291)
- [11. 비디오(Video) 질의 응답 LLM (Gemini)](https://wikidocs.net/153292)

## CH05 메모리(Memory)
- [01. 대화 버퍼 메모리(ConversationBufferMemory)](https://wikidocs.net/153293)
- [02. 대화 버퍼 윈도우 메모리(ConversationBufferWindowMemory)](https://wikidocs.net/153294)
- [03. 대화 토큰 버퍼 메모리(ConversationTokenBufferMemory)](https://wikidocs.net/153295)
- [04. 대화 엔티티 메모리(ConversationEntityMemory)](https://wikidocs.net/153296)
- [05. 대화 지식그래프 메모리(ConversationKGMemory)](https://wikidocs.net/153297)
- [06. 대화 요약 메모리(ConversationSummaryMemory)](https://wikidocs.net/153298)
- [07. 벡터저장소 검색 메모리(VectorStoreRetrieverMemory)](https://wikidocs.net/153299)
- [08. LCEL Chain 에 메모리 추가](https://wikidocs.net/153300)
- [09. SQLite 에 대화내용 저장](https://wikidocs.net/153301)
- [10. RunnableWithMessageHistory에 ChatMessageHistory추가](https://wikidocs.net/153302)

## CH06 문서 로더(Document Loader)
- [01. 도큐먼트(Document) 의 구조](https://wikidocs.net/153303)
- [02. PDF](https://wikidocs.net/153304)
- [03. 한글(HWP)](https://wikidocs.net/153305)
- [04. CSV](https://wikidocs.net/153306)
- [05. Excel](https://wikidocs.net/153307)
- [06. Word](https://wikidocs.net/153308)
- [07. PowerPoint](https://wikidocs.net/153309)
- [08. 웹 문서(WebBaseLoader)](https://wikidocs.net/153310)
- [09. 텍스트(TextLoader)](https://wikidocs.net/153311)
- [10. JSON](https://wikidocs.net/153312)
- [11. Arxiv](https://wikidocs.net/153313)
- [12. UpstageLayoutAnalysisLoader](https://wikidocs.net/153314)
- [13. LlamaParser](https://wikidocs.net/153315)

## CH07 텍스트 분할(Text Splitter)
- [01. 문자 텍스트 분할(CharacterTextSplitter)](https://wikidocs.net/153316)
- [02. 재귀적 문자 텍스트 분할(RecursiveCharacterTextSplitter)](https://wikidocs.net/153317)
- [03. 토큰 텍스트 분할(TokenTextSplitter)](https://wikidocs.net/153318)
- [04. 시멘틱 청커(SemanticChunker)](https://wikidocs.net/153319)
- [05. 코드 분할(Python, Markdown, JAVA, C++, C#, GO, JS, Latex 등)](https://wikidocs.net/153320)
- [06. 마크다운 헤더 텍스트 분할(MarkdownHeaderTextSplitter)](https://wikidocs.net/153321)
- [07. HTML 헤더 텍스트 분할(HTMLHeaderTextSplitter)](https://wikidocs.net/153322)
- [08. 재귀적 JSON 분할(RecursiveJsonSplitter)](https://wikidocs.net/153323)

## CH08 임베딩(Embedding)
- [01. OpenAIEmbeddings](https://wikidocs.net/153324)
- [02. 캐시 임베딩(CacheBackedEmbeddings)](https://wikidocs.net/153325)
- [03. 허깅페이스 임베딩(HuggingFace Embeddings)](https://wikidocs.net/153326)
- [04. UpstageEmbeddings](https://wikidocs.net/153327)
- [05. OllamaEmbeddings](https://wikidocs.net/153328)
- [06. GPT4ALL 임베딩](https://wikidocs.net/153329)
- [07. Llama CPP 임베딩](https://wikidocs.net/153330)

## CH09 벡터저장소(VectorStore)
- [01. Chroma](https://wikidocs.net/153331)
- [02. FAISS](https://wikidocs.net/153332)
- [03. Pinecone](https://wikidocs.net/153333)

## CH10 검색기(Retriever)
- [01. 벡터스토어 기반 검색기(VectorStore-backed Retriever)](https://wikidocs.net/153334)
- [02. 문맥 압축 검색기(ContextualCompressionRetriever)](https://wikidocs.net/153335)
- [03. 앙상블 검색기(EnsembleRetriever)](https://wikidocs.net/153336)
- [04. 긴 문맥 재정렬(LongContextReorder)](https://wikidocs.net/153337)
- [05. 상위 문서 검색기(ParentDocumentRetriever)](https://wikidocs.net/153338)
- [06. 다중 쿼리 검색기(MultiQueryRetriever)](https://wikidocs.net/153339)
- [07. 다중 벡터저장소 검색기(MultiVectorRetriever)](https://wikidocs.net/153340)
- [08. 셀프 쿼리 검색기(SelfQueryRetriever)](https://wikidocs.net/153341)
- [09. 시간 가중 벡터저장소 검색기(TimeWeightedVectorStoreRetriever)](https://wikidocs.net/153342)
- [10. 한글 형태소 분석기(Kiwi, Kkma, Okt) + BM25 검색기](https://wikidocs.net/153343)
- [11. Convex Combination(CC) 적용된 앙상블 검색기(EnsembleRetriever)](https://wikidocs.net/153344)

## CH11 리랭커(Reranker)
- [01. Cross Encoder Reranker](https://wikidocs.net/153345)
- [02. Cohere Reranker](https://wikidocs.net/153346)
- [03. Jina Reranker](https://wikidocs.net/153347)
- [04. FlashRank Reranker](https://wikidocs.net/153348)

## CH12 Retrieval Augmented Generation(RAG)
- [01. PDF 문서 기반 QA(Question-Answer)](https://wikidocs.net/153349)
- [02. 네이버 뉴스기사 QA(Question-Answer)](https://wikidocs.net/153350)
- [03. RAG 의 기능별 다양한 모듈 활용기](https://wikidocs.net/153351)
- [04. RAPTOR: 긴 문맥 요약(Long Context Summary)](https://wikidocs.net/153352)
- [05. 대화내용을 기억하는 RAG 체인](https://wikidocs.net/153353)
- [06. 자기 탐색 RAG(Self-RAG)](https://wikidocs.net/153354)
- [07. 교정적 RAG(CRAG, Corrective RAG)](https://wikidocs.net/153355)

## CH13 LangChain Expression Language(LCEL)
- [01. RunnablePassthrough](https://wikidocs.net/153356)
- [02. Runnable 구조(그래프) 검토](https://wikidocs.net/153357)
- [03. RunnableLambda](https://wikidocs.net/153358)
- [04. LLM 체인 라우팅(RunnableLambda, RunnableBranch)](https://wikidocs.net/153359)
- [05. RunnableParallel](https://wikidocs.net/153360)
- [06. 동적 속성 지정(configurable_fields, configurable_alternatives)](https://wikidocs.net/153361)
- [07. @chain 데코레이터로 Runnable 구성](https://wikidocs.net/153362)
- [08. RunnableWithMessageHistory](https://wikidocs.net/153363)
- [09. 사용자 정의 제네레이터(generator)](https://wikidocs.net/153364)
- [10. Runtime Arguments](https://wikidocs.net/153365)

## 참고 자료
- [LangChain 공식 문서](https://python.langchain.com/docs/)
- [LangGraph 공식 문서](https://langchain-ai.github.io/langgraph/)
- [LangChain Hub](https://smith.langchain.com/hub)
- [LangSmith](https://smith.langchain.com/)
- [LangChain 오픈 튜토리얼](https://langchain-opentutorial.gitbook.io/langchain-opentutorial/)

---

## Lecture

- [랭체인 한국어 튜토리얼 코드저장소(GitHub)](https://github.com/teddylee777/langchain-kr)
- [패스트캠퍼스 - RAG 비법노트](https://fastcampus.co.kr/data_online_teddy?utm_source=wikidocs&utm_medium=viral&utm_campaign=prd%5E250318%5E239355&utm_content=teacher%5E239355)

본 위키는 [테디노트의 랭체인LangChain 노트](https://wikidocs.net/book/14314)와 [LangGraph 공식 문서](https://langchain-ai.github.io/langgraph/)를 참고하여 작성되었습니다. 
