Nnabuguides شروع سریع ←
راهنمای کوتاه و کاربردی

LangChain چیه؟ از ساخت اولین Agent تا حفظ کنترل انسان

LangChain جریان کار رو می‌سازه؛ انسان مرزها رو تعیین می‌کنه و سخت‌افزار تصمیم نهایی رو اعمال می‌کنه.

حدود ۸ دقیقه مطالعهسطح: مقدماتیPython
ایجنت، ابزارها، تأیید انسان و مرز سخت‌افزاری

اگه تا حالا با API یک مدل زبانی کار کرده باشی، احتمالاً از یه سؤال ساده شروع کردی: متن رو می‌فرستی و جواب می‌گیری. همه‌چیز خوبه تا وقتی که برنامه باید به دیتابیس وصل بشه، ابزار صدا بزنه یا چند مرحله تصمیم بگیره. LangChain این جریان رو هماهنگ می‌کنه؛ اما هماهنگ‌کردن ابزارها با دادن اختیار نهایی یکی نیست.

اول از همه: LangChain چیه؟

LangChain یه فریم‌ورک متن‌بازه برای ساخت اپلیکیشن‌ها و Agentهایی که با مدل‌های زبانی کار می‌کنن. خودش مدل هوش مصنوعی نیست؛ یه لایهٔ هماهنگ‌کننده‌ست که مدل رو به ابزارها، داده‌ها و منطق برنامه وصل می‌کنه.

یعنی به‌جای اینکه اتصال OpenAI یا Claude، اجرای ابزار، تاریخچهٔ گفتگو و فرمت خروجی رو هر بار از صفر مدیریت کنی، یه سری رابط و الگوی آماده داری که این قطعه‌ها رو کنار هم نگه می‌دارن.

خیلی خلاصه

مدل فکر می‌کنه، ابزار کار انجام می‌ده، داده اطلاعات می‌ده و LangChain جریان بین این‌ها رو مدیریت می‌کنه. تصمیم Agent هنوز به معنی اجازهٔ اجرا نیست.

مقایسه اتصال‌های پراکنده بدون LangChain و ساختار مرتب با LangChain
LangChain قرار نیست مدل را باهوش‌تر کند؛ قرار است اجزای برنامه را منظم‌تر به هم وصل کند.

چه چیزهایی رو کنار هم می‌ذاره؟

لازم نیست روز اول همهٔ بخش‌های LangChain رو یاد بگیری. برای شروع همین شش مفهوم تصویر کلی خوبی بهت می‌ده:

اجزای اصلی LangChain شامل مدل‌ها، پرامپت‌ها، ابزارها، بازیابی، Agent و حافظه
M

Models

یه رابط تقریباً یکسان برای کار با مدل‌های شرکت‌های مختلف؛ عوض‌کردن مدل دردسر کمتری داره.

P

Prompts

دستورها و پیام‌هایی که با متغیرهای برنامه ترکیب می‌شن و به مدل می‌رسن.

T

Tools

تابع‌هایی مثل جست‌وجو، خواندن دیتابیس، محاسبه یا صدا زدن یک API واقعی.

R

Retrieval

پیدا کردن بخش مرتبط از اسناد و اضافه‌کردنش به زمینهٔ مدل؛ پایهٔ خیلی از سیستم‌های RAG.

A

Agents

مدل با توجه به هدف تصمیم می‌گیره کدوم ابزار رو اجرا کنه و چه زمانی جواب نهایی بده.

H

Memory

نگه‌داشتن وضعیت و تاریخچه تا گفتگو یا فرایند چندمرحله‌ای رشته‌اش رو گم نکنه.

اولین Agent رو بسازیم

یه مثال خیلی ساده می‌سازیم: Agent هواشناسی که هر وقت لازم باشه تابع get_weather رو صدا می‌زنه. برای نمونه از OpenAI استفاده شده، ولی می‌تونی provider و مدل رو عوض کنی.

۱. نصب پکیج‌ها

pip install -U langchain langchain-openai

۲. ساخت Agent

from langchain.agents import create_agent

def get_weather(city: str) -> str:
    """Get the current weather for a city."""
    # در پروژهٔ واقعی اینجا API هواشناسی صدا زده می‌شه
    return f"Weather in {city}: sunny, 24°C"

agent = create_agent(
    model="openai:gpt-5-mini",
    tools=[get_weather],
    system_prompt="جواب‌ها را کوتاه و فارسی بده.",
)

result = agent.invoke({
    "messages": [{
        "role": "user",
        "content": "هوای تورنتو چطوره؟"
    }]
})

print(result["messages"][-1].content)
قبل از اجرا

کلید API را داخل کد ننویس. آن را با متغیر محیطی OPENAI_API_KEY تنظیم کن.

اینجا نکتهٔ جالب اینه که ما نگفتیم تابع هواشناسی حتماً اجرا بشه. مدل توضیح تابع و سؤال کاربر رو می‌بینه، خودش تصمیم می‌گیره ابزار لازمه، نتیجه‌اش رو می‌گیره و بعد جواب نهایی رو می‌سازه.

پشت صحنه چه اتفاقی می‌افته؟

چرخه اجرای Agent از سؤال تا انتخاب ابزار، مشاهده نتیجه و پاسخ نهایی
سؤال وارد می‌شه

Agent پیام کاربر، دستور سیستمی و وضعیت فعلی رو کنار هم می‌ذاره.

مدل تصمیم می‌گیره

بررسی می‌کنه که جواب آماده‌ست یا برای ادامه به یکی از ابزارها نیاز داره.

ابزار اجرا می‌شه

LangChain ورودی تابع رو آماده می‌کنه، ابزار رو صدا می‌زنه و نتیجه رو به جریان برمی‌گردونه.

حلقه ادامه پیدا می‌کنه

مدل نتیجه رو می‌بینه؛ یا ابزار دیگه‌ای انتخاب می‌کنه یا جواب نهایی رو تحویل می‌ده.

این حلقه تا وقتی ادامه داره که مدل جواب نهایی بده یا محدودیت اجرای تعیین‌شده به پایان برسه. از LangChain v1، Agentهایی که با create_agent ساخته می‌شن روی LangGraph اجرا می‌شن؛ فعلاً لازم نیست درگیر جزئیاتش بشیم.

حلقهٔ انسانی و مرز سخت‌افزاری

LangChain به Agent کمک می‌کنه فکر کنه، ابزار انتخاب کنه و یک عمل رو آماده کنه. اما وقتی پای پول، هویت، دسترسی یا اطلاعات حساس وسطه، آماده‌کردن یک عمل نباید خودکار به معنی اجازهٔ اجرای اون باشه.

ایجنت عمل را پیشنهاد می‌دهد، سیاست در سخت‌افزار بررسی می‌شود و اعمال خارج از محدوده به تأیید انسان برمی‌گردند
داخل محدوده، Agent می‌تونه خودکار کار کنه؛ خارج از محدوده، تصمیم به انسان برمی‌گرده. در هر دو مسیر، مرز در سخت‌افزار اعمال می‌شه.
مدل سادهٔ Ledger Agent Stack

ایجنت پیشنهاد می‌ده. انسان تأیید می‌کنه. سخت‌افزار اعمال می‌کنه.

Agent پیشنهاد می‌ده

تحقیق، برنامه‌ریزی و آماده‌کردن تراکنش داخل محیط نرم‌افزاری Agent انجام می‌شه.

سیاست بررسی می‌شه

کارهای مجاز می‌تونن داخل محدودهٔ ازقبل‌تعریف‌شده ادامه پیدا کنن؛ مدل خودش مرز امنیتی نیست.

انسان موارد حساس رو می‌بینه

کار خارج از محدوده روی نمایشگر امن بررسی و با یک تأیید فیزیکی قبول یا رد می‌شه.

سخت‌افزار تصمیم رو اعمال می‌کنه

کلید خصوصی وارد محیط Agent نمی‌شه و نرم‌افزار نمی‌تونه تصمیم نهایی رو دور بزنه.

در نسخهٔ فعلی Ledger Agent Stack، ابزارهایی مثل Device Management Kit Skills و CLIهای Ledger Wallet، Enterprise و Multisig قابل آزمایشن. Agent Intents، سیاست‌های سخت‌افزاری و Proof of Human رو باید به‌عنوان قابلیت‌های در حال عرضه یا نقشهٔ راه معرفی کرد، نه چیزهایی که همه‌شون همین امروز به‌صورت عمومی آماده‌ان.

چه زمانی LangChain انتخاب خوبیه؟

احتمالاً به کارت میاد اگر…

  • مدل باید چند ابزار یا API داشته باشه.
  • جریان کارت چندمرحله‌ای یا Agentمحوره.
  • می‌خوای provider مدل رو راحت‌تر عوض کنی.
  • به حافظه، streaming یا خروجی ساختاریافته نیاز داری.

شاید لازم نباشه اگر…

  • فقط یک درخواست ساده به مدل می‌فرستی.
  • یک SDK مستقیم همهٔ نیازت رو پوشش می‌ده.
  • کمترین وابستگی و کنترل کامل اولویت اصلیته.
  • هنوز مسئلهٔ واقعی محصولت مشخص نشده.

قانون ساده: از کمترین پیچیدگی ممکن شروع کن. اگر یه درخواست مستقیم به API جواب می‌ده، همون بهترین گزینه‌ست. وقتی ابزارها، state و مراحل تصمیم‌گیری زیاد شدن، LangChain ارزشش رو نشون می‌ده. LangChain مشخص می‌کنه کار چطور جلو بره؛ انسان و سخت‌افزار مشخص می‌کنن چه کاری اجازهٔ اجرا داره.

سه اشتباه رایج

  • Agent برای همه‌چیز: خیلی از کارها با یک جریان قطعی یا حتی یک فراخوانی ساده بهتر، ارزان‌تر و قابل‌اعتمادتر انجام می‌شن.
  • ابزارهای مبهم: اسم و توضیح تابع باید دقیق باشه؛ مدل از همین توضیح می‌فهمه چه زمانی ابزار رو انتخاب کنه.
  • اعتماد بدون مرز: ثبت فراخوانی‌ها و خطاها لازمه، اما برای کار حساس کافی نیست. اختیار Agent رو محدود کن و تأیید انسانی رو به یک مرز سخت‌افزاری وصل کن.
ادامهٔ این مجموعه

LangGraph و LangSmith چی می‌شن؟

عمداً وارد جزئیاتشون نشدیم. در مقاله‌های جدا می‌ریم سراغ LangGraph برای کنترل جریان‌های پیچیده و LangSmith برای trace، ارزیابی و دیباگ Agentها. هر کدوم به‌اندازهٔ کافی مهم هستن که راهنمای مستقل داشته باشن.

منابع رسمی

LangChain Quickstart ↗ LangChain Agents ↗ LangChain Models ↗ LangChain Tools ↗ Ledger Agent Stack: Open Toolkit ↗ Don’t Give the Agent the Keys ↗ Ledger 2026 AI Security Roadmap ↗
N
NabuGuideراهنماهای ساده و کاربردی برای ساختن با AI