چیت‌شیت

مربی‌های هوش مصنوعی و ابزارهای یادگیری

AI Tutors and Learning Tools

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

  • ۱۲ بخش
  • ۱ درس مرتبط
  • کد و دستورها عیناً از دوره‌ی اصلی
فهرست مطالب
  1. آنچه هر پروژه می‌سازد
  2. اجرا و نمره‌دهی
  3. یک نوبت گفت‌وگو مربی
  4. به‌روزرسانی BKT
  5. حلقه مربی مطالعه
  6. توابع پروژه
  7. قوانین در کد
  8. پیش‌فرض‌ها و اعداد
  9. خطاها و راه‌حل‌ها
  10. اختصارات
  11. پرسش‌ها
  12. نکات

آنچه هر پروژه می‌سازد

مقایسه
فاکتورمربی مطالعهمسیر‌یابدفترچه تکمیل خودکاربرنامه‌ریز مواد مصرفی
خروجی ساختصفحه تمرین با تاریخ‌های مرورمسیر یادگیری امکان‌پذیردفترچه یادداشت محلیلیست وسایل و کمبودها
محیط اجراNode.js 22.18Python 3.10+Node 22.18Python 3.10+
ورودیفایل JSON دسته کارت و رویدادهای تلاشمنابع، اهداف، بودجهپیکره متنی شامل id و متنشرکت‌کنندگان، مواد، موجودی
خروجیindex.html, progress.jsonlearning-map.html, path.jsonreport.html, vocabulary-model.jsonpacking-list.csv, shortages.json
حلقه مروردانلود JSON تلاش‌ها--decisions decisions.jsonدانلود vocabulary-model.json--decisions decisions.json
محدودیتفقط تطابق دقیق پاسخپیشرفت خوداظهاری‌شدهیک توکن بعدی، دو تا کانتکستیک نشست هم‌زمان

اجرا و نمره‌دهی

دستورها
دستورعملکرد
python3 scripts/project_test.py <project> --init <workspace>فضای کاری می‌سازد. مرحله اول ناموفق است
python3 scripts/project_test.py <project> --stage 1 --path <workspace> --strictیک مرحله را نمره‌دهی می‌کند
python3 scripts/project_test.py <project> --all --solution --strictراه‌حل مرجع را بررسی می‌کند
node --experimental-strip-types main.ts --deck ./fixtures/deck.json --attempts ./fixtures/attempts.json --initial-date 2026-09-01 --date 2026-09-03 --out ./study-outputصفحه تمرین و اسکژول را می‌سازد
python3 cli.py samples/input.json --output demo-outputمسیریاب یا برنامه‌ریز مواد را اجرا می‌کند
node cli.ts sample.json outputدفترچه را آموزش داده و output/report.html را می‌نویسد
python main.pyمطالعه شبیه‌سازی‌شده کارایی مربی را اجرا می‌کند
npm run serveوب‌اپلیکیشن مربی روی پورت 8090:

یک نوبت گفت‌وگو مربی

گام‌به‌گام
  1. next_conceptپیمایش DAG. انتخاب اولین مفهوم زیر 0.85 که همه پیش‌نیازهایش یاد گرفته شده‌اند.
  2. دشواری0.3 به‌علاوه 0.1 به ازای هر پیش‌نیاز.
  3. کنش قبلیداربست پیش‌نیاز 0.15 کم می‌کند. راهنمایی 0.08 کم می‌کند.
  4. پاسخ‌های یادگیرندهدرست بر اساس سیگموئید دانش منهای دشواری.
  5. socratic_policyدرست و بالای 0.8 منجر به celebrate_and_advance می‌شود.
  6. socratic_policyدرست منجر به reinforce_and_next_question. غلط بالای 0.5 منجر به hint می‌شود.
  7. socratic_policyغلط در 0.5 یا کمتر منجر به scaffold_from_prereq می‌شود.
  8. bkt_updateبه‌روزرسانی تسلط، سپس افزودن گام یادگیری.

به‌روزرسانی BKT

کد
python
p = BKTParams()                                 # p_init، p_learn، p_slip، p_guess
if correct:
    num = mastery * (1 - p.p_slip)
    denom = num + (1 - mastery) * p.p_guess
else:
    num = mastery * p.p_slip
    denom = num + (1 - mastery) * (1 - p.p_guess)
posterior = num / max(denom, 1e-6)
return posterior + (1 - posterior) * p.p_learn  # انتقال یادگیری

حلقه مربی مطالعه

معماری
بازپخشدانلودdeck.jsonمنابع و کارت‌هاattempts.jsonپاسخ‌های تاریخ‌دارvalidateDeckآفست‌ها حاوی پاسخ هستندbuildProgressجعبه و موعد به ازای هر کارتexportPracticeخروجی‌ها را می‌نویسدindex.htmlنمایش و ثبتprogress.jsonکارت‌های موعدرسیده

توابع پروژه

کار و کد
وظیفهکد
نمره‌دهی یک پاسخ تایپ‌شدهgradeAnswer(deck, cardId, response)
فهرست کارت‌های موعدرسیدهdueCards(progress, date)
ترتیب پیش‌نیازهاpath_for(index, target, completed=None)
رتبه‌بندی مسیرها در یک بودجهrank_paths(index, goals, budget, completed=None)
پیشنهاد کلمه بعدیsuggest(model: Model, prefix: string, history?: string[], limit?: number)
بارگذاری یک مدل ذخیره‌شدهimportModel(value: unknown)
مقیاس‌بندی موادscale(model, participants=None)
یافتن کمبودهاshortages(model, participants=None)

قوانین در کد

مفهوم‌ها
تطابق پاسخ
تبدیل NFKC، حروف کوچک، حذف فاصله‌های اضافی و علائم نگارشی انتها. سپس تطابق دقیق.
جعبه
درست 1 واحد می‌افزاید تا سقف 5. غلط به 0 ریست می‌کند.
بازه زمانی
در صورت درستی 2 ** (state.box - 1) روز. در صورت نادرستی 1 روز.
رتبه مسیر
بیشترین اهداف پوشش‌داده‌شده، سپس کمترین زمان، سپس شناسه‌ها.
امتیاز پیشنهاد
فرمول order * 1000000 + count. تاریخچه طولانی‌تر اولویت دارد.
اقلام مصرفی
quantity*participants.
تجهیزات اشتراکی
quantity*ceil(participants/share).
موجودی نامشخص
موجودی غیرقابل‌تبدیل وضعیت کمبود را نامشخص می‌گذارد.

پیش‌فرض‌ها و اعداد

پیش‌فرض‌ها
تنظیمپیش‌فرضنکته
p_init0.2دانش پیشین
p_learn0.12نرخ یادگیری در هر تمرین
`p_slip`, `p_guess`0.10حدس برابر 0.15 است
master_threshold0.85مفاهیم فراگرفته‌شده نادیده گرفته می‌شوند
Catalog size18حداکثر برنامه‌ریز دقیق
`suggest` limit5بازه مجاز 0..50
Planner `compare`[8, 12]تعداد شرکت‌کنندگان برای مقایسه
Study `n_turns`6010 یادگیرنده در هر شاخه

خطاها و راه‌حل‌ها

عیب‌یابی
  • «Canonical answer must occur in the evidence quote»

    علت
    آفست‌ها پاسخ را شامل نمی‌شوند
    راه‌حل
    اصلاح start و end در واحدهای UTF-16
  • «Conflicting duplicate attempt ID»

    علت
    شناسه یکسان، محتوای دیگر
    راه‌حل
    یک شناسه جدید به هر تلاش اختصاص دهید
  • «Proposal lacks verbatim answer evidence»

    علت
    نقل‌قول مدل در منبع وجود ندارد
    راه‌حل
    آن را رد کنید. دسته کارت را دست‌نخورده نگه دارید
  • «prerequisite cycle»

    علت
    منابع به یکدیگر وابسته هستند
    راه‌حل
    یک یال پیش‌نیاز را حذف کنید
  • «stale progress»

    علت
    ورودی پس از خروجی گرفتن تغییر کرده است
    راه‌حل
    اجرای مجدد، سپس ویرایش تصمیم‌های جدید
  • «complete prerequisites first»

    علت
    پیشرفت از یک گام جهش کرده است
    راه‌حل
    ابتدا پیش‌نیازها را به عنوان انجام‌شده علامت بزنید
  • «inconsistent conversion cycle»

    علت
    دو مسیر تبدیل با هم همخوانی ندارند
    راه‌حل
    ضرایب تبدیل را اصلاح کنید
  • «Unsupported model schema»

    علت
    مقدار schemaVersion برابر 1 نیست
    راه‌حل
    مدلی با نسخه شمای 1 بارگذاری کنید

اختصارات

اصطلاح‌ها
BKT
ردگیری دانش بیزی. احتمال تسلط به ازای هر مفهوم.
FSRS
اسکژولر تکرار فاصله‌دار رایگان. بهتر از SM-2.
DAG
گراف مفاهیم با یال‌های پیش‌نیازی.
COPPA
قانون ایالات متحده برای محدودیت داده‌های کودکان زیر 13 سال.
OER
محتوای آموزشی باز متصل به هر گره برنامه‌ی درسی.

پرسش‌ها

پرسش و پاسخ
مربی وقتی پاسخ خواسته می‌شود چه می‌کند؟
یک سؤال هدایت‌کننده می‌پرسد.
چه چیزی اثربخشی مربی را ثابت می‌کند؟
اختلاف پیش‌آزمون/پس‌آزمون با 10 یادگیرنده طی دو هفته.
آیا مربی مطالعه مقاله‌ها را داوری می‌کند؟
خیر. از سوالات طراحی‌شده و تطابق دقیق استفاده می‌کند.
آیا کارت مدل وارد دسته کارت می‌شود؟
خیر. برای بررسی به card-proposal.json می‌رود.
آیا برنامه‌ریز حجم چسب را حدس می‌زند؟
خیر. هرگز چگالی یا اندازه بسته‌بندی را استنتاج نمی‌کند.

نکات

نکته‌ها
  • یک گراف برنامه‌ی درسی با 50 تا 150 گره مفهومی بسازید.
  • با یک خط مبنای غیرانطباقی روی همان محتوا مقایسه کنید.
  • حافظه را پس از 1 سال حذف خودکار کنید. دامنه آن را بر اساس شناسه یادگیرنده محدود کنید.
  • تاریخ مرور را از صفحه به --date ارسال کنید.
  • مجموعه دومی از مثال‌ها را برای ارزیابی نگه دارید.
  • بارگذاری مجدد صفحه تمرین قبل از دانلود، تلاش‌های جدید را نادیده می‌گیرد.