Cohere Command A+ چیست؟ آموزش کامل مدل Enterprise، RAG و AI Agent با API درواره
Cohere Command A+ مدل سازمانی چندزبانه برای Reasoning، RAG، تحلیل تصویر و ساخت AI Agent است. در این راهنما قابلیتها و اتصال آن به API درواره را یاد میگیرید.
Cohere Command A+ یکی از جدیدترین مدلهای هوش مصنوعی شرکت Cohere است که برای کاربردهای سازمانی، Agentهای چندزبانه، Retrieval-Augmented Generation یا RAG، تحلیل تصویر، Reasoning، Tool Calling و تولید Structured Output طراحی شده است.
این مدل با شناسه نسخه command-a-plus-05-2026 در ماه مه ۲۰۲۶ معرفی شد و نسل جدید خانواده Command A محسوب میشود. Command A+ تلاش میکند قابلیتهایی را که پیشتر میان چند مدل تخصصی Cohere تقسیم شده بودند، در یک مدل واحد ترکیب کند:
- Reasoning
- پشتیبانی چندزبانه
- تحلیل تصویر
- ترجمه
- Tool Calling
- Citations
- Structured Output
- Agentic Workflow
- پردازش Context طولانی
برای بازار ایران، یکی از ویژگیهای مهم Command A+ پشتیبانی رسمی از زبان فارسی است. این قابلیت میتواند آن را به گزینهای مناسب برای تحلیل اسناد فارسی، ساخت دستیار سازمانی، دستهبندی درخواستها، ترجمه و جستوجوی هوشمند در دادههای فارسی تبدیل کند.
توسعهدهندگان میتوانند از طریق API درواره به نسخه ارائهشده مدل متصل شوند و آن را با ساختاری سازگار با OpenAI API در پروژههای Python، JavaScript، TypeScript، PHP و سایر زبانها استفاده کنند.
برای مشاهده قیمت و وضعیت فعال مدل به صفحه مدلهای درواره مراجعه کنید.
مشخصات Cohere Command A+
| ویژگی | توضیح |
|---|---|
| نام مدل | Cohere Command A+ |
| نسخه | 05-2026 |
| توسعهدهنده | Cohere |
| خانواده | Command A |
| نوع معماری | Mixture of Experts |
| ورودی متن | دارد |
| ورودی تصویر | دارد |
| خروجی اصلی | متن |
| Context Window | 128K Token |
| حداکثر خروجی | 64K Token |
| Knowledge Cutoff اعلامشده | اول آوریل ۲۰۲۵ |
| Reasoning | دارد |
| Tool Calling | دارد |
| Structured Output | دارد |
| Citations | دارد |
| چندزبانه | دارد |
| زبان فارسی | در فهرست زبانهای پشتیبانیشده |
| Model ID درواره | cohere/command-a-plus-05-2026 |
| Base URL درواره | https://api.darvareh.ir/v1 |
Model ID، محدودیت ورودی و قابلیتهای فعال ممکن است براساس مسیر ارائه بهروزرسانی شوند. پیش از استفاده Production، مشخصات را از صفحه مدلهای درواره بررسی کنید.
Command A+ چه تفاوتی با Command A دارد؟
Command A+ جانشین مستقیم Command A نیست که فقط تعداد پارامتر بیشتری داشته باشد؛ بلکه ترکیبی از قابلیتهای چند مدل تخصصی خانواده Command را در اختیار توسعهدهنده قرار میدهد.
| معیار | Command A+ | Command A |
|---|---|---|
| زمان انتشار | مه ۲۰۲۶ | مارس ۲۰۲۵ |
| معماری | Mixture of Experts | مدل سازمانی بهینهشده |
| Context | 128K | 256K |
| حداکثر خروجی | 64K | 8K |
| Reasoning | دارد | نسخه پایه محدودتر |
| تحلیل تصویر | دارد | بسته به نسخه |
| Tool Calling | دارد | دارد |
| Structured Output | دارد | دارد |
| ترجمه | تقویتشده | چندزبانه |
| زبانهای بیشتر | دارد | ۲۳ زبان تجاری |
| کاربرد | مدل یکپارچه Enterprise | RAG و Agent سازمانی |
Command A Context بزرگتری دارد، اما Command A+ خروجی بسیار طولانیتر و قابلیتهای یکپارچهتر Reasoning، Vision و Multilingual ارائه میدهد. بنابراین جدیدتربودن مدل به معنی برتری آن در تمام معیارها نیست.
اگر وظیفه شما به بیش از 128K Context نیاز دارد، باید Command A یا مدل Long Context دیگری را نیز ارزیابی کنید.
معماری Mixture of Experts چیست؟
Command A+ نخستین مدل Mixture of Experts یا MoE در خانواده Command A است.
در مدل Dense، تقریباً تمام پارامترهای اصلی برای پردازش هر Token فعال میشوند. در مدل MoE، شبکه از چند Expert تشکیل شده و یک Router فقط Expertهای مرتبط با ورودی را فعال میکند.
مزایای احتمالی MoE عبارتاند از:
- ظرفیت کلی بیشتر مدل
- کاهش محاسبات فعال برای هر Token
- توان عملیاتی بهتر
- امکان تخصصیشدن Expertها
- مقیاسپذیری بهتر برای کاربرد سازمانی
برای کاربر API نیازی به انتخاب Expert وجود ندارد. Routing کاملاً در داخل مدل انجام میشود.
Command A+ برای چه کاربردی ساخته شده است؟
تمرکز Cohere بهصورت تاریخی بر کاربردهای Enterprise، جستوجوی سازمانی، RAG و مدلهای چندزبانه بوده است. Command A+ نیز برای همین نوع محصولات طراحی شده است.
نمونه کاربردها:
- دستیار دانش سازمانی
- جستوجوی هوشمند
- تحلیل اسناد
- RAG
- Agent پشتیبانی
- دستیار کارکنان
- تحلیل تصویر و نمودار
- ترجمه سازمانی
- Structured Data Extraction
- Tool Calling
- اتوماسیون Workflow
- گزارشسازی
- تحلیل بازخورد مشتریان
- پاسخ همراه با Citation
پشتیبانی Command A+ از زبان فارسی
براساس اطلاعات رسمی انتشار Command A+، زبان فارسی در فهرست زبانهای پشتیبانیشده این مدل قرار دارد.
این فهرست شامل زبانهایی مانند موارد زیر است:
- فارسی
- انگلیسی
- عربی
- ترکی
- فرانسوی
- آلمانی
- اسپانیایی
- روسی
- چینی
- ژاپنی
- کرهای
- هندی
- اردو
- ویتنامی
- زبانهای متعدد اروپایی و آسیایی
این ویژگی برای پروژههای ایرانی اهمیت زیادی دارد؛ زیرا بسیاری از مدلهای سازمانی ممکن است در زبان انگلیسی عملکرد خوبی داشته باشند اما در پردازش اسناد فارسی، موجودیتها، ترکیب راستبهچپ و اصطلاحات فارسی ناپایدار باشند.
بااینحال، قرارداشتن فارسی در فهرست زبانها تضمین نمیکند که کیفیت آن با انگلیسی کاملاً برابر باشد. برای استفاده Production باید مدل را روی دادههای واقعی خود ارزیابی کنید.
کاربردهای فارسی Command A+
- خلاصهسازی گزارش فارسی
- پاسخگویی به سؤال درباره اسناد فارسی
- استخراج نام شخص، شرکت و محصول
- طبقهبندی Ticket فارسی
- تحلیل احساسات
- تولید پاسخ پیشنهادی
- ترجمه فارسی و انگلیسی
- ساخت FAQ
- تحلیل بازخورد مشتری
- تولید JSON از متن فارسی
- جستوجوی سازمانی
- ساخت دستیار دانش
- تحلیل ترکیب فارسی و اصطلاحات English
Context Window برابر با 128K Token
Command A+ میتواند تا 128K Token Context را پردازش کند.
این Context شامل موارد زیر است:
- System Prompt
- پیامهای کاربر
- تاریخچه گفتگو
- اسناد بازیابیشده
- خروجی ابزارها
- اطلاعات تصویر
- پاسخ در حال تولید
Context 128K برای بسیاری از کاربردهای سازمانی کافی است:
- چند سند طولانی
- گزارشهای چندبخشی
- تعداد زیادی Ticket
- یک Agent چندمرحلهای
- چند فایل کد
- مکالمه طولانی
- مجموعه خروجیهای ابزار
اما در پروژه RAG نباید تمام اسناد پایگاه دانش را در یک درخواست قرار دهید. Retrieval و Reranking همچنان لازماند.
حداکثر خروجی 64K چه کاربردی دارد؟
حداکثر خروجی 64K Token به مدل اجازه میدهد پاسخهای بسیار طولانی تولید کند، مانند:
- گزارش جامع
- مستندات فنی
- برنامه مهاجرت
- تحلیل چند سند
- تولید مجموعهای از دادههای ساختاریافته
- گزارش تحقیق
- کد چندفایلی
- خلاصه تفصیلی
این ظرفیت به معنی توصیه برای تولید دائمی خروجی 64K نیست. خروجی طولانی:
- هزینه را افزایش میدهد.
- زمان پاسخ را بیشتر میکند.
- احتمال تکرار را افزایش میدهد.
- پردازش Frontend را دشوارتر میکند.
- اعتبارسنجی را پیچیدهتر میکند.
max_tokens را براساس نیاز واقعی تنظیم کنید.
Reasoning در Command A+
Command A+ از Reasoning پشتیبانی میکند و میتواند مسائل پیچیده را در چند مرحله تحلیل کند.
کاربردهای مناسب:
- مقایسه چند گزینه
- تحلیل علت ریشهای
- برنامهریزی Agent
- طراحی Workflow
- Debug
- تحلیل چند سند
- تصمیمگیری براساس شواهد
- بررسی تناقض
- برنامه مهاجرت
- Code Review
در Product Design باید میان Reasoning و Latency تعادل ایجاد کنید. طبقهبندی ساده یا استخراج چند فیلد به Reasoning سنگین نیاز ندارد.
Vision و تحلیل تصویر
Command A+ میتواند ورودی تصویر را همراه Prompt متنی پردازش کند.
کاربردها:
- تحلیل Screenshot
- خواندن نمودار
- بررسی جدول
- تحلیل سند اسکنشده
- پاسخ به سؤال درباره تصویر
- استخراج اطلاعات
- مقایسه چند تصویر
- تحلیل رابط کاربری
- بررسی Diagram معماری
- تحلیل تصویر محصول
خروجی مدل متن است و برای تولید تصویر باید از مدل تخصصی Image Generation استفاده شود.
Citations چیست؟
Citation یا استناد به مدل اجازه میدهد بخشهای پاسخ را به اسناد یا منابع ورودی مرتبط کند.
در سیستم RAG، پاسخ ساده زیر کافی نیست:
برای لغو اشتراک وارد تنظیمات شوید.
پاسخ بهتر باید مشخص کند این اطلاعات از کجا آمده است:
براساس سند «مدیریت اشتراک»، بخش «لغو سرویس»،
کاربر میتواند از مسیر تنظیمات حساب اقدام کند.
Citations برای کاربردهای زیر مهماند:
- دستیار سازمانی
- پشتیبانی مشتری
- تحقیق
- تحلیل مستندات
- گزارش مدیریتی
- پاسخگویی براساس پایگاه دانش
- بررسی ادعاها
حتی اگر مدل Citation تولید کند، Backend باید اعتبار آن را بررسی کند و مطمئن شود منبع واقعاً از ادعا پشتیبانی میکند.
Tool Calling
Command A+ میتواند تشخیص دهد برای پاسخ به درخواست به یک ابزار خارجی نیاز دارد.
نمونه:
فروش این ماه نسبت به ماه قبل چقدر تغییر کرده است؟
مدل نباید عدد را حدس بزند. باید ابزار مناسب را فراخوانی کند:
get_sales_metrics(
start_date="2026-07-01",
end_date="2026-07-31"
)
سپس Backend نتیجه را به مدل بازمیگرداند و مدل گزارش نهایی را تولید میکند.
Structured Output
Command A+ میتواند پاسخ را در قالب JSON یا Schema مشخص تولید کند.
نمونه خروجی تحلیل Ticket:
{
"category": "billing",
"priority": "high",
"sentiment": "negative",
"summary": "کاربر پرداخت انجام داده اما کیف پول شارژ نشده است.",
"requires_human_review": true,
"suggested_actions": [
"بررسی شناسه تراکنش",
"بررسی وضعیت درگاه",
"تطبیق تراکنش با کیف پول"
]
}
این خروجی باید در Backend با Pydantic، Zod یا JSON Schema Validator اعتبارسنجی شود.
کاربردهای Command A+ در محصولات سازمانی
۱. دستیار دانش سازمانی
یک دستیار دانش به کارمندان اجازه میدهد به زبان طبیعی درباره اسناد داخلی سؤال کنند.
منابع ممکن:
- راهنماهای داخلی
- مستندات محصول
- دستورالعملها
- FAQ
- Runbook
- مستندات فنی
- صورتجلسهها
- گزارشهای پروژه
معماری مناسب:
سؤال کاربر
بررسی سطح دسترسی
جستوجوی اسناد
Reranking
ساخت Context
ارسال به Command A+
تولید پاسخ همراه با Citation
اعتبارسنجی
۲. پشتیبانی مشتری
مدل میتواند برای این مراحل استفاده شود:
- دستهبندی پیام
- تشخیص Intent
- تحلیل احساسات
- بازیابی راهنمای مرتبط
- تولید پاسخ پیشنهادی
- تشخیص نیاز به Agent انسانی
- خلاصهسازی تاریخچه
- ایجاد Ticket ساختاریافته
مدل نباید بهتنهایی عملیات مالی یا تغییر حساب را انجام دهد. این عملیات باید توسط ابزار کنترلشده اجرا شوند.
۳. تحلیل بازخورد مشتریان
Command A+ میتواند تعداد زیادی بازخورد را تحلیل کند و:
- موضوعات پرتکرار را استخراج کند.
- احساسات را دستهبندی کند.
- درخواستهای قابلیت را پیدا کند.
- باگهای گزارششده را تشخیص دهد.
- شدت مشکل را تخمین بزند.
- خلاصه مدیریتی تولید کند.
- Action Item پیشنهاد دهد.
برای تحلیل آماری دقیق، محاسبات باید با Python یا SQL انجام شوند و مدل نتیجه را تفسیر کند.
۴. جستوجوی سازمانی
مدل Command A+ میتواند با مدلهای Embedding و Reranking ترکیب شود.
اجزای معماری:
- Embedding Model
- Vector Database
- Keyword Search
- Hybrid Search
- Reranker
- Command A+ برای پاسخ نهایی
در این معماری، Command A+ مسئول جستوجوی مستقیم در کل داده نیست؛ بلکه اسناد منتخب را دریافت و پاسخ را تولید میکند.
۵. ترجمه سازمانی
مدل برای Workflowهای Multilingual و ترجمه نیز بهینه شده است.
کاربردها:
- ترجمه مستندات
- ترجمه Ticket
- پشتیبانی چندزبانه
- ترجمه توضیحات محصول
- یکسانسازی اصطلاحات
- تولید نسخه محلی محتوا
- ترجمه همراه Glossary
برای ترجمه حرفهای باید Glossary، لحن، مخاطب و اصطلاحات غیرقابل ترجمه را در Prompt مشخص کنید.
۶. استخراج اطلاعات از تصویر
میتوانید تصویر فاکتور، جدول، Dashboard یا فرم را به مدل بدهید و JSON دریافت کنید.
نمونه Schema:
{
"document_type": "invoice",
"invoice_number": "string",
"date": "string",
"seller": "string",
"buyer": "string",
"total_amount": 0,
"currency": "string",
"confidence": 0
}
برای پردازش مالی یا حسابداری، نتیجه باید توسط Ruleهای قطعی و در موارد لازم کاربر انسانی بررسی شود.
۷. AI Agent چندزبانه
یک Agent چندزبانه میتواند:
- زبان کاربر را تشخیص دهد.
- درخواست را تحلیل کند.
- ابزار مناسب را فراخوانی کند.
- اطلاعات را از چند سیستم بگیرد.
- پاسخ را به زبان کاربر تولید کند.
- Citation و مراحل بعدی را ارائه دهد.
این قابلیت برای محصولات دارای کاربران فارسی، انگلیسی، عربی و ترکی مفید است.
۸. تحلیل اسناد طولانی
مدل میتواند:
- سند را خلاصه کند.
- تصمیمها را استخراج کند.
- تناقضها را پیدا کند.
- ریسکها را اولویتبندی کند.
- سؤالهای بدون پاسخ را فهرست کند.
- برنامه اجرایی بسازد.
- خروجی را به JSON تبدیل کند.
- چند سند را مقایسه کند.
مزایای Command A+
پشتیبانی رسمی از زبان فارسی
برای پروژههای فارسیزبان مزیت مهمی محسوب میشود.
تمرکز سازمانی
مدل برای RAG، Agent، Citations و Tool Calling طراحی شده است.
Reasoning
برای وظایف چندمرحلهای و تحلیل پیچیده مناسب است.
Vision
تصویر و متن را در یک درخواست پردازش میکند.
Structured Output
برای اتصال خروجی مدل به Backend مفید است.
Tool Calling
Agent میتواند از APIها و ابزارهای سازمانی استفاده کند.
خروجی تا 64K
برای گزارشهای طولانی و تولید محتوای ساختاریافته مناسب است.
معماری MoE
تلاش میکند ظرفیت مدل را با استنتاج کارآمدتر ترکیب کند.
محدودیتهای Command A+
Context کمتر از Command A
Command A+ دارای Context برابر 128K است، درحالیکه Command A از 256K پشتیبانی میکند.
هزینه مدل Enterprise
برای طبقهبندی ساده ممکن است مدل کوچکتر اقتصادیتر باشد.
Latency Reasoning
درخواستهای پیچیده و خروجی طولانی زمان بیشتری نیاز دارند.
خروجی تصویر ندارد
Vision برای درک تصویر است، نه تولید آن.
Citation تضمین صحت نیست
هر Citation باید از نظر ارتباط با ادعا بررسی شود.
نیاز به Evaluation فارسی
عملکرد روی داده واقعی فارسی باید اندازهگیری شود.
استفاده از Command A+ با API درواره
برای شروع:
- در درواره ثبتنام کنید.
- API Key دریافت کنید.
- مدل را در صفحه مدلها جستوجو کنید.
- Model ID را کپی کنید.
- درخواست را از Backend ارسال کنید.
تنظیمات:
Base URL: https://api.darvareh.ir/v1
Model ID درواره: cohere/command-a-plus-05-2026
کلید API را در Frontend، اپ موبایل یا Repository عمومی قرار ندهید.
نمونه درخواست cURL
curl https://api.darvareh.ir/v1/chat/completions \
-H "Authorization: Bearer YOUR_DARVAREH_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "cohere/command-a-plus-05-2026",
"messages": [
{
"role": "system",
"content": "تو یک دستیار سازمانی فارسی هستی. واقعیت، استنباط و پیشنهاد را از یکدیگر جدا کن."
},
{
"role": "user",
"content": "یک معماری کامل برای دستیار دانش سازمانی فارسی مبتنی بر RAG طراحی کن."
}
],
"temperature": 0.2,
"max_tokens": 5000
}'
اتصال به Python
نصب SDK:
pip install openai
تعریف کلید:
export DARVAREH_API_KEY="YOUR_DARVAREH_API_KEY"
نمونه کد:
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["DARVAREH_API_KEY"],
base_url="https://api.darvareh.ir/v1"
)
response = client.chat.completions.create(
model="cohere/command-a-plus-05-2026",
messages=[
{
"role": "system",
"content": """
تو یک دستیار سازمانی فارسی هستی.
قوانین:
- اطلاعات ناموجود را حدس نزن.
- فرضیات را صریح بنویس.
- پاسخ را ساختاریافته ارائه بده.
- برای هر پیشنهاد دلیل بیاور.
"""
},
{
"role": "user",
"content": """
برای تحلیل بازخورد مشتریان یک Workflow طراحی کن.
نیازمندیها:
- ورودی فارسی و انگلیسی
- دستهبندی موضوع
- sentiment analysis
- urgency detection
- summary
- suggested action
- JSON output
- human review برای موارد مهم
"""
}
],
temperature=0.2,
max_tokens=4000
)
print(response.choices[0].message.content)
اتصال به JavaScript
نصب پکیج:
npm install openai
نمونه Node.js:
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.DARVAREH_API_KEY,
baseURL: "https://api.darvareh.ir/v1",
});
const response = await client.chat.completions.create({
model: "cohere/command-a-plus-05-2026",
messages: [
{
role: "system",
content:
"تو یک دستیار سازمانی چندزبانه هستی. اطلاعات را حدس نزن و پاسخ ساختاریافته تولید کن.",
},
{
role: "user",
content: `
برای یک سیستم پشتیبانی فارسی، معماری RAG طراحی کن.
نیازمندیها:
- Hybrid Search
- Reranking
- citations
- tool calling
- structured output
- escalation to human
`,
},
],
temperature: 0.2,
max_tokens: 5000,
});
console.log(response.choices[0].message.content);
استفاده از Streaming
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["DARVAREH_API_KEY"],
base_url="https://api.darvareh.ir/v1"
)
stream = client.chat.completions.create(
model="cohere/command-a-plus-05-2026",
messages=[
{
"role": "user",
"content": (
"یک گزارش جامع درباره معماری "
"دستیار سازمانی مبتنی بر RAG بنویس."
)
}
],
temperature=0.2,
max_tokens=6000,
stream=True
)
for chunk in stream:
content = chunk.choices[0].delta.content
if content:
print(content, end="", flush=True)
ارسال تصویر
response = client.chat.completions.create(
model="cohere/command-a-plus-05-2026",
messages=[
{
"role": "system",
"content": (
"You analyze visible evidence in images. "
"Separate observations from inferences."
)
},
{
"role": "user",
"content": [
{
"type": "text",
"text": """
این Dashboard را تحلیل کن.
خروجی:
1. شاخصهای قابل مشاهده
2. روندها
3. دادههای غیرعادی
4. اطلاعات ناموجود
5. سؤالهای لازم برای تحلیل دقیقتر
"""
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/dashboard.png"
}
}
]
}
],
temperature=0.1,
max_tokens=3500
)
فرمت و محدودیت ورودی تصویر را برای مسیر فعال درواره بررسی کنید.
Structured Output با JSON Schema
response = client.chat.completions.create(
model="cohere/command-a-plus-05-2026",
messages=[
{
"role": "user",
"content": """
بازخورد زیر را تحلیل کن:
«دو بار پرداخت کردم اما کیف پولم شارژ نشده و
پشتیبانی هم هنوز جواب نداده است.»
"""
}
],
response_format={
"type": "json_schema",
"json_schema": {
"name": "feedback_analysis",
"strict": True,
"schema": {
"type": "object",
"properties": {
"category": {
"type": "string"
},
"sentiment": {
"type": "string",
"enum": [
"positive",
"neutral",
"negative"
]
},
"urgency": {
"type": "string",
"enum": [
"low",
"medium",
"high"
]
},
"summary": {
"type": "string"
},
"requires_human_review": {
"type": "boolean"
}
},
"required": [
"category",
"sentiment",
"urgency",
"summary",
"requires_human_review"
],
"additionalProperties": False
}
}
},
temperature=0.1,
max_tokens=1000
)
اگر response_format در مسیر فعال پشتیبانی نشد، Schema را داخل Prompt قرار دهید و JSON خروجی را اعتبارسنجی کنید.
Validation با Pydantic
from typing import Literal
from pydantic import BaseModel
class FeedbackAnalysis(BaseModel):
category: str
sentiment: Literal[
"positive",
"neutral",
"negative"
]
urgency: Literal[
"low",
"medium",
"high"
]
summary: str
requires_human_review: bool
Tool Calling
تعریف ابزار جستوجوی اسناد:
tools = [
{
"type": "function",
"function": {
"name": "search_knowledge_base",
"description": (
"Search approved company documents "
"for information relevant to the user question."
),
"parameters": {
"type": "object",
"properties": {
"query": {
"type": "string"
},
"language": {
"type": "string",
"enum": ["fa", "en"]
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 10
}
},
"required": [
"query",
"language"
],
"additionalProperties": False
}
}
}
]
فراخوانی مدل:
response = client.chat.completions.create(
model="cohere/command-a-plus-05-2026",
messages=[
{
"role": "system",
"content": """
تو دستیار دانش سازمان هستی.
قوانین:
- برای اطلاعات سازمانی از ابزار جستوجو استفاده کن.
- اطلاعات را حدس نزن.
- نام منبع را در پاسخ ذکر کن.
- اگر پاسخ در اسناد نیست، صریح اعلام کن.
"""
},
{
"role": "user",
"content": (
"فرایند درخواست تجهیزات برای کارمند جدید چیست؟"
)
}
],
tools=tools,
tool_choice="auto",
temperature=0.1
)
ساخت Agent Loop
import json
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["DARVAREH_API_KEY"],
base_url="https://api.darvareh.ir/v1"
)
def search_knowledge_base(
query: str,
language: str,
limit: int = 5
) -> dict:
return {
"query": query,
"language": language,
"documents": [
{
"id": "DOC-104",
"title": "راهنمای ورود کارمند جدید",
"content": (
"مدیر مستقیم باید درخواست تجهیزات "
"را در سامانه منابع انسانی ثبت کند."
)
}
][:limit]
}
tools = [
{
"type": "function",
"function": {
"name": "search_knowledge_base",
"description": "Search approved company documents.",
"parameters": {
"type": "object",
"properties": {
"query": {"type": "string"},
"language": {
"type": "string",
"enum": ["fa", "en"]
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 10
}
},
"required": [
"query",
"language"
],
"additionalProperties": False
}
}
}
]
handlers = {
"search_knowledge_base": search_knowledge_base
}
messages = [
{
"role": "system",
"content": (
"Use tools for company facts. "
"Cite document titles. "
"Do not invent missing information."
)
},
{
"role": "user",
"content": (
"برای کارمند جدید چطور لپتاپ درخواست کنیم؟"
)
}
]
for step in range(6):
response = client.chat.completions.create(
model="cohere/command-a-plus-05-2026",
messages=messages,
tools=tools,
tool_choice="auto",
temperature=0.1,
max_tokens=2000
)
assistant_message = response.choices[0].message
messages.append(assistant_message)
if not assistant_message.tool_calls:
print(assistant_message.content)
break
for call in assistant_message.tool_calls:
try:
name = call.function.name
arguments = json.loads(
call.function.arguments
)
result = handlers[name](**arguments)
except Exception as exc:
result = {
"ok": False,
"error": str(exc)
}
messages.append({
"role": "tool",
"tool_call_id": call.id,
"content": json.dumps(
result,
ensure_ascii=False
)
})
else:
raise RuntimeError("Agent exceeded maximum steps")
معماری کامل RAG با Command A+
مرحله اول: دریافت سؤال
سؤال کاربر همراه با شناسه کاربر، زبان و سطح دسترسی دریافت میشود.
مرحله دوم: Query Rewriting
مدل یا یک مدل کوچکتر سؤال را برای جستوجو بازنویسی میکند.
مرحله سوم: Hybrid Search
Keyword Search و Vector Search همزمان انجام میشوند.
مرحله چهارم: Reranking
نتایج براساس ارتباط معنایی دوباره مرتب میشوند.
مرحله پنجم: Access Filtering
اسنادی که کاربر مجوز دیدن آنها را ندارد حذف میشوند.
مرحله ششم: Context Building
بخشهای منتخب با شناسه سند وارد Prompt میشوند.
مرحله هفتم: Generation
Command A+ پاسخ را فقط براساس Context تولید میکند.
مرحله هشتم: Citation Validation
بررسی میشود هر Citation واقعاً از ادعای مربوط پشتیبانی کند.
Prompt مناسب RAG فارسی
تو دستیار دانش سازمان هستی.
وظیفه:
فقط براساس اسناد موجود در Context پاسخ بده.
قوانین:
- اطلاعات خارج از Context را اضافه نکن.
- اگر پاسخ وجود ندارد، بنویس «در اسناد موجود پاسخ قطعی پیدا نشد».
- هر ادعای مهم را با شناسه سند ذکر کن.
- تناقض میان اسناد را پنهان نکن.
- تاریخ و نسخه سند را در نظر بگیر.
- پاسخ را به زبان فارسی روان ارائه بده.
ساختار پاسخ:
1. پاسخ کوتاه
2. جزئیات
3. منابع
4. اطلاعات ناقص
Prompt مناسب ترجمه
متن زیر را از انگلیسی به فارسی ترجمه کن.
قواعد:
- لحن رسمی سازمانی حفظ شود.
- نام محصول و API ترجمه نشوند.
- اصطلاحات فنی در اولین استفاده بهصورت فارسی و English نوشته شوند.
- ساختار عنوانها و فهرستها حفظ شود.
- هیچ توضیح جدیدی اضافه نشود.
- اعداد و شناسهها تغییر نکنند.
Glossary:
deployment = استقرار
fallback = مسیر جایگزین
rate limit = محدودیت نرخ درخواست
structured output = خروجی ساختاریافته
Prompt مناسب تحلیل بازخورد
این مجموعه بازخورد فارسی را تحلیل کن.
خروجی:
- موضوعات اصلی
- تعداد تقریبی هر موضوع
- احساسات
- مشکلات پرتکرار
- درخواستهای قابلیت
- موارد فوری
- نمونههای نماینده
- پیشنهادهای عملی
قوانین:
- آمار را فقط از داده محاسبه کن.
- موضوعات مشابه را ادغام کن.
- موارد کماطمینان را مشخص کن.
- اطلاعات شخصی را در گزارش تکرار نکن.
برای شمارش دقیق، بهتر است مدل داده را طبقهبندی کند و محاسبه آمار در Python یا SQL انجام شود.
مدیریت Context و Citations
هر Chunk باید Metadata داشته باشد:
{
"document_id": "DOC-104",
"title": "راهنمای ورود کارمند جدید",
"version": "3.2",
"updated_at": "2026-06-10",
"section": "درخواست تجهیزات",
"content": "..."
}
Metadata کمک میکند:
- پاسخ به سند مرتبط شود.
- نسخه قدیمی شناسایی شود.
- Citation ساخته شود.
- سطح دسترسی کنترل شود.
- Debug آسانتر شود.
معماری Production پیشنهادی
API Layer
- Authentication
- Rate Limiting
- Validation
- Request ID
Access Control
- کنترل سطح دسترسی سند
- فیلتر براساس کاربر
- فیلتر براساس تیم
Retrieval Layer
- Keyword Search
- Vector Search
- Hybrid Search
- Reranking
Model Layer
- Command A+ برای تولید پاسخ
- مدل کوچکتر برای Query Rewriting
- Fallback Model
Tool Executor
- Validation
- Timeout
- Permission Check
- Audit Log
Output Validator
- JSON Schema
- Citation Validation
- Business Rules
Observability
- Latency
- Token
- هزینه
- Retrieval Quality
- Citation Accuracy
- Tool Calls
- User Feedback
Model Routing
COMMAND_A_PLUS = "cohere/command-a-plus-05-2026"
def choose_model(task: dict) -> str:
if task.get("requires_persian_rag"):
return COMMAND_A_PLUS
if task.get("requires_citations"):
return COMMAND_A_PLUS
if task.get("requires_multilingual"):
return COMMAND_A_PLUS
if task.get("requires_vision"):
return COMMAND_A_PLUS
if task.get("requires_tools"):
return COMMAND_A_PLUS
if task.get("type") in {
"enterprise_agent",
"document_analysis",
"translation",
"knowledge_assistant"
}:
return COMMAND_A_PLUS
return "YOUR_LIGHTWEIGHT_MODEL_ID"
کنترل هزینه
- طبقهبندی ساده را به مدل کوچکتر بسپارید.
- فقط Chunkهای مرتبط را وارد Context کنید.
- Reranking را پیش از Generation انجام دهید.
- Context ثابت را Cache کنید.
- خروجی ابزارها را خلاصه کنید.
max_tokensرا متناسب تنظیم کنید.- تعداد Agent Stepها را محدود کنید.
- درخواستهای تکراری را Cache کنید.
- هزینه هر پاسخ موفق را اندازه بگیرید.
- Citationهای بیاستفاده را حذف کنید.
قیمت روز مدل را از صفحه مدلهای درواره بررسی کنید.
Evaluation مدل روی زبان فارسی
Retrieval
- Recall@K
- Precision@K
- MRR
- NDCG
- کیفیت Reranking
Generation
- درستی پاسخ
- کاملبودن
- Faithfulness
- Citation Accuracy
- Citation Completeness
- نرخ Hallucination
فارسی
- کیفیت نگارش
- درک موجودیتها
- حفظ اعداد
- درک نیمفاصله
- ترکیب فارسی و English
- ترجمه اصطلاحات
- پایداری JSON
Agent
- انتخاب ابزار
- آرگومان صحیح
- تعداد Tool Call
- مدیریت خطا
- حفظ هدف
- تشخیص پایان
اشتباهات رایج
استفاده از LLM بهجای موتور جستوجو
مدل باید روی نتایج Retrieval پاسخ بسازد، نه اینکه کل پایگاه دانش را حفظ کند.
اعتماد کامل به Citation
Citation باید از ادعا پشتیبانی کند و صرفاً نام یک سند نباشد.
ارسال اسناد بدون کنترل دسترسی
Retrieval باید پیش از ارسال Context، مجوز کاربر را اعمال کند.
استفاده از خروجی 64K بدون نیاز
خروجی بسیار طولانی هزینه و Latency را افزایش میدهد.
اجرای Tool Call بدون Validation
نام ابزار، آرگومان و مجوز باید بررسی شوند.
قراردادن API Key در Frontend
API Key درواره باید فقط در Backend باشد.
فرض کیفیت یکسان در تمام زبانها
مدل را روی داده واقعی فارسی و انگلیسی ارزیابی کنید.
پرسشهای متداول
Cohere Command A+ چیست؟
Command A+ مدل سازمانی چندزبانه Cohere برای Reasoning، RAG، Vision، Tool Calling، Citations و Structured Output است.
آیا Command A+ از زبان فارسی پشتیبانی میکند؟
بله، فارسی در فهرست رسمی زبانهای پشتیبانیشده مدل قرار دارد.
Context Window مدل چقدر است؟
Command A+ دارای Context Window برابر با 128K Token است.
حداکثر خروجی مدل چقدر است؟
حداکثر خروجی اعلامشده آن تا 64K Token است. محدودیت مسیر فعال API را بررسی کنید.
آیا Command A+ تصویر را تحلیل میکند؟
بله. مدل ورودی متن و تصویر دریافت و خروجی متنی تولید میکند.
آیا برای RAG مناسب است؟
بله. RAG، Citations، Tool Use و کاربردهای سازمانی از قابلیتهای اصلی خانواده Command هستند.
آیا از Function Calling پشتیبانی میکند؟
بله. مدل میتواند Tool Call تولید کند؛ اجرای ابزار توسط Backend انجام میشود.
آیا از Structured Output پشتیبانی میکند؟
بله. بااینحال، خروجی باید با JSON Schema یا مدل داده اعتبارسنجی شود.
Model ID درواره چیست؟
cohere/command-a-plus-05-2026
برای تأیید Model ID فعال به صفحه مدلهای درواره مراجعه کنید.
Base URL درواره چیست؟
https://api.darvareh.ir/v1
آیا با Python قابل استفاده است؟
بله. با SDK سازگار و تنظیم Base URL درواره میتوانید آن را در Python استفاده کنید.
آیا در Node.js کار میکند؟
بله. API درواره را میتوان از JavaScript و TypeScript فراخوانی کرد.
قیمت Command A+ چقدر است؟
برای مشاهده قیمت بهروز به صفحه مدلهای درواره مراجعه کنید.
جمعبندی
Cohere Command A+ مدلی قدرتمند برای شرکتها و توسعهدهندگانی است که به یک مدل چندزبانه برای RAG، Agent، تحلیل تصویر و پردازش اسناد نیاز دارند.
مهمترین ویژگیهای آن عبارتاند از:
- پشتیبانی رسمی از فارسی
- معماری Mixture of Experts
- Context برابر با 128K
- خروجی تا 64K
- Reasoning
- Vision
- Tool Calling
- Structured Output
- Citations
- ترجمه چندزبانه
- مناسب دستیار سازمانی
- مناسب RAG
ارزش اصلی مدل زمانی آشکار میشود که در یک معماری کامل شامل Retrieval، Reranking، Access Control، Citation Validation و Observability استفاده شود.
برای شروع:
- در درواره ثبتنام کنید.
- API Key دریافت کنید.
- مدل را در صفحه مدلها پیدا کنید.
- Model ID فعال را کپی کنید.
- Base URL را روی
https://api.darvareh.ir/v1قرار دهید. - مدل را روی اسناد و پرسشهای واقعی فارسی ارزیابی کنید.
- برای کاهش هزینه از Model Routing استفاده کنید.
- صحت Citation و Structured Output را در Backend بررسی کنید.
مقالات مرتبط
- راهنمای جامع مدلهای هوش مصنوعی و انتخاب مدل مناسب
- RAG چیست؟ راهنمای Retrieval-Augmented Generation
- ساخت RAG با LangChain و LlamaIndex
- Hybrid Search با BM25 و Vector Search
- Reranking و Cross-Encoder در RAG
- Semantic Search چیست؟
- راهنمای Vector Database
- راهنمای Embedding در هوش مصنوعی
- راهنمای Chunking برای RAG
- راهنمای کامل AI Agent
- آموزش Function Calling
- راهنمای Tool Calling
- خروجی ساختاریافته و JSON Schema
- Context Window چیست؟
- ساخت API هوش مصنوعی آماده Production