Documents

2023 NLP Study: LangChain Basics to Memory Systems

5 min readSep 25, 2023Feb 22, 2026

NLP_2023 Project

NLP_2023 is a learning project from a 2023 NLP course, covering LangChain fundamentals across 24 commits.

Learning Curriculum

graph TD
    A[LangChain 소개] --> B[프롬프트 템플릿]
    B --> C[체인 조합]
    C --> D[메모리 시스템]
    D --> E[에이전트]
    E --> F[도구 활용]
    F --> G[최종 프로젝트]

LangChain Module Exploration

Topics covered per module:

ModuleContentCommits
PromptsPrompt templates, parsing4
ChainsSequential, Router3
MemoryBuffer, Summary, Window4
AgentsReAct, OpenAI Functions5
ToolsCustom tools, search4
TestIntegration tests4

Memory System Comparison

# ConversationBufferMemory - 전체 저장
memory = ConversationBufferMemory()

# ConversationSummaryMemory - 요약 저장
memory = ConversationSummaryMemory(llm=llm)

# ConversationBufferWindowMemory - 최근 N개만
memory = ConversationBufferWindowMemory(k=5)
graph LR
    A[Buffer] -->|"장: 정확한 기억<br>단: 토큰 증가"| D[선택]
    B[Summary] -->|"장: 토큰 절약<br>단: 세부 손실"| D
    C[Window] -->|"장: 균형잡힌<br>단: 과거 손실"| D

LangChain Test

Tests were written to verify that each module behaves correctly:

def test_chain_with_memory():
    chain = ConversationChain(
        llm=ChatOpenAI(),
        memory=ConversationBufferMemory()
    )
    r1 = chain.predict(input="내 이름은 하렴이야")
    r2 = chain.predict(input="내 이름이 뭐였지?")
    assert "하렴" in r2
Tags
NLPLangChainMemoryAgentsLearning