تولید تقویتشده با بازیابی پایه
توسعه عاملهای هوشمند (Agentic Ai) با Langchain و Langgraph
- Connect query input, retrieval, context formatting, and answer generation.
- Instruct the model to answer only from retrieved evidence.
- Return an abstention when evidence is insufficient.
چرا RAG؟ از پرسش تا پاسخ
```mermaid
flowchart LR
Q["پرسش کاربر"] --> R["Retrieval"]
R --> C["context مرتبط"]
C --> P["prompt محدود به شواهد"]
P --> G["Generation"]
G --> A["پاسخ یا اعلام نبود شواهد"]
```
اجزای زنجیره و قرارداد داده
**ساخت context**
- متن اول: `"باتری ۱۲ ساعت است."`
- جداکننده: `"\\n\\n"`
- متن دوم: `"وزن ۱.۴ کیلوگرم است."`
- نتیجه: `"باتری ۱۲ ساعت است.\\n\\nوزن ۱.۴ کیلوگرم است."`
پیادهسازی کامل با LangChain
**از پرسش تا پاسخ**
- پرسش: `"What is the battery life?"`
- context: `"Battery lasts 12 hours."`
- بررسی: عبارت `12 hours` در context وجود دارد.
- خروجی: `"The battery lasts 12 hours."`
پاسخ مبتنی بر شواهد
**دو وضعیت شواهد**
- شواهد کافی: `12 hours` در context هست؛ پاسخ عدد را بازگو میکند.
- شواهد ناکافی: اطلاعات warranty نیست؛ خروجی `INSUFFICIENT_EVIDENCE` است.
محدودیت طول و طراحی قابل اتکا
**اثر افزودن chunkها**
- سه chunk: `100 + 100 + 100 = 300` token
- دستور و پرسش: `40` token
- کل prompt: `300 + 40 = 340` token
- با دو chunk اضافی: `500 + 40 = 540` token
- نتیجه: chunkهای اضافی هم prompt را بزرگتر و هم context را پرنویزتر میکنند.
بازگشت به دوره