آموزش کامل Hermes Agent؛ راهنمای جامع نصب، راه‌اندازی، Memory، Skills، MCP و اتصال به API درواره

Hermes Agent یکی از پیشرفته‌ترین Agentهای متن‌باز هوش مصنوعی است که برای انجام وظایف پیچیده، برنامه‌ریزی، استفاده از ابزارها، Memory و اجرای خودکار فرایندها طراحی شده است.

Share
آموزش کامل Hermes Agent؛ راهنمای جامع نصب، راه‌اندازی، Memory، Skills، MCP و اتصال به API درواره

آنچه در این مقاله می‌خوانید

  • Hermes Agent چیست؟
  • چرا Hermes Agent توسعه داده شد؟
  • معماری Hermes Agent
  • نصب و راه‌اندازی
  • اتصال به API درواره
  • Memory
  • Skills
  • MCP
  • Tool Calling
  • Best Practices
  • پرسش‌های متداول
  • جمع‌بندی

مقدمه

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

امروزه بسیاری از توسعه‌دهندگان دیگر به دنبال یک «چت‌بات» ساده نیستند، بلکه می‌خواهند یک عامل هوشمند (AI Agent) در اختیار داشته باشند که بتواند مانند یک همکار فنی، مسئله را تحلیل کند، برای حل آن برنامه‌ریزی کند، از ابزارهای مختلف استفاده کند و وظیفه را تا رسیدن به نتیجه دنبال نماید.

Hermes Agent دقیقاً با همین هدف توسعه یافته است.

این پروژه که توسط Nous Research توسعه داده شده، یک Agent متن‌باز و قابل توسعه است که می‌تواند با استفاده از مدل‌های زبانی مختلف، وظایف پیچیده را مدیریت کند و به توسعه‌دهندگان اجازه دهد Agentهای اختصاصی خود را بسازند.

برخلاف بسیاری از ابزارهای قدیمی‌تر که تنها یک رابط برای گفتگو با مدل‌های هوش مصنوعی بودند، Hermes Agent از ابتدا با رویکرد Agentic AI طراحی شده است؛ یعنی تمرکز اصلی آن بر انجام کار، نه صرفاً تولید پاسخ.

Hermes Agent چیست؟

Hermes Agent یک چارچوب متن‌باز برای ساخت و اجرای عامل‌های هوش مصنوعی است.

این Agent می‌تواند:

  • مسئله را تحلیل کند.
  • برای انجام کار برنامه‌ریزی کند.
  • از ابزارهای مختلف استفاده کند.
  • اطلاعات را در حافظه نگه دارد.
  • از Context پروژه استفاده کند.
  • با سرویس‌های مختلف ارتباط برقرار کند.
  • وظایف را به چند مرحله تقسیم کند.
  • تا رسیدن به نتیجه، اجرای فرایند را ادامه دهد.

به همین دلیل، Hermes Agent بیشتر شبیه یک همکار دیجیتال عمل می‌کند تا یک مدل زبانی معمولی.

چرا Hermes Agent توسعه داده شد؟

با وجود پیشرفت چشمگیر مدل‌های زبانی، استفاده مستقیم از یک LLM برای انجام پروژه‌های واقعی محدودیت‌هایی دارد.

برای مثال، یک مدل زبانی به‌تنهایی نمی‌تواند:

  • فایل‌های پروژه را مدیریت کند.
  • وضعیت اجرای یک وظیفه را پیگیری کند.
  • اطلاعات بلندمدت را ذخیره کند.
  • از ابزارهای مختلف به‌صورت ساختاریافته استفاده کند.
  • چندین اقدام را به‌صورت زنجیره‌ای انجام دهد.

Hermes Agent برای حل این محدودیت‌ها توسعه داده شده است.

در این معماری، مدل زبانی تنها یکی از اجزای سیستم است و Agent مسئول مدیریت کل فرایند خواهد بود.

Agent با Chatbot چه تفاوتی دارد؟

این یکی از مهم‌ترین پرسش‌هایی است که معمولاً هنگام آشنایی با Hermes Agent مطرح می‌شود.

یک Chatbot معمولی معمولاً چنین رفتاری دارد:

کاربر

↓

Prompt

↓

LLM

↓

پاسخ

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

اما در Hermes Agent، فرایند بسیار پیشرفته‌تر است.

کاربر

↓

Hermes Agent

↓

Planning

↓

Memory

↓

Tools

↓

LLM

↓

Execution

↓

Result

در این معماری، مدل زبانی تنها یکی از اجزای سیستم است.

Agent تصمیم می‌گیرد:

  • چه ابزاری استفاده شود.
  • چه اطلاعاتی خوانده شود.
  • چه مراحلی اجرا شود.
  • چه زمانی کار پایان یابد.

به همین دلیل، Agentها برای پروژه‌های واقعی بسیار مناسب‌تر از Chatbotهای ساده هستند.

معماری Hermes Agent

معماری Hermes Agent از چند بخش اصلی تشکیل شده است.

مدل زبانی (LLM)

موتور اصلی استدلال سیستم است.

Agent درخواست‌ها را به مدل ارسال می‌کند و از آن برای تحلیل، تصمیم‌گیری و تولید پاسخ استفاده می‌کند.

Planning Engine

یکی از مهم‌ترین اجزای Hermes Agent، موتور برنامه‌ریزی است.

به‌جای اینکه یک پاسخ واحد تولید شود، Agent ابتدا مسئله را تحلیل می‌کند و آن را به چند مرحلۀ کوچک‌تر تقسیم می‌کند.

برای مثال، اگر از Hermes Agent بخواهید:

یک API جدید طراحی کن، تست بنویس و مستندات را به‌روزرسانی کن.

Agent ممکن است این مراحل را ایجاد کند:

  1. بررسی ساختار پروژه
  2. طراحی API
  3. ایجاد فایل‌ها
  4. تولید تست
  5. به‌روزرسانی مستندات
  6. بررسی نتیجه

این قابلیت یکی از تفاوت‌های اصلی Hermes Agent با بسیاری از ابزارهای ساده‌تر است.

Memory

Agent می‌تواند اطلاعات موردنیاز را در حافظه نگه دارد و در مراحل بعدی دوباره از آن‌ها استفاده کند.

در بخش‌های بعدی مقاله Memory را به‌طور کامل بررسی خواهیم کرد.

Tools

Hermes Agent می‌تواند از ابزارهای مختلف استفاده کند.

برای مثال:

  • فایل‌ها
  • ترمینال
  • APIها
  • MCP Serverها
  • سرویس‌های خارجی

به همین دلیل، توانایی انجام وظایف پیچیده را دارد.

Context

Agent تنها Prompt فعلی را نمی‌بیند.

بلکه می‌تواند از Context پروژه، فایل‌ها و اطلاعات قبلی نیز استفاده کند.

همین موضوع باعث می‌شود کیفیت تصمیم‌گیری آن افزایش پیدا کند.

چه کسانی باید از Hermes Agent استفاده کنند؟

Hermes Agent برای طیف گسترده‌ای از کاربران مناسب است، اما بیشترین ارزش را برای گروه‌های زیر ایجاد می‌کند:

  • توسعه‌دهندگان Full Stack
  • مهندسان نرم‌افزار
  • تیم‌های DevOps
  • پژوهشگران هوش مصنوعی
  • شرکت‌های نرم‌افزاری
  • استارتاپ‌ها
  • تیم‌های تحقیق و توسعه
  • افرادی که قصد ساخت Agent اختصاصی دارند

اگر تنها هدف شما گفتگو با یک مدل هوش مصنوعی باشد، احتمالاً ابزارهای ساده‌تر نیز نیاز شما را برطرف می‌کنند. اما اگر می‌خواهید عاملی بسازید که بتواند برنامه‌ریزی کند، از ابزارها استفاده کند و وظایف چندمرحله‌ای را مدیریت نماید، Hermes Agent یکی از گزینه‌های بسیار مناسب است.

پرسش و پاسخ

آیا Hermes Agent خودش یک مدل هوش مصنوعی است؟

خیر. Hermes Agent یک مدل زبانی نیست، بلکه یک چارچوب برای ساخت و اجرای Agentهای هوش مصنوعی است. این چارچوب برای انجام استدلال و تولید پاسخ به یک مدل زبانی متصل می‌شود و وظایفی مانند برنامه‌ریزی، مدیریت حافظه، استفاده از ابزارها و اجرای فرایندها را بر عهده می‌گیرد.


نصب و راه‌اندازی Hermes Agent

اکنون که با مفهوم Hermes Agent و معماری آن آشنا شدیم، زمان آن رسیده است که این ابزار را نصب و اولین Agent خود را اجرا کنیم.

یکی از نقاط قوت Hermes Agent این است که نصب آن نسبتاً ساده است و روی سیستم‌عامل‌های مختلف قابل اجراست. با این حال، مانند بسیاری از پروژه‌های مبتنی بر هوش مصنوعی، بهتر است پیش از نصب، محیط توسعۀ مناسبی آماده کنید تا در ادامه با مشکلات مربوط به وابستگی‌ها یا نسخه‌های نرم‌افزاری مواجه نشوید.

در این بخش، مراحل نصب، ساختار پروژه و اجرای اولین Agent را بررسی می‌کنیم. در بخش بعدی نیز اتصال Hermes Agent به API درواره را به‌صورت کامل آموزش خواهیم داد.

پیش‌نیازهای نصب

پیش از نصب Hermes Agent بهتر است موارد زیر روی سیستم شما آماده باشد:

  • Python نسخه‌ای که توسط مستندات رسمی پروژه پشتیبانی می‌شود.
  • Git
  • یک محیط مجازی (Virtual Environment)
  • دسترسی به اینترنت برای دریافت وابستگی‌ها
  • یک کلید API برای اتصال به مدل هوش مصنوعی

اگر قصد دارید Hermes Agent را در محیط تولید (Production) اجرا کنید، پیشنهاد می‌شود آن را در یک محیط ایزوله مانند ماشین مجازی، کانتینر یا سرور اختصاصی اجرا کنید تا مدیریت وابستگی‌ها و به‌روزرسانی‌ها ساده‌تر باشد.

نصب Python

Hermes Agent بر پایۀ Python توسعه داده شده است، بنابراین اولین قدم نصب Python است.

برای بررسی نصب بودن Python می‌توانید دستور زیر را اجرا کنید:

python --version

یا در برخی سیستم‌ها:

python3 --version

اگر نسخه‌ای از Python نمایش داده شد، می‌توانید به مرحلۀ بعد بروید.

ایجاد محیط مجازی

استفاده از Virtual Environment باعث می‌شود وابستگی‌های Hermes Agent با سایر پروژه‌های Python تداخل نداشته باشند.

نمونۀ ایجاد محیط مجازی:

python -m venv .venv

سپس محیط را فعال کنید.

در Linux و macOS:

source .venv/bin/activate

در Windows:

.venv\Scripts\activate

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

دریافت Hermes Agent

ساده‌ترین روش، دریافت سورس پروژه از مخزن رسمی GitHub است.

پس از Clone کردن مخزن، وارد پوشۀ پروژه شوید.

ساختار کلی پروژه معمولاً شامل بخش‌هایی مانند:

  • کد اصلی Agent
  • فایل‌های تنظیمات
  • مستندات
  • نمونه‌ها
  • ابزارها
  • فایل‌های مربوط به Memory و Context

خواهد بود.

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

نصب وابستگی‌ها

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

Hermes Agent برای اجرای صحیح به کتابخانه‌های مختلف Python وابسته است.

معمولاً این وابستگی‌ها از طریق فایل‌های مدیریت بسته نصب می‌شوند.

بهتر است همیشه وابستگی‌ها را داخل همان Virtual Environment نصب کنید.

اولین اجرای Hermes Agent

پس از پایان نصب، می‌توانید اولین اجرای Agent را انجام دهید.

در اولین اجرا معمولاً اتفاقات زیر رخ می‌دهد:

  • بررسی فایل‌های تنظیمات
  • بارگذاری وابستگی‌ها
  • آماده‌سازی محیط
  • بررسی Provider
  • آماده شدن Agent برای دریافت دستور

اگر در این مرحله با خطا روبه‌رو شدید، معمولاً علت یکی از موارد زیر است:

  • نصب نبودن برخی وابستگی‌ها
  • ناسازگاری نسخه Python
  • تنظیم نبودن Provider
  • تنظیم نبودن API Key

در بخش سوم مقاله، این موارد را نیز بررسی خواهیم کرد.

ساختار کلی پروژه

اگر برای اولین بار وارد پروژه Hermes Agent شوید، ممکن است تعداد فایل‌ها کمی گیج‌کننده به نظر برسد.

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

فایل‌های مربوط به Agent

این بخش شامل منطق اصلی Agent است.

در این قسمت، رفتار Agent، برنامه‌ریزی، مدیریت وظایف و ارتباط با مدل زبانی انجام می‌شود.

فایل‌های تنظیمات

در این بخش تنظیمات مربوط به:

  • مدل
  • Provider
  • Memory
  • ابزارها
  • مسیرهای پروژه

قرار می‌گیرد.

بیشتر تغییراتی که کاربران انجام می‌دهند، در همین قسمت است.

فایل‌های نمونه

پروژه معمولاً مثال‌هایی برای شروع سریع در اختیار توسعه‌دهندگان قرار می‌دهد.

مطالعۀ این نمونه‌ها یکی از بهترین راه‌ها برای آشنایی با نحوۀ کار Hermes Agent است.

مستندات

یکی از نقاط قوت Hermes Agent، مستندات مناسب آن است.

پیشنهاد می‌شود پیش از ایجاد تغییرات اساسی، مستندات مربوط به قابلیت‌هایی مانند Memory، Skills و MCP را نیز مطالعه کنید.

اولین وظیفه (First Task)

پس از نصب موفق، می‌توانید اولین وظیفۀ خود را به Agent بدهید.

برای مثال:

ساختار این پروژه را توضیح بده.

یا:

فایل README را بررسی کن و خلاصه‌ای از پروژه ارائه بده.

در این مرحله هدف، آشنایی با نحوۀ تعامل Agent است، نه انجام پروژه‌های پیچیده.

پس از اطمینان از عملکرد صحیح، می‌توانید وظایف بزرگ‌تر را نیز به آن بسپارید.

چگونه مطمئن شویم نصب صحیح انجام شده است؟

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

همچنین بهتر است موارد زیر را بررسی کنید:

  • محیط مجازی فعال باشد.
  • وابستگی‌ها بدون خطا نصب شده باشند.
  • فایل‌های تنظیمات در دسترس باشند.
  • اتصال به مدل هوش مصنوعی برقرار باشد.

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

آماده‌سازی برای اتصال به Provider

پس از نصب موفق، مرحلۀ بعدی انتخاب Provider است.

Hermes Agent به‌طور پیش‌فرض یک مدل زبانی داخلی ندارد و برای انجام وظایف خود باید به یک ارائه‌دهندۀ مدل هوش مصنوعی متصل شود.

در اینجا چند گزینه وجود دارد:

  • استفاده از سرویس‌های ابری
  • استفاده از مدل‌های محلی
  • استفاده از APIهای سازگار با OpenAI
  • استفاده از زیرساخت‌های چندارائه‌دهنده‌ای

در بخش بعدی مقاله، به‌صورت کامل توضیح خواهیم داد که چگونه Hermes Agent را به API درواره متصل کنید و از طریق یک API واحد به صدها مدل هوش مصنوعی دسترسی داشته باشید.

پرسش و پاسخ

آیا برای نصب Hermes Agent حتماً به GPU نیاز داریم؟

خیر. Hermes Agent خود یک مدل هوش مصنوعی نیست و بیشتر نقش هماهنگ‌کننده و مدیر اجرای وظایف را بر عهده دارد. اگر از مدل‌های ابری یا APIهای خارجی استفاده کنید، اجرای Hermes Agent روی یک سیستم معمولی نیز امکان‌پذیر است. تنها در صورتی که بخواهید مدل‌های بزرگ را به‌صورت محلی اجرا کنید، به سخت‌افزار قدرتمندتر و در بسیاری از موارد GPU نیاز خواهید داشت.

اتصال Hermes Agent به API درواره؛ دسترسی به صدها مدل هوش مصنوعی با یک API

پس از نصب Hermes Agent، مهم‌ترین مرحله انتخاب Provider یا ارائه‌دهندۀ مدل‌های هوش مصنوعی است.

Hermes Agent خودش یک مدل زبانی نیست؛ بلکه برای انجام تحلیل، استدلال و اجرای وظایف به یک مدل هوش مصنوعی متصل می‌شود. به همین دلیل، انتخاب Provider مناسب تأثیر مستقیمی بر کیفیت پاسخ‌ها، سرعت، هزینه و امکانات Agent خواهد داشت.

اگرچه می‌توانید Hermes Agent را به سرویس‌های مختلف متصل کنید، استفاده از یک API سازگار با OpenAI معمولاً ساده‌ترین و منعطف‌ترین روش است.

درواره نیز دقیقاً با همین هدف طراحی شده است و امکان دسترسی به صدها مدل هوش مصنوعی را از طریق یک API استاندارد فراهم می‌کند.

چرا از درواره استفاده کنیم؟

یکی از چالش‌های رایج هنگام کار با Agentها، مدیریت چندین ارائه‌دهنده است.

برای مثال ممکن است بخواهید:

  • برای برنامه‌نویسی از یک مدل استفاده کنید.
  • برای تحلیل اسناد از مدل دیگری کمک بگیرید.
  • برای تولید تصویر از مدل متفاوتی استفاده کنید.
  • یا در صورت بروز خطا، به‌طور خودکار به مدل جایگزین متصل شوید.

اگر بخواهید مستقیماً با هر ارائه‌دهنده کار کنید، باید:

  • چندین API Key مدیریت کنید.
  • تفاوت APIها را در نظر بگیرید.
  • مدل‌های مختلف را جداگانه پیکربندی کنید.
  • تغییرات هر سرویس را دنبال کنید.

درواره این پیچیدگی را حذف می‌کند و تنها با یک API، امکان دسترسی به مدل‌های متنوع را فراهم می‌سازد.

مزایای اتصال Hermes Agent به درواره

با اتصال Hermes Agent به درواره، می‌توانید از مزایای زیر بهره‌مند شوید:

  • دسترسی به صدها مدل هوش مصنوعی
  • یک API Key برای همۀ مدل‌ها
  • سازگاری با OpenAI API
  • امکان تغییر مدل بدون تغییر معماری پروژه
  • انتخاب مدل متناسب با نوع وظیفه
  • پرداخت ریالی
  • مستندات فارسی
  • مدیریت متمرکز مصرف API

این ویژگی‌ها به‌ویژه برای تیم‌هایی که چندین پروژه یا چندین Agent دارند، ارزشمند است.

معماری اتصال

معماری اتصال Hermes Agent به درواره را می‌توان به شکل زیر نمایش داد:

Hermes Agent

↓

Darvareh API

↓

Routing Layer

↓

GPT
Claude
Gemini
DeepSeek
Qwen
Llama
Mistral
...

در این ساختار، Hermes Agent فقط با درواره ارتباط برقرار می‌کند.

درواره مسئول انتخاب مدل، مدیریت درخواست‌ها و ارتباط با ارائه‌دهندگان مختلف است.

در نتیجه، در صورت اضافه شدن مدل‌های جدید یا تغییر ارائه‌دهنده، نیازی به تغییر معماری Agent نخواهید داشت.

Base URL

برای اتصال Hermes Agent به درواره، کافی است Base URL را روی مقدار زیر تنظیم کنید:

https://api.darvareh.ir/v1

از آنجا که این API با استاندارد OpenAI سازگار است، در بسیاری از موارد تنها با تغییر Base URL و API Key می‌توانید Hermes Agent را به درواره متصل کنید.

API Key

پس از ایجاد حساب کاربری در درواره، یک API Key دریافت می‌کنید.

این کلید هویت درخواست‌های شما را مشخص می‌کند و باید در تنظیمات Hermes Agent قرار گیرد.

چند توصیه امنیتی:

  • API Key را داخل مخزن Git قرار ندهید.
  • از متغیرهای محیطی (Environment Variables) استفاده کنید.
  • در صورت افشای کلید، آن را بلافاصله غیرفعال و کلید جدید ایجاد کنید.
  • برای پروژه‌های مختلف از کلیدهای جداگانه استفاده کنید.

انتخاب مدل

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

بسته به نوع پروژه می‌توانید مدل مناسب را انتخاب کنید.

برای مثال:

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

  • مدل‌هایی با توانایی بالای تولید و تحلیل کد

تحلیل اسناد

  • مدل‌هایی با پنجرۀ Context بزرگ

تولید محتوا

  • مدل‌هایی با کیفیت نگارش بالا

Agentهای عمومی

  • مدل‌هایی با تعادل مناسب میان سرعت، کیفیت و هزینه

در نتیجه، لازم نیست برای هر کاربرد یک Provider جدید تعریف کنید.

تغییر مدل بدون تغییر Hermes Agent

فرض کنید امروز Agent شما از یک مدل خاص استفاده می‌کند.

چند ماه بعد، مدل جدیدی منتشر می‌شود که:

  • کیفیت بیشتری دارد.
  • هزینه کمتری دارد.
  • سریع‌تر است.

در معماری سنتی، ممکن است مجبور شوید بخشی از تنظیمات یا حتی کد پروژه را تغییر دهید.

اما اگر از درواره استفاده کنید، معمولاً کافی است نام مدل را تغییر دهید و سایر بخش‌های Agent بدون تغییر باقی می‌مانند.

این موضوع نگهداری پروژه را در بلندمدت بسیار ساده‌تر می‌کند.

استفاده از مدل‌های مختلف برای وظایف مختلف

یکی از قابلیت‌های جذاب Hermes Agent این است که می‌توان آن را برای سناریوهای مختلف تنظیم کرد.

برای مثال:

  • Agent برنامه‌نویسی
  • Agent مستندسازی
  • Agent تحلیل فایل
  • Agent تحقیق
  • Agent تولید محتوا

هر یک از این Agentها می‌توانند از مدل متفاوتی استفاده کنند.

با درواره، تمام این Agentها همچنان از یک API استفاده می‌کنند و تنها مدل انتخابی آن‌ها تغییر می‌کند.

استفاده در پروژه‌های تیمی

در پروژه‌های تیمی، مدیریت دسترسی‌ها اهمیت زیادی دارد.

استفاده از یک API مرکزی مزایای زیادی ایجاد می‌کند:

  • مدیریت ساده‌تر اعتبار
  • کنترل مصرف API
  • امکان تغییر مدل بدون تغییر پروژه‌های اعضای تیم
  • استانداردسازی تنظیمات
  • ساده‌تر شدن استقرار پروژه

به همین دلیل، بسیاری از تیم‌ها ترجیح می‌دهند تمام Agentهای خود را به یک Gateway مرکزی متصل کنند.

بهترین روش برای مدیریت تنظیمات

پیشنهاد می‌شود اطلاعات زیر را مستقیماً داخل کد برنامه قرار ندهید:

  • API Key
  • Base URL
  • نام مدل

در عوض، آن‌ها را از طریق فایل‌های تنظیمات یا متغیرهای محیطی مدیریت کنید.

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

هزینه استفاده از Hermes Agent

نکته مهم این است که Hermes Agent خودش هزینه‌ای بابت استفاده از مدل‌های هوش مصنوعی تعیین نمی‌کند.

هزینه اصلی مربوط به مدل‌هایی است که Agent به آن‌ها متصل می‌شود.

به همین دلیل، انتخاب مدل مناسب نقش مهمی در مدیریت هزینه دارد.

برای کاهش هزینه‌ها می‌توانید:

  • برای وظایف ساده از مدل‌های اقتصادی‌تر استفاده کنید.
  • فقط در وظایف پیچیده از مدل‌های پیشرفته بهره ببرید.
  • مصرف توکن‌ها را پایش کنید.
  • در صورت امکان از Contextهای کوتاه‌تر استفاده کنید.

چه مدل‌هایی برای Hermes Agent مناسب‌تر هستند؟

پاسخ این سؤال به نوع پروژه بستگی دارد.

اگر Agent شما بیشتر برای برنامه‌نویسی استفاده می‌شود، بهتر است مدل‌هایی انتخاب شوند که در تولید و تحلیل کد عملکرد قوی دارند.

اگر هدف، تحلیل اسناد یا پاسخ‌گویی به کاربران است، مدل‌هایی با Context بزرگ‌تر و توانایی استدلال مناسب انتخاب بهتری خواهند بود.

مزیت استفاده از درواره این است که در آینده نیز می‌توانید مدل خود را به‌سادگی تغییر دهید و از مدل‌های جدید بهره ببرید.

پرسش و پاسخ

آیا برای تغییر مدل باید Hermes Agent را دوباره نصب کنیم؟

خیر. در بیشتر سناریوها، کافی است مدل مورد استفاده را در تنظیمات تغییر دهید. اگر از API سازگار با OpenAI درواره استفاده می‌کنید، معمولاً نیازی به تغییر ساختار پروژه یا نصب مجدد Hermes Agent نیست و تنها با انتخاب مدل جدید می‌توانید از قابلیت‌های آن استفاده کنید.


Memory در Hermes Agent؛ چگونه Agent اطلاعات را به خاطر می‌سپارد؟

یکی از مهم‌ترین تفاوت‌های Hermes Agent با یک چت‌بات معمولی، نحوۀ مدیریت اطلاعات است.

در یک گفت‌وگوی ساده با یک مدل زبانی، اطلاعات معمولاً فقط تا زمانی در دسترس هستند که داخل پنجرۀ Context قرار داشته باشند. اگر گفت‌وگو طولانی شود یا Context از حد مجاز فراتر برود، مدل بخشی از اطلاعات قبلی را از دست می‌دهد.

اما یک Agent حرفه‌ای نمی‌تواند چنین رفتاری داشته باشد.

فرض کنید یک Agent وظیفۀ توسعه و نگهداری یک نرم‌افزار را بر عهده دارد. اگر هر بار مجبور باشد تمام ساختار پروژه، قوانین تیم، معماری سیستم و تصمیم‌های قبلی را دوباره دریافت کند، عملاً استفاده از Agent کارایی چندانی نخواهد داشت.

به همین دلیل، Hermes Agent از مکانیزم‌هایی برای مدیریت Memory و Context استفاده می‌کند تا بتواند در طول زمان تصمیم‌های دقیق‌تر و سازگارتری بگیرد.

Memory چیست؟

Memory را می‌توان حافظۀ بلندمدت Agent در نظر گرفت.

این حافظه می‌تواند شامل اطلاعاتی باشد که Agent باید در اجرای وظایف بعدی نیز از آن‌ها استفاده کند.

برای مثال:

  • ساختار پروژه
  • قوانین کدنویسی تیم
  • معماری نرم‌افزار
  • ترجیحات کاربر
  • ابزارهای مورد استفاده
  • تصمیم‌های مهم قبلی
  • اطلاعات مربوط به سرویس‌های مختلف

وجود چنین حافظه‌ای باعث می‌شود Agent در هر اجرا نیاز نداشته باشد همه چیز را از ابتدا یاد بگیرد.

تفاوت Memory و Context

این دو مفهوم معمولاً با یکدیگر اشتباه گرفته می‌شوند.

اما نقش آن‌ها متفاوت است.

Context

Context اطلاعاتی است که فقط برای اجرای وظیفۀ فعلی در اختیار مدل قرار می‌گیرد.

برای مثال:

  • فایل فعلی
  • چند فایل مرتبط
  • Prompt کاربر
  • خروجی ابزارها

پس از پایان اجرای درخواست، این اطلاعات معمولاً کنار گذاشته می‌شوند.

Memory

Memory اطلاعاتی است که قرار است در آینده نیز مورد استفاده قرار گیرد.

برای مثال:

  • این پروژه از TypeScript استفاده می‌کند.
  • سبک کدنویسی تیم بر اساس ESLint است.
  • تمام APIها باید REST باشند.
  • تست‌ها با Jest نوشته شوند.

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

چرا Memory اهمیت دارد؟

فرض کنید هر روز روی یک پروژه کار می‌کنید.

اگر Agent هر بار فراموش کند:

  • ساختار پروژه چگونه است،
  • قوانین تیم چیست،
  • معماری سیستم چگونه طراحی شده،
  • یا چه تصمیم‌هایی قبلاً گرفته شده،

بخش زیادی از زمان صرف توضیح دوبارۀ همین موارد خواهد شد.

Memory باعث می‌شود Agent به‌تدریج شناخت بهتری از پروژه پیدا کند و پاسخ‌های سازگارتر و دقیق‌تری ارائه دهد.

Context چگونه ساخته می‌شود؟

هنگامی که یک درخواست به Hermes Agent ارسال می‌شود، Agent پیش از تماس با مدل زبانی، اطلاعات مرتبط را جمع‌آوری می‌کند.

برای مثال:

  • فایل فعلی
  • فایل‌های وابسته
  • مستندات پروژه
  • خروجی ابزارها
  • Memory
  • قوانین پروژه

سپس مجموعه‌ای از این اطلاعات به مدل ارسال می‌شود.

به همین دلیل، کیفیت Context تأثیر مستقیمی بر کیفیت پاسخ Agent دارد.

AGENTS.md چیست؟

یکی از فایل‌هایی که در بسیاری از پروژه‌های مبتنی بر Agent استفاده می‌شود، AGENTS.md است.

می‌توان آن را دفترچۀ راهنمای Agent در همان پروژه دانست.

این فایل معمولاً شامل اطلاعاتی مانند موارد زیر است:

  • معماری پروژه
  • قوانین کدنویسی
  • ساختار پوشه‌ها
  • استانداردهای نام‌گذاری
  • روش اجرای تست‌ها
  • ابزارهای مورد استفاده
  • محدودیت‌های پروژه

هرچه این فایل کامل‌تر باشد، Agent رفتار سازگارتر و قابل پیش‌بینی‌تری خواهد داشت.

چه اطلاعاتی بهتر است در AGENTS.md قرار گیرد؟

نمونه‌هایی از اطلاعات مفید:

معماری

  • پروژه بر اساس Clean Architecture توسعه یافته است.
  • تمام APIها REST هستند.
  • Authentication با JWT انجام می‌شود.

قوانین کدنویسی

  • از TypeScript استفاده شود.
  • eslint باید بدون خطا باشد.
  • از any استفاده نشود.
  • کامنت‌ها به زبان انگلیسی نوشته شوند.

تست

  • تمام قابلیت‌های جدید باید تست داشته باشند.
  • Jest برای تست استفاده می‌شود.

ساختار پروژه

  • Componentها داخل پوشۀ مشخص قرار دارند.
  • Hookها در مسیر مشخصی ذخیره می‌شوند.
  • Utilityها ساختار ثابتی دارند.

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

SOUL.md چیست؟

در کنار AGENTS.md، برخی پروژه‌ها از فایل SOUL.md نیز استفاده می‌کنند.

در حالی که AGENTS.md بیشتر روی قوانین فنی تمرکز دارد، SOUL.md معمولاً شخصیت، فلسفه و اهداف Agent را توصیف می‌کند.

برای مثال:

  • هدف اصلی Agent چیست؟
  • اولویت‌های تصمیم‌گیری چیست؟
  • هنگام ابهام چه رفتاری داشته باشد؟
  • چه چیزهایی را هرگز انجام ندهد؟

به همین دلیل، برخی توسعه‌دهندگان SOUL.md را شخصیت Agent می‌دانند.

چه اطلاعاتی می‌توان در SOUL.md قرار داد؟

برای مثال:

  • همیشه کیفیت را بر سرعت ترجیح بده.
  • اگر مطمئن نیستی، از کاربر سؤال بپرس.
  • بدون تأیید کاربر فایل حذف نکن.
  • قبل از Refactoring گسترده، ابتدا برنامه ارائه کن.
  • امنیت را بر راحتی ترجیح بده.
  • از ایجاد وابستگی غیرضروری خودداری کن.

این دستورالعمل‌ها باعث می‌شوند رفتار Agent در پروژه‌های مختلف قابل پیش‌بینی‌تر باشد.

Memory در پروژه‌های بزرگ

هرچه پروژه بزرگ‌تر باشد، اهمیت Memory بیشتر می‌شود.

در پروژه‌هایی با صدها فایل، Agent باید بتواند:

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

به همین دلیل، بسیاری از تیم‌های حرفه‌ای زمان قابل توجهی را صرف طراحی مناسب Memory می‌کنند.

بهترین روش برای مدیریت Memory

چند توصیه کاربردی:

  • فقط اطلاعات ماندگار را ذخیره کنید.
  • اطلاعات تکراری را حذف کنید.
  • قوانین پروژه را به‌صورت شفاف بنویسید.
  • Memory را مرتب به‌روزرسانی کنید.
  • از تبدیل Memory به انبار اطلاعات غیرضروری خودداری کنید.

Memory هرچه کوچک‌تر، دقیق‌تر و ساختاریافته‌تر باشد، عملکرد Agent نیز بهتر خواهد بود.

نقش مدل هوش مصنوعی

هرچند Hermes Agent مسئول مدیریت Memory است، اما کیفیت استفادۀ مؤثر از این اطلاعات تا حد زیادی به مدل هوش مصنوعی انتخاب‌شده نیز بستگی دارد.

مدل‌هایی که توانایی استدلال، دنبال کردن دستورالعمل‌ها و استفاده از Contextهای طولانی را دارند، معمولاً از Memory نیز بهره‌وری بیشتری خواهند داشت.

اگر Hermes Agent را از طریق API درواره به مدل‌های مختلف متصل کنید، می‌توانید متناسب با نوع پروژه، مدلی را انتخاب کنید که بهترین عملکرد را در استفاده از Memory و Context ارائه می‌دهد؛ بدون اینکه لازم باشد معماری Agent را تغییر دهید.

پرسش و پاسخ

آیا Memory جایگزین پایگاه داده است؟

خیر. Memory برای نگهداری اطلاعاتی طراحی شده است که به Agent در تصمیم‌گیری و اجرای وظایف کمک می‌کنند، نه برای ذخیرۀ داده‌های عملیاتی یا تجاری برنامه. اطلاعاتی مانند کاربران، سفارش‌ها یا تراکنش‌ها همچنان باید در پایگاه داده نگهداری شوند. Memory بیشتر نقش حافظۀ کاری و دانش پروژه را برای Agent ایفا می‌کند.

Skills، Tool Calling و MCP در Hermes Agent؛ چگونه Agent با دنیای واقعی تعامل می‌کند؟

تا اینجا دیدیم که Hermes Agent چگونه اطلاعات را تحلیل می‌کند، برای انجام وظایف برنامه‌ریزی می‌کند و با استفاده از Memory و Context تصمیم‌های بهتری می‌گیرد.

اما یک Agent تنها زمانی واقعاً مفید خواهد بود که بتواند از دنیای خارج از مدل زبانی استفاده کند.

برای مثال، تصور کنید از Hermes Agent بخواهید:

  • آخرین ایمیل‌های شما را بررسی کند.
  • وضعیت یک سرور را مشاهده کند.
  • اطلاعات یک مشتری را از CRM بخواند.
  • وضعیت یک سفارش را بررسی کند.
  • در GitHub یک Pull Request ایجاد کند.
  • در Slack پیامی ارسال کند.
  • فایل‌های یک پروژه را تغییر دهد.
  • یک درخواست HTTP به سرویس دیگری ارسال کند.

هیچ مدل زبانی به‌تنهایی قادر به انجام این کارها نیست.

مدل تنها می‌تواند متن تولید کند.

این Toolها، Skillها و MCP هستند که Hermes Agent را به یک عامل هوشمند واقعی تبدیل می‌کنند.

Tool Calling چیست؟

Tool Calling یکی از مهم‌ترین قابلیت‌های نسل جدید مدل‌های هوش مصنوعی است.

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

برای مثال، اگر کاربر بپرسد:

موجودی حساب کاربر را بررسی کن.

مدل نباید عددی را حدس بزند.

در عوض باید تصمیم بگیرد:

۱. ابزار مربوط به بانک اطلاعاتی را فراخوانی کند.

۲. اطلاعات واقعی را دریافت کند.

۳. نتیجه را برای کاربر توضیح دهد.

به همین دلیل Tool Calling یکی از پایه‌های اصلی معماری Agentها محسوب می‌شود.

Skill چیست؟

اگر Tool را یک «ابزار» در نظر بگیریم، Skill را می‌توان یک «توانایی» دانست.

برای مثال:

  • تحلیل پروژه
  • نوشتن تست
  • تولید مستندات
  • بررسی Pull Request
  • تحلیل لاگ‌ها
  • طراحی API
  • Refactoring

هر Skill ممکن است از چندین Tool مختلف استفاده کند.

به بیان دیگر:

Tool یک قابلیت منفرد است.

اما Skill مجموعه‌ای از چندین Tool و چندین مرحله است.

تفاوت Tool و Skill

فرض کنید می‌خواهید Agent بتواند گزارش فروش روزانه تهیه کند.

برای انجام این کار ممکن است مراحل زیر لازم باشد:

  • اتصال به پایگاه داده
  • اجرای Query
  • تحلیل داده‌ها
  • رسم نمودار
  • تولید فایل PDF
  • ارسال ایمیل

هر کدام از این مراحل یک Tool است.

اما کل این فرایند یک Skill محسوب می‌شود.

به همین دلیل Skillها معمولاً بسیار قدرتمندتر از Toolهای منفرد هستند.

Toolها در Hermes Agent

Hermes Agent می‌تواند با انواع مختلفی از Toolها کار کند.

برای مثال:

فایل‌ها

  • خواندن فایل
  • ایجاد فایل
  • حذف فایل
  • ویرایش فایل

ترمینال

  • اجرای دستورات
  • Build پروژه
  • اجرای تست
  • نصب وابستگی‌ها

Git

  • بررسی تغییرات
  • Commit
  • Push
  • ایجاد Branch

HTTP

  • ارسال درخواست REST
  • دریافت اطلاعات از API
  • ارتباط با سرویس‌های خارجی

پایگاه داده

  • اجرای Query
  • خواندن اطلاعات
  • به‌روزرسانی داده‌ها

سرویس‌های ابری

  • GitHub
  • Slack
  • Telegram
  • Discord
  • Google Drive
  • Notion
  • Jira
  • Linear

البته بسته به Toolهای نصب‌شده، این فهرست می‌تواند بسیار گسترده‌تر باشد.

MCP چیست؟

یکی از مهم‌ترین پیشرفت‌های اکوسیستم Agentها، معرفی Model Context Protocol (MCP) است.

MCP را می‌توان استانداردی برای اتصال Agentها به ابزارها و منابع مختلف دانست.

قبل از MCP، هر ابزار باید اتصال اختصاصی خود را پیاده‌سازی می‌کرد.

اما اکنون بسیاری از ابزارها از یک زبان مشترک برای ارتباط با Agentها استفاده می‌کنند.

به همین دلیل، توسعه‌دهندگان لازم نیست برای هر سرویس یک ادغام کاملاً جدید بنویسند.

چرا MCP اهمیت دارد؟

فرض کنید می‌خواهید Hermes Agent به سرویس‌های زیر متصل شود:

  • GitHub
  • Notion
  • Google Drive
  • Slack
  • PostgreSQL
  • Jira

اگر استانداردی وجود نداشته باشد، برای هر سرویس باید یک اتصال جداگانه توسعه داده شود.

اما با MCP، بسیاری از این سرویس‌ها از یک روش استاندارد برای معرفی قابلیت‌های خود استفاده می‌کنند.

در نتیجه Agent راحت‌تر می‌تواند آن‌ها را کشف و استفاده کند.

MCP چگونه کار می‌کند؟

به‌صورت ساده، ارتباط به شکل زیر است:

Hermes Agent

↓

MCP Client

↓

MCP Server

↓

Tools

↓

External Services

در این معماری، Hermes Agent مستقیماً با تمام سرویس‌ها ارتباط برقرار نمی‌کند.

بلکه از طریق MCP Server به آن‌ها متصل می‌شود.

این موضوع توسعه، نگهداری و افزودن ابزارهای جدید را بسیار ساده‌تر می‌کند.

نمونه‌هایی از MCP Server

در اکوسیستم MCP، سرورهای مختلفی برای اتصال به ابزارهای متنوع وجود دارند.

برای مثال:

  • GitHub
  • Git
  • Filesystem
  • PostgreSQL
  • SQLite
  • Slack
  • Notion
  • Google Drive
  • Browser Automation
  • Docker

هر Server مجموعه‌ای از Toolها را در اختیار Agent قرار می‌دهد.

0:00
/1:14

Hermes Agent Desktop

طراحی Skillهای اختصاصی

یکی از نقاط قوت Hermes Agent این است که می‌توانید Skillهای مخصوص سازمان خود را ایجاد کنید.

برای مثال:

Agent فروش

Skillها:

  • بررسی موجودی کالا
  • ثبت سفارش
  • محاسبۀ قیمت
  • ارسال پیش‌فاکتور

Agent پشتیبانی

Skillها:

  • جستجو در پایگاه دانش
  • بررسی وضعیت تیکت
  • ایجاد پاسخ پیشنهادی
  • ارجاع درخواست

Agent توسعه نرم‌افزار

Skillها:

  • تولید کد
  • تحلیل Pull Request
  • اجرای تست
  • بررسی امنیت
  • مستندسازی

اتصال Toolها به API درواره

Hermes Agent وظیفۀ برنامه‌ریزی و اجرای Toolها را بر عهده دارد، اما برای انجام استدلال همچنان به مدل هوش مصنوعی متصل می‌شود.

اگر این مدل از طریق API درواره در اختیار Agent قرار گیرد، می‌توانید:

  • برای هر Skill مدل مناسب انتخاب کنید.
  • در آینده مدل را بدون تغییر Skillها عوض کنید.
  • از صدها مدل مختلف استفاده کنید.
  • وابسته به یک ارائه‌دهندۀ خاص نباشید.

به این ترتیب، معماری شما از دو بخش مستقل تشکیل می‌شود:

  • Agent و Toolها
  • مدل هوش مصنوعی

و هر دو می‌توانند بدون تأثیر بر دیگری تکامل پیدا کنند.

بهترین روش طراحی Toolها

برای افزایش پایداری Agent پیشنهاد می‌شود:

  • هر Tool تنها یک مسئولیت مشخص داشته باشد.
  • Toolها خروجی استاندارد تولید کنند.
  • خطاها به‌صورت ساختاریافته مدیریت شوند.
  • عملیات حساس نیازمند تأیید کاربر باشند.
  • Toolها مستقل از مدل هوش مصنوعی طراحی شوند.

این اصول باعث می‌شوند Agent در پروژه‌های بزرگ نیز قابل نگهداری باقی بماند.

امنیت در استفاده از Toolها

قدرت بالای Agentها به این معناست که در صورت طراحی نادرست، ممکن است به منابع حساسی دسترسی پیدا کنند.

بنابراین پیشنهاد می‌شود:

  • دسترسی هر Tool محدود باشد.
  • عملیات مخرب نیازمند تأیید کاربر باشد.
  • کلیدهای API در متغیرهای محیطی ذخیره شوند.
  • تمام فعالیت‌های مهم ثبت (Logging) شوند.
  • اصل Least Privilege در طراحی دسترسی‌ها رعایت شود.

این موضوع به‌ویژه در پروژه‌های سازمانی اهمیت بسیار زیادی دارد.

پرسش و پاسخ

آیا برای استفاده از Hermes Agent حتماً باید از MCP استفاده کنیم؟

خیر. Hermes Agent بدون MCP نیز قابل استفاده است و می‌تواند با Toolهای داخلی یا ادغام‌های اختصاصی کار کند. با این حال، MCP یک استاندارد رو‌به‌رشد برای اتصال Agentها به ابزارها و سرویس‌های مختلف است و استفاده از آن توسعه، نگهداری و گسترش قابلیت‌های Agent را در بلندمدت ساده‌تر می‌کند؛ به‌خصوص اگر قصد اتصال به چندین سرویس مختلف را داشته باشید.

ساخت یک Coding Agent با Hermes Agent و API درواره؛ یک مثال عملی

تا اینجا با مفاهیم اصلی Hermes Agent، معماری آن، Memory، Skills، Tool Calling و MCP آشنا شدیم.

اما مهم‌ترین سؤال این است:

در یک پروژه واقعی، Hermes Agent چگونه کار می‌کند؟

در این بخش، یک سناریوی عملی را بررسی می‌کنیم که در آن Hermes Agent نقش یک همکار برنامه‌نویس را بر عهده دارد.

این Agent می‌تواند:

  • ساختار پروژه را بررسی کند.
  • کد جدید تولید کند.
  • فایل‌های مختلف را ویرایش کند.
  • تست بنویسد.
  • مستندات را به‌روزرسانی کند.
  • از Git استفاده کند.
  • برای استدلال از مدل‌های هوش مصنوعی متصل به API درواره بهره ببرد.

سناریو

فرض کنید یک پروژه Backend با Python و FastAPI در اختیار دارید.

کارفرما از شما درخواست می‌کند قابلیت مدیریت کاربران به پروژه اضافه شود.

این قابلیت شامل موارد زیر است:

  • ایجاد کاربر
  • ویرایش کاربر
  • حذف کاربر
  • دریافت فهرست کاربران
  • اعتبارسنجی داده‌ها
  • تست
  • مستندات

اگر این کار را به‌صورت دستی انجام دهید، احتمالاً باید ده‌ها فایل را ویرایش کنید.

اما حالا همین پروژه را به Hermes Agent می‌سپاریم.

مرحله اول؛ تحلیل پروژه

اولین کاری که Agent انجام می‌دهد، نوشتن کد نیست.

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

برای مثال موارد زیر را بررسی می‌کند:

  • ساختار پوشه‌ها
  • وابستگی فایل‌ها
  • معماری پروژه
  • فریم‌ورک
  • ORM
  • سیستم احراز هویت
  • مسیرهای API
  • فایل‌های تست
  • مستندات موجود

در این مرحله، Agent هنوز هیچ تغییری در پروژه ایجاد نمی‌کند.

مرحله دوم؛ برنامه‌ریزی

پس از تحلیل پروژه، Hermes Agent معمولاً یک برنامه برای انجام وظیفه تهیه می‌کند.

برای مثال:

  1. بررسی مدل‌های پایگاه داده
  2. ایجاد مدل User
  3. ایجاد Repository
  4. ایجاد Service
  5. ایجاد Route
  6. افزودن Validation
  7. نوشتن Unit Test
  8. به‌روزرسانی README

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

مرحله سوم؛ انتخاب مدل هوش مصنوعی

در این مرحله، Hermes Agent برای انجام استدلال به یک مدل زبانی نیاز دارد.

اگر از درواره استفاده می‌کنید، کافی است Agent به API زیر متصل باشد:

https://api.darvareh.ir/v1

سپس می‌توانید بسته به نوع وظیفه، مدل مناسب را انتخاب کنید.

برای مثال:

  • مدل‌های تخصصی برنامه‌نویسی برای تولید کد
  • مدل‌های سریع‌تر برای بازبینی فایل‌ها
  • مدل‌های دارای Context بزرگ برای تحلیل پروژه‌های حجیم

بدون آنکه لازم باشد معماری Agent را تغییر دهید.

مرحله چهارم؛ تولید کد

اکنون Agent می‌تواند تولید کد را آغاز کند.

اما تفاوت مهم Hermes Agent با بسیاری از ابزارهای ساده این است که معمولاً فقط یک فایل ایجاد نمی‌کند.

برای مثال ممکن است هم‌زمان:

  • Model
  • Schema
  • Service
  • Repository
  • API
  • Migration
  • Test
  • Documentation

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

به همین دلیل، خروجی آن بیشتر شبیه کاری است که یک توسعه‌دهندۀ باتجربه انجام می‌دهد.

مرحله پنجم؛ بررسی کیفیت

پس از تولید کد، Agent می‌تواند مراحل کنترل کیفیت را نیز انجام دهد.

برای مثال:

  • بررسی خطاهای نحوی
  • اجرای Linter
  • تحلیل وابستگی‌ها
  • بررسی استانداردهای پروژه
  • شناسایی کدهای تکراری

در این مرحله ممکن است بخشی از کدها دوباره اصلاح شوند.

مرحله ششم؛ تولید تست

یکی از نقاط قوت Hermes Agent، توانایی تولید تست است.

برای مثال می‌تواند:

  • Unit Test
  • Integration Test
  • Mock Data
  • Test Fixture

ایجاد کند.

اگر تست‌ها با شکست مواجه شوند، Agent می‌تواند گزارش آن‌ها را تحلیل کند و اصلاحات پیشنهادی ارائه دهد.

مرحله هفتم؛ به‌روزرسانی مستندات

بسیاری از توسعه‌دهندگان پس از اضافه کردن قابلیت جدید، مستندات پروژه را فراموش می‌کنند.

Hermes Agent می‌تواند:

  • README را به‌روزرسانی کند.
  • مستندات API را تکمیل کند.
  • توضیح قابلیت جدید را اضافه کند.
  • نمونه درخواست و پاسخ تولید کند.

این موضوع به نگهداری بلندمدت پروژه کمک زیادی می‌کند.

استفاده از مدل‌های مختلف برای مراحل مختلف

یکی از مزیت‌های اتصال Hermes Agent به درواره این است که مجبور نیستید برای تمام مراحل از یک مدل استفاده کنید.

برای مثال:

  • تحلیل پروژه → مدلی با توان استدلال بالا
  • تولید کد → مدلی تخصصی در برنامه‌نویسی
  • مستندسازی → مدلی با کیفیت نگارش بالا
  • بازبینی نهایی → مدلی دیگر

چون تمام این مدل‌ها از طریق یک API در دسترس هستند، تغییر آن‌ها بسیار ساده خواهد بود.

مدیریت هزینه

در پروژه‌های بزرگ، تمام وظایف به مدل‌های گران‌قیمت نیاز ندارند.

یک راهکار رایج این است:

  • وظایف ساده با مدل‌های سریع و اقتصادی انجام شوند.
  • فقط مراحل حساس مانند طراحی معماری یا بازآرایی گسترده به مدل‌های پیشرفته سپرده شوند.

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

بهترین روش استفاده در تیم‌های نرم‌افزاری

اگر چند توسعه‌دهنده از Hermes Agent استفاده می‌کنند، بهتر است:

  • همۀ اعضا از یک Base URL استفاده کنند.
  • مدل‌های استاندارد تیم مشخص باشند.
  • فایل AGENTS.md بین اعضا مشترک باشد.
  • قوانین پروژه مستند شوند.
  • API Key هر توسعه‌دهنده جداگانه مدیریت شود.

این کار باعث می‌شود رفتار Agent در تمام پروژه‌ها یکپارچه و قابل پیش‌بینی باقی بماند.

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

هنگام استفاده از Hermes Agent، این اشتباهات بسیار رایج هستند:

  • سپردن وظایف بسیار بزرگ در یک مرحله
  • نداشتن AGENTS.md
  • تعریف نکردن قوانین پروژه
  • استفاده از یک مدل برای تمام وظایف
  • عدم بازبینی خروجی Agent
  • ذخیره کردن API Key داخل کد پروژه
  • نادیده گرفتن تست‌ها

پرهیز از این اشتباهات باعث می‌شود Agent عملکرد دقیق‌تر و قابل اعتمادتری داشته باشد.

آیا Hermes Agent جایگزین برنامه‌نویس می‌شود؟

خیر.

Hermes Agent می‌تواند بسیاری از کارهای تکراری و زمان‌بر را خودکار کند، اما همچنان به تصمیم‌گیری، بازبینی و نظارت توسعه‌دهنده نیاز دارد.

در عمل، بهترین نتیجه زمانی حاصل می‌شود که برنامه‌نویس و Agent در کنار یکدیگر کار کنند.

توسعه‌دهنده معماری، تصمیم‌های کلیدی و بازبینی نهایی را انجام می‌دهد و Agent بخش بزرگی از کارهای اجرایی را بر عهده می‌گیرد.

پرسش و پاسخ

آیا Hermes Agent برای پروژه‌های کوچک هم ارزش استفاده دارد؟

بله. اگرچه توانایی‌های Hermes Agent در پروژه‌های بزرگ بیشتر به چشم می‌آید، اما در پروژه‌های کوچک نیز می‌تواند با تولید کد، نوشتن تست، مستندسازی، بازآرایی فایل‌ها و استفاده از مدل‌های هوش مصنوعی از طریق API درواره، زمان توسعه را کاهش دهد. با این حال، در پروژه‌های ساده ممکن است نیازی به استفاده از تمام قابلیت‌های پیشرفتۀ آن مانند Memory یا MCP نداشته باشید.

بهترین روش‌ها (Best Practices) برای استفاده از Hermes Agent

پس از آشنایی با قابلیت‌های Hermes Agent، رعایت چند اصل ساده می‌تواند کیفیت خروجی، امنیت و بهره‌وری پروژه‌های شما را به‌طور قابل توجهی افزایش دهد.

۱. برای هر Agent هدف مشخص تعریف کنید

به‌جای ساخت یک Agent که همه کار انجام می‌دهد، Agentهای تخصصی ایجاد کنید.

برای مثال:

  • Agent برنامه‌نویسی
  • Agent مستندسازی
  • Agent تحلیل داده
  • Agent پشتیبانی
  • Agent تحقیق و پژوهش

هرچه مسئولیت Agent محدودتر باشد، عملکرد آن نیز معمولاً بهتر خواهد بود.

۲. از AGENTS.md استفاده کنید

یکی از بهترین راه‌ها برای افزایش کیفیت خروجی، تعریف دقیق قوانین پروژه در فایل AGENTS.md است.

اطلاعاتی مانند:

  • معماری پروژه
  • استانداردهای کدنویسی
  • ساختار پوشه‌ها
  • قوانین نام‌گذاری
  • ابزارهای مورد استفاده

باعث می‌شوند Hermes Agent در تمام جلسات کاری رفتار یکسانی داشته باشد.

۳. مدل مناسب هر وظیفه را انتخاب کنید

همۀ وظایف به یک مدل یکسان نیاز ندارند.

برای مثال:

  • برنامه‌نویسی
  • تحلیل اسناد
  • مستندسازی
  • تولید محتوا
  • خلاصه‌سازی

هر کدام ممکن است با مدل متفاوتی بهترین نتیجه را ارائه دهند.

اگر از API درواره استفاده کنید، می‌توانید بدون تغییر Agent، مدل مناسب هر وظیفه را انتخاب کنید.

۴. خروجی Agent را بازبینی کنید

Hermes Agent ابزار بسیار قدرتمندی است، اما نباید خروجی آن بدون بررسی وارد محیط تولید شود.

پیشنهاد می‌شود همیشه:

  • کدها بازبینی شوند.
  • تست‌ها اجرا شوند.
  • تغییرات امنیتی بررسی شوند.
  • Pull Requestها توسط اعضای تیم بررسی شوند.

۵. امنیت را جدی بگیرید

هرگز:

  • API Key را داخل Repository قرار ندهید.
  • دسترسی کامل به تمام Toolها ندهید.
  • عملیات حساس را بدون تأیید اجرا نکنید.

بهتر است اصل Least Privilege را در طراحی Toolها رعایت کنید؛ یعنی هر Tool فقط به همان سطح دسترسی موردنیاز خود دسترسی داشته باشد.

خطاهای رایج هنگام استفاده از Hermes Agent

در ادامه، چند مورد از اشتباهاتی که معمولاً کاربران تازه‌کار مرتکب می‌شوند را مرور می‌کنیم.

سپردن وظایف بسیار بزرگ

بهتر است وظایف پیچیده را به چند مرحلۀ کوچک‌تر تقسیم کنید.

نداشتن مستندات پروژه

هرچه اطلاعات بیشتری در AGENTS.md و مستندات پروژه وجود داشته باشد، کیفیت خروجی Agent نیز بهتر خواهد بود.

استفاده از یک مدل برای تمام کارها

مدل مناسب برنامه‌نویسی الزاماً بهترین مدل برای مستندسازی یا تحلیل اسناد نیست.

بی‌توجهی به هزینه مصرف توکن

اگر همۀ درخواست‌ها را با قدرتمندترین مدل‌ها اجرا کنید، هزینه پروژه افزایش پیدا خواهد کرد.

اعتماد کامل به خروجی هوش مصنوعی

Hermes Agent یک دستیار هوشمند است، نه جایگزین کامل تیم توسعه.

بازبینی انسانی همچنان ضروری است.

پرسش‌های متداول

آیا Hermes Agent رایگان است؟

Hermes Agent یک پروژه متن‌باز است، اما استفاده از مدل‌های هوش مصنوعی معمولاً مستلزم استفاده از یک Provider یا API خواهد بود.

آیا Hermes Agent فقط برای برنامه‌نویسی است؟

خیر.

اگرچه یکی از محبوب‌ترین کاربردهای Hermes Agent توسعه نرم‌افزار است، اما می‌توان از آن برای:

  • تحقیق
  • تحلیل داده
  • اتوماسیون
  • تولید محتوا
  • مدیریت پروژه
  • پشتیبانی مشتریان

نیز استفاده کرد.

آیا Hermes Agent از مدل‌های مختلف پشتیبانی می‌کند؟

بله.

یکی از مزیت‌های مهم Hermes Agent این است که می‌تواند با مدل‌های مختلف و APIهای سازگار با OpenAI کار کند.

آیا برای استفاده از Hermes Agent باید GPU داشته باشم؟

خیر.

اگر از مدل‌های ابری یا APIهای خارجی استفاده کنید، Hermes Agent روی یک رایانۀ معمولی نیز قابل اجراست.

آیا Hermes Agent برای شرکت‌ها مناسب است؟

بله.

قابلیت‌هایی مانند Memory، Tool Calling، Skills، MCP و امکان اتصال به APIهای استاندارد، Hermes Agent را به گزینه‌ای مناسب برای تیم‌های نرم‌افزاری و سازمان‌ها تبدیل کرده است.

جمع‌بندی

Hermes Agent یکی از پیشرفته‌ترین چارچوب‌های متن‌باز برای ساخت Agentهای هوش مصنوعی است که فراتر از یک چت‌بات یا ابزار تکمیل کد عمل می‌کند. این پروژه با تکیه بر مفاهیمی مانند Planning، Memory، Context، Skills، Tool Calling و MCP به توسعه‌دهندگان امکان می‌دهد Agentهایی بسازند که بتوانند وظایف پیچیده را به‌صورت مرحله‌به‌مرحله اجرا کنند.

در این مقاله با معماری Hermes Agent، نصب و راه‌اندازی، مدیریت Memory، فایل‌های AGENTS.md و SOUL.md، طراحی Skillها، استفاده از Tool Calling، استاندارد MCP و ساخت یک Coding Agent آشنا شدیم. همچنین بررسی کردیم که چگونه می‌توان این Agent را به یک API سازگار با OpenAI متصل کرد تا بدون وابستگی به یک ارائه‌دهندۀ خاص، از مدل‌های مختلف استفاده کند.

اگر قصد دارید از Hermes Agent در پروژه‌های واقعی استفاده کنید، پیشنهاد می‌شود از ابتدا معماری پروژه، قوانین تیم، ساختار Memory و انتخاب مدل‌ها را با دقت طراحی کنید. این تصمیم‌ها در بلندمدت تأثیر مستقیمی بر کیفیت، هزینه و قابلیت نگهداری Agent خواهند داشت.

درواره؛ زیرساخت یکپارچۀ استفاده از هوش مصنوعی برای Hermes Agent

Hermes Agent برای انجام وظایف خود به یک مدل هوش مصنوعی متصل می‌شود. اگر می‌خواهید بدون وابستگی به یک ارائه‌دهندۀ خاص از مدل‌های متنوع استفاده کنید، می‌توانید آن را به API سازگار با OpenAI درواره متصل کنید.

با استفاده از درواره می‌توانید:

  • با یک API به صدها مدل هوش مصنوعی دسترسی داشته باشید.
  • بدون تغییر معماری Agent، مدل موردنیاز خود را انتخاب یا جایگزین کنید.
  • از مدل‌های تخصصی برای برنامه‌نویسی، تحلیل اسناد، تولید محتوا، تصویر، صوت و ویدئو استفاده کنید.
  • پرداخت ریالی، مستندات فارسی و مدیریت متمرکز API Keyها را در اختیار داشته باشید.
  • از همان Base URL استاندارد در ابزارهایی مانند Hermes Agent، Cursor، Cline، Roo Code، Continue، Windsurf و بسیاری از SDKهای سازگار با OpenAI استفاده کنید.

برای اتصال Hermes Agent کافی است Base URL را روی مقدار زیر تنظیم کنید:

https://api.darvareh.ir/v1

سپس کلید API خود را وارد کرده و مدل مناسب پروژه را انتخاب کنید.

مقالات مرتبط

Read more

هوش مصنوعی چیست؟ راهنمای کامل AI، یادگیری ماشین، یادگیری عمیق و هوش مصنوعی مولد

هوش مصنوعی چیست؟ راهنمای کامل AI، یادگیری ماشین، یادگیری عمیق و هوش مصنوعی مولد

هوش مصنوعی فناوری‌ای است که به ماشین‌ها امکان یادگیری، تصمیم‌گیری، درک زبان و تولید محتوا می‌دهد. در این راهنمای جامع با AI، یادگیری ماشین، یادگیری عمیق، هوش مصنوعی مولد، کاربردها، مزایا و ریسک‌های آن آشنا می‌شوید.

Mistral AI چیست؟ آشنایی کامل با استارتاپ فرانسوی که رقیب جدی OpenAI شده است

Mistral AI چیست؟ آشنایی کامل با استارتاپ فرانسوی که رقیب جدی OpenAI شده است

Mistral AI یکی از مهم‌ترین استارتاپ‌های هوش مصنوعی اروپا است که با توسعه مدل‌های زبانی، زیرساخت ابری و راهکارهای سازمانی، به رقیبی جدی برای OpenAI تبدیل شده است. در این مقاله با مدل‌ها، محصولات، مزایا، سرمایه‌گذاری‌ها و آینده این شرکت آشنا می‌شوید.

مدل‌های زبانی بزرگ در دام «تفکر جمعی» افتاده‌اند؛ استارتاپی که می‌خواهد آن‌ها را خلاق‌تر کند

مدل‌های زبانی بزرگ در دام «تفکر جمعی» افتاده‌اند؛ استارتاپی که می‌خواهد آن‌ها را خلاق‌تر کند

چت‌بات‌ها در پاسخ‌هایشان بسیار قابل‌پیش‌بینی‌تر از آن چیزی هستند که احتمالاً تصور می‌کنید. این ویژگی برای کارهایی مانند پژوهش یا برنامه‌نویسی مشکلی ایجاد نمی‌کند، اما اگر به دنبال ایده‌ای تازه یا چیزی متفاوت باشید، به یک نقطه‌ضعف تبدیل می‌شود.