TGViewer
AI Engineers AI Engineers @llmengineers · 2.62K subscribers
Post #205 1.38K
کنترل رفتار Agent های هوش مصنوعی یه چالش بزرگه. مدل‌های زبانی بزرگ (LLMs) ذاتا غیرقطعی (non-deterministic) هستن و همین باعث می‌شه نتونیم بهشون اعتماد کامل کنیم تا یه تسک مشخص رو هر بار دقیقاً مثل قبل انجام بدن. ممکنه وسط کار متوقف بشن، اطلاعات رو جا بندازن یا تصمیمات غیرمنتظره بگیرن.

برای حل این مشکل، یه راهکار عملی، استفاده از ماشین حالت متناهی یا Finite State Machine (FSM) هست که منطق و جریان کار Agent رو خارج از خود LLM تعریف و کنترل می‌کنه. این کار باعث می‌شه رفتار Agent قابل پیش‌بینی و قابل اعتماد بشه.

روش کار به این صورته که کل منطق Agent، حالت‌ها (states)، انتقال‌ها (transitions) و اکشن‌های مربوط به هر حالت، توی یه فایل YAML تعریف می‌شه. این فایل YAML به عنوان "منبع حقیقت" (source of truth) برای رفتار Agent عمل می‌کنه. دیگه محدودیت حجم پرامپت رو نداریم و منطق پیچیده‌تری رو می‌شه پیاده کرد.

نکته کلیدی اینه که در هر مرحله از اجرای FSM، یه اسکریپت پایتون وضعیت فعلی رو از فایل YAML می‌خونه و به LLM میگه دقیقاً چه کاری باید انجام بده. اینطوری، Agent برای فهمیدن اینکه الان کجای پروسه است و مرحله بعد چی هست، به حافظه داخلی و context خودش که ممکنه خطاپذیر باشه، تکیه نمی‌کنه. هر بار وضعیت دقیق از فایل YAML خونده می‌شه. این کار تاثیر "temperature" و حواس‌پرتی‌های احتمالی LLM رو به حداقل می‌رسونه و وفاداری Agent به سناریوی تعریف‌شده رو تضمین می‌کنه.

به نظر من، این روش یه تغییر نگرش مهمه. به جای اینکه سعی کنیم با prompt engineering پیچیده، رفتار LLM رو کنترل کنیم، منطق کنترلی رو به یه سیستم دترمنیستیک خارجی (FSM در YAML) منتقل می‌کنیم و از LLM فقط به عنوان یه موتور پردازش زبان برای انجام تسک‌های مشخص در هر حالت استفاده می‌کنیم. اینطوری، از نقاط قوت هر دو دنیا بهره می‌بریم: قابلیت اطمینان FSM و قدرت پردازش زبان طبیعی LLM.

برای پیاده‌سازی این الگو:
۱. تمام حالت‌های ممکن Agent رو شناسایی و در یک فایل YAML تعریف کنید.
۲. برای هر حالت، اکشن‌ها (دستورالعمل‌هایی که باید به LLM داده بشه) و انتقال‌های ممکن به حالت‌های بعدی رو مشخص کنید.
۳. یک اسکریپت پایتون بنویسید که به عنوان هماهنگ‌کننده (orchestrator) عمل کنه. این اسکریپت در هر مرحله، وضعیت فعلی رو از YAML می‌خونه، دستورات لازم رو به LLM می‌ده و بر اساس خروجی یا ورودی کاربر، به حالت بعدی منتقل می‌شه.

این رویکرد، ساخت Agent های قابل اعتماد برای تسک‌های ترتیبی (sequential tasks) رو به شدت ساده‌تر و عملی‌تر می‌کنه.

📃 Mastering AI Agent Behavior: From LLMs to FSM/YAML

🛠 Join @LLMEngineers Community
  • 👍 11
  • ❤ 2
  • 👌 1
More from @llmengineers
  1. Oct 12, 2026کاربرد مدل‌های تصمیم‌گیری هوش مصنوعی در کاهش هزینه‌های عملیاتی کسب‌وکارها
  2. Oct 11, 2026توی یکی از پروژه‌هام با یه مشکل نسبتاً جدی روبه‌رو شدم: استخراج دقیق متن از PDFهای فارسی ب…
  3. Oct 8, 2026از نظر کاربرد Decision Modelها , قضیه دیگه فقط چند Demo نیست و چند الگوی مشخص واقعاً وارد…
  4. Oct 8, 2026کمتر از یک ماه از معرفی Jev گذشته و چیزی که اول شبیه یه مدل خاص برای «تصمیم‌گیری بدون تولی…
  5. Oct 7, 2026جدا از موج Decision Modelها، چند خبر فنی این هفته هست که برای AI Engineerها واقعاً ارزش دن…
  6. Oct 7, 2026photo post
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →