درسهای ساختن یه سیستم هوش مصنوعی ایجنتیکِ قابلاتکا
خلاصهٔ کاملتر
این مقاله یه مطالعهی موردی از PRINCE (مرکز اطلاعات پیشبالینی) ه؛ پلتفرمی که به گفتهی نویسندهها Thoughtworks همراه بایر ساخته تا یکی از دردهای صنعت داروسازی رو حل کنه: دسترسی به دهها سال گزارش مطالعات ایمنی که تو سیلوهای داده پخش شدن و جستوجوی کلیدواژهایِ سنتی از پسشون برنمیاد. نویسندهها میگن خیلی از تصمیمهای مهندسی این سیستم رو حالا میشه با دو لنز فهمید: «مهندسی زمینه» (اینکه هر مدل چه اطلاعاتی بگیره و چی نگیره) و «مهندسی هارنس» (داربستِ دور مدل: ارکستراسیون، بازیابی، اعتبارسنجی و رصدپذیری).
به روایت مقاله، PRINCE سه فاز رو طی کرده: فاز Search که یه دروازهی یکپارچه روی متادیتای ساختارمند ساخت، فاز Ask که با RAG اجازه داد کاربر مستقیم از محتوای گزارشهای PDF (حتی اسناد اسکنشدهی قدیمی) به زبان طبیعی سؤال بپرسه، و فاز Do که سیستم رو به یه دستیار پژوهشِ فعال تبدیل کرد که کارهای پیچیده مثل پیشنویس اسناد قانونی رو هم انجام میده.
از نظر معماری، سیستم با LangGraph ارکستره میشه و روی FastAPI سرو میشه و رابطش با React ساخته شده. جریان کار چندمرحلهایه: شفافسازی نیت کاربر، فکر و برنامهریزی، پژوهش (ترکیب RAG و Text-to-SQL)، اعتبارسنجی کامل بودن داده، و در آخر تولید جواب با ایجنت نویسنده. وضعیت هر قدم تو PostgreSQL (با checkpointer خود LangGraph) و وضعیت سطحاپلیکیشن تو DynamoDB نگه داشته میشه؛ بردارهای گزارشها تو OpenSearch و دادهی ساختارمند از طریق Athena در دسترسه.
یه اصل مهم که نویسندهها روش تأکید میکنن «انضباط زمینه»ست: به گفتهی اونا حتی پنجرههای زمینهی بزرگتر هم نیاز به گزینش رو از بین نبردن. تو نسخههای اولیه، ریختن اطلاعات زیادی تو زمینه، سیستم رو سختتر قابلهدایت و سختتر قابلارزیابی میکرد؛ برای همین هر مرحله زمینهی مخصوص خودش رو میگیره (زمینهی برنامهریزی، زمینهی بازیابی، زمینهی شواهد و زمینهی ترکیب) تا آلودگی زمینه کم بشه.
قلب سیستم یه مجموعه ایجنت تخصصیه. ایجنتِ شفافسازی نیت اولین خط دفاع در برابر ابهامه و وقتی کوئری مبهمه سؤال روشنکننده میپرسه یا منبع مناسب رو پیشنهاد میده. مرحلهی فکر و برنامهریزی یه «فضای فکر» به سیستم میده تا قبل از اقدام تأمل کنه — الهامگرفته از ابزار Think شرکت Anthropic — و به گفتهی نویسندهها همین باعث یه بهبود چشمگیر تو دقت انتخاب ابزار شده، مخصوصاً وقتی تعداد ابزارها زیاد و مرزهاشون همپوشان میشه.
ایجنتِ پژوهشگر هم دو الگوی بازیابی رو ترکیب میکنه: RAG برای دادهی بدونساختار (عمدتاً PDF) و Text-to-SQL برای دادهی ساختارمند. خط لولهی RAG چند مرحله داره: استخراج کلیدواژه، ساخت فیلتر متادیتا، بسط کوئری (تولید ۵ کوئریِ هممعنا)، یه بازیاب ترکیبی که فیلتر متادیتا و جستوجوی معناییِ برداری (kNN) و جستوجوی کلیدواژهای رو با وزن ۰٫۷ به ۰٫۳ کنار هم میذاره، و در آخر یه مرحلهی بازرتبهبندی با مدل cross-encoder که هفت قطعهی مرتبطتر رو برای پرامپت نهایی نگه میداره. برای اعتماد هم، سیستم پاسخها رو با ارجاع به سند تولید میکنه و کل ترافیک با Langfuse و چارچوب RAGAS ارزیابی و پایش میشه.
نکات کلیدی:
- PRINCE یه سیستم RAG ایجنتیکه که دهها سال گزارش پیشبالینیِ بایر رو قابلپرسش کرده.
- تحولش سه فاز داشت: Search، Ask و Do (تا حد پیشنویس اسناد قانونی).
- معماری با LangGraph و FastAPI ارکستره میشه و از OpenSearch، Athena، PostgreSQL و DynamoDB استفاده میکنه.
- «انضباط زمینه» و دادن زمینهی مجزا به هر مرحله، کلید قابلاتکا بودن و قابلارزیابی بودن سیستمه.




