LangChain ও LlamaIndex Framework

লেসন ২৯ / ৪৬

🦜 LangChain কী?

LLM application build-এর popular framework। Chain, agent, memory, retrieval — সব built-in।

📦 Core Concept

  • LLM — model wrapper
  • Prompt template — variable substitute
  • Chain — multi-step pipeline
  • Memory — conversation history
  • Retriever — search interface
  • Agent — autonomous LLM + tools
  • Tool — callable function

🔗 Simple Chain

from langchain_openai import ChatOpenAI
from langchain.prompts import ChatPromptTemplate

llm = ChatOpenAI(model="gpt-4o-mini")
prompt = ChatPromptTemplate.from_template(
    "Translate to Bengali: {text}"
)
chain = prompt | llm
result = chain.invoke({"text": "Hello world"})

🧠 Memory

from langchain.memory import ConversationBufferMemory

memory = ConversationBufferMemory()
memory.save_context({"input": "Hi"}, {"output": "Hello"})
memory.load_memory_variables({})

🤖 Agent

from langchain.agents import create_react_agent, AgentExecutor
from langchain_community.tools import DuckDuckGoSearchRun

tools = [DuckDuckGoSearchRun()]
agent = create_react_agent(llm, tools, prompt)
executor = AgentExecutor(agent=agent, tools=tools)
executor.invoke({"input": "Latest AI news?"})

📊 LangGraph (newer)

Stateful multi-agent workflow — graph-based, more control।

🦙 LlamaIndex

RAG-focused alternative। Document indexing simpler।

from llama_index.core import VectorStoreIndex, SimpleDirectoryReader

docs = SimpleDirectoryReader("./data").load_data()
index = VectorStoreIndex.from_documents(docs)
query_engine = index.as_query_engine()
response = query_engine.query("What is X?")

🎯 কোনটা কখন

  • LangChain — general LLM app, agent, chain
  • LangGraph — complex multi-step, state machine
  • LlamaIndex — RAG-heavy app
  • Direct API — simple, full control
  • Haystack — production NLP pipeline
  • Semantic Kernel — .NET ecosystem

⚠️ Framework Trade-off

  • + Lots of integration built-in
  • + Best practice baked in
  • − Abstraction leak
  • − Breaking change frequent
  • − Debugging harder
  • − Performance overhead

💡 Recommendation

Production-এ direct API + selective LangChain component। Full framework lock-in এড়ান।