Jan AI چیست؟ آموزش نصب، اجرای مدل آفلاین و اتصال به API درواره
Jan یک جایگزین متنباز ChatGPT برای اجرای مدلهای هوش مصنوعی روی کامپیوتر است. در این آموزش، نصب Jan، دانلود مدل، چت آفلاین، API محلی و اتصال مستقیم آن به API درواره را یاد میگیرید.
Jan AI یک اپلیکیشن متنباز برای استفاده از مدلهای هوش مصنوعی روی کامپیوتر شخصی است. با Jan میتوانید مدلهای زبانی را مستقیماً روی ویندوز، مک یا لینوکس اجرا کنید، به ارائهدهندگان ابری متصل شوید یا یک سرویس سازگار با OpenAI مانند API درواره را به برنامه اضافه کنید.
اگر سختافزار مناسبی داشته باشید، Jan میتواند مدلهای محلی را بدون اتصال دائمی به اینترنت اجرا کند. در این حالت، برای هر درخواست هزینه API پرداخت نمیکنید و پردازش روی دستگاه خودتان انجام میشود.
اگر کامپیوتر شما توان اجرای مدلهای بزرگ را نداشته باشد یا به مدلهای متنوعتر و قویتری نیاز داشته باشید، میتوانید Jan را به API درواره متصل کنید. به این ترتیب، رابط دسکتاپ Jan را حفظ میکنید اما پاسخها از مدلهای موجود در درواره دریافت میشوند.
در این مقاله یاد میگیرید:
- Jan AI چیست و چگونه کار میکند.
- چه تفاوتی با ChatGPT، LM Studio و Ollama دارد.
- چگونه Jan را روی کامپیوتر نصب کنید.
- چگونه مدل محلی دانلود و اجرا کنید.
- چگونه Jan را مستقیماً به API درواره متصل کنید.
- چگونه API محلی Jan را در Python و JavaScript فراخوانی کنید.
- چه زمانی مدل محلی و چه زمانی API ابری مناسبتر است.
- چگونه خطاهای رایج Jan را برطرف کنید.
آخرین بررسی فنی: ۱۸ اوت ۲۰۲۶
پاسخ کوتاه: Jan AI چیست؟
Jan یک جایگزین متنباز برای رابطهای چت هوش مصنوعی است که امکان اجرای مدلهای محلی و اتصال به مدلهای ابری را فراهم میکند.
براساس وبسایت رسمی Jan، این برنامه میتواند مدلهای متنباز را روی سیستم کاربر اجرا کند و در عین حال به سرویسهای ابری و APIهای سازگار با OpenAI متصل شود.
Jan خودش یک مدل هوش مصنوعی نیست. این برنامه یک محیط دسکتاپ برای مدیریت گفتگوها، مدلها، دستیارها، پروژهها، ابزارها و APIها محسوب میشود.
سه روش اصلی استفاده از Jan عبارتاند از:
- اجرای یک مدل محلی روی کامپیوتر
- اتصال به یک ارائهدهنده ابری
- اتصال به یک Custom Endpoint مانند API درواره
Jan چگونه کار میکند؟
Jan میان رابط کاربری و مدل هوش مصنوعی قرار میگیرد.
وقتی مدل محلی انتخاب میکنید، مسیر پردازش به این شکل است:
کاربر
↓
رابط Jan
↓
موتور محلی llama.cpp یا MLX
↓
مدل دانلودشده
↓
پاسخ در Jan
وقتی Jan را به API درواره متصل میکنید، مسیر تغییر میکند:
کاربر
↓
رابط Jan
↓
API درواره
↓
مدل انتخابشده
↓
پاسخ در Jan
در هر دو حالت، رابط کاربری Jan یکسان است؛ اما محل پردازش و مدل پاسخدهنده تفاوت دارد.
کاربردهای Jan AI
Jan فقط یک پنجره ساده برای گفتگو نیست. از آن میتوان برای کاربردهای مختلف استفاده کرد.
چت با مدلهای هوش مصنوعی
میتوانید از Jan برای کارهای روزمره استفاده کنید:
- پاسخ به سؤال
- تولید و بازنویسی متن
- خلاصهسازی
- ترجمه
- ایدهپردازی
- نوشتن ایمیل
- تولید توضیحات محصول
- تحلیل متن
- آموزش مفاهیم
- برنامهنویسی
- توضیح کد
- ساخت خروجی ساختاریافته
کیفیت پاسخ به مدلی بستگی دارد که انتخاب کردهاید. نصب Jan بهتنهایی کیفیت مشخصی را تضمین نمیکند.
اجرای هوش مصنوعی آفلاین
Jan از مدلهای محلی GGUF با موتور llama.cpp پشتیبانی میکند. پس از دانلود مدل و اجزای اجرایی، میتوانید بسیاری از درخواستها را بدون اتصال اینترنت پردازش کنید.
طبق راهنمای رسمی موتور محلی Jan، این موتور میتواند مدل را با استفاده از CPU، کارت گرافیک یا تراشههای Apple Silicon اجرا کند.
اتصال به مدلهای ابری
اگر سختافزار کافی ندارید، میتوانید از رابط Jan برای دسترسی به مدلهای ابری استفاده کنید. در این روش، Jan پیام را به API ارائهدهنده ارسال میکند و پاسخ را نمایش میدهد.
برای کاربران ایران، اتصال به API درواره مزایایی مانند پرداخت ریالی، استفاده از یک API Key و دسترسی به مدلهای مختلف بدون ساخت حساب جداگانه نزد چند ارائهدهنده دارد.
ساخت دستیار اختصاصی
در Jan میتوانید دستیارهایی با دستورهای متفاوت بسازید. برای مثال:
- دستیار تولید محتوای فارسی
- دستیار برنامهنویسی
- دستیار پاسخگویی به مشتری
- مترجم تخصصی
- خلاصهساز اسناد
- دستیار نوشتن توضیحات محصول
- تحلیلگر بازخورد مشتریان
برای هر دستیار میتوان دستور سیستمی، مدل و تنظیمات جداگانه در نظر گرفت.
استفاده از Project
Project برای گروهبندی گفتگوها، فایلها و دستورهای مرتبط کاربرد دارد. برای مثال، میتوانید تمام گفتگوها و منابع مربوط به یک محصول، پروژه برنامهنویسی یا کمپین محتوایی را در یک Project نگهداری کنید.
اتصال ابزارها با MCP
Jan از Model Context Protocol پشتیبانی میکند. MCP میتواند مدل را به ابزارها و منابع بیرونی متصل کند.
عملکرد MCP به توانایی مدل در Tool Calling و تنظیمات سرور وابسته است. سرورهای ناشناس MCP ممکن است به فایل، شبکه یا اطلاعات دستگاه دسترسی پیدا کنند؛ بنابراین فقط ابزارهای معتبر و ضروری را فعال کنید.
ارائه API محلی
Jan میتواند مدل محلی را از طریق یک API سازگار با OpenAI در اختیار برنامههای دیگر قرار دهد. این قابلیت برای توسعهدهندگان، ابزارهای کدنویسی و نمونهسازی اپلیکیشنهای هوش مصنوعی مفید است.
آدرس پیشفرض API محلی Jan در مستندات رسمی:
http://127.0.0.1:1337/v1
تفاوت Jan با ChatGPT
ChatGPT یک محصول آماده ابری است، درحالیکه Jan یک رابط متنباز برای اجرای مدل محلی یا اتصال به APIهای مختلف محسوب میشود.
| ویژگی | Jan AI | ChatGPT |
|---|---|---|
| اجرای مدل روی کامپیوتر | بله | خیر |
| استفاده آفلاین | با مدل محلی | معمولاً خیر |
| انتخاب فایل مدل | بله | خیر |
| اتصال به API دلخواه | بله | محدود |
| متنباز بودن برنامه | بله | خیر |
| نیاز به سختافزار برای مدل محلی | بله | خیر |
| API محلی | بله | خیر |
| کیفیت پاسخ | وابسته به مدل | وابسته به مدل و پلن |
| نگهداری مدل | بر عهده کاربر | بر عهده سرویسدهنده |
| امکان اتصال به درواره | بله | خیر |
Jan میتواند تجربهای شبیه چتباتهای آنلاین ایجاد کند، اما یک مدل محلی کوچک الزاماً کیفیت مدلهای بزرگ ابری را ارائه نمیدهد.
تفاوت Jan و LM Studio
Jan و LM Studio هر دو امکان اجرای مدلهای محلی و استفاده از API را فراهم میکنند، اما تمرکز آنها دقیقاً یکسان نیست.
| معیار | Jan | LM Studio |
|---|---|---|
| متنباز | بله | خود برنامه کاملاً متنباز نیست |
| رابط چت | دارد | دارد |
| اجرای مدل GGUF | دارد | دارد |
| پشتیبانی از MLX | دارد، با محدودیتهای اعلامشده | دارد |
| اتصال Custom Endpoint | دارد | تمرکز اصلی بیشتر روی اجرای مدل محلی است |
| API محلی سازگار با OpenAI | دارد | دارد |
| Project و Assistant | دارد | امکانات مشابه با ساختار متفاوت |
| MCP | دارد | دارد |
| مناسب برای اتصال به درواره | بسیار مناسب | بیشتر برای توسعه محلی |
| ابزار خط فرمان | Jan CLI | LMS CLI |
اگر هدف اصلی شما اجرای مدل و آزمایش دقیق تنظیمات است، هر دو برنامه قابل بررسیاند. اگر میخواهید در یک رابط متنباز میان مدل محلی و API درواره جابهجا شوید، Jan مسیر مستقیم و سادهای ارائه میدهد.
تفاوت Jan و Ollama
Ollama بیشتر بر اجرای مدل از طریق خط فرمان و API تمرکز دارد، درحالیکه Jan یک رابط گرافیکی کامل ارائه میدهد.
| معیار | Jan | Ollama |
|---|---|---|
| رابط گرافیکی داخلی | دارد | محدود |
| نصب و دانلود بصری مدل | دارد | بیشتر با دستور |
| API محلی | دارد | دارد |
| مناسب کاربران تازهکار | بیشتر | متوسط |
| مناسب سرور و اتوماسیون | متوسط | بسیار مناسب |
| مدیریت گفتگو | داخلی | معمولاً با رابط مکمل |
| اتصال به API ابری | داخلی | هدف اصلی نیست |
اگر رابط گرافیکی میخواهید، Jan انتخاب سادهتری است. اگر قصد اجرای مدل روی سرور، Docker یا محیط خط فرمان را دارید، آموزش Ollama را مطالعه کنید.
آیا Jan در ایران قابل استفاده است؟
Jan برای اجرا روی کامپیوتر شخصی طراحی شده است و استفاده از مدلهای محلی به پرداخت خارجی یا اشتراک ماهانه وابسته نیست. نسخههای ویندوز، macOS و Linux از صفحه رسمی دانلود Jan ارائه میشوند.
پس از دانلود برنامه و مدل، اجرای محلی میتواند بدون اتصال دائمی به سرویس خارجی انجام شود.
بااینحال، دسترسی به سایت رسمی، GitHub، Hugging Face یا دانلود درونبرنامهای مدل ممکن است بسته به شرایط شبکه تغییر کند. اگر دانلود مدل از Hub انجام نشد، میتوانید فایل GGUF سازگار را از یک منبع معتبر دریافت و در Jan وارد کنید.
برای استفاده از مدلهای ابری نیز میتوانید بهجای ساخت حساب و پرداخت مستقیم به ارائهدهندگان مختلف، Jan را به API درواره متصل کنید.
دانلود و نصب Jan AI
دانلود Jan
وارد صفحه رسمی دانلود شوید و نسخه مناسب سیستمعامل خود را انتخاب کنید.
نسخههای رسمی برای این سیستمها ارائه میشوند:
- Windows 64-bit
- macOS
- Linux AppImage
- Linux DEB
- Linux Flatpak
از دانلود برنامه از منابع ناشناس خودداری کنید. نسخههای غیررسمی ممکن است قدیمی یا دستکاریشده باشند.
نصب Jan در ویندوز
- فایل نصب ویندوز را دانلود کنید.
- Installer را اجرا کنید.
- مراحل نصب را کامل کنید.
- Jan را باز کنید.
- اجازه دهید مدل و اجزای اولیه موردنیاز آماده شوند.
اگر Windows Defender هشدار نمایش داد، مطمئن شوید فایل را از دامنه رسمی Jan دریافت کردهاید و Publisher و امضای فایل را بررسی کنید.
نصب Jan در مک
Jan بهصورت بومی روی Apple Silicon اجرا میشود. طبق مستندات رسمی نصب مک، مکهای Intel پشتیبانی نمیشوند و macOS 13.6 یا جدیدتر موردنیاز است.
مراحل نصب:
- فایل DMG را دانلود کنید.
- فایل را باز کنید.
- آیکون Jan را به پوشه Applications منتقل کنید.
- برنامه را اجرا کنید.
راهنمای تقریبی رسمی برای حافظه دستگاه:
- ۸ گیگابایت: مدلهای حدود ۳ میلیارد پارامتر
- ۱۶ گیگابایت: مدلهای حدود ۷ میلیارد پارامتر
- مدلهای بزرگتر: وابسته به Quantization، Context و حافظه آزاد
این اعداد قطعی نیستند و مصرف واقعی مدلها متفاوت است.
نصب Jan در لینوکس
برای لینوکس میتوانید از یکی از قالبهای AppImage، DEB یا Flatpak استفاده کنید.
در توزیعهای مبتنی بر Debian یا Ubuntu، فایل DEB معمولاً انتخاب آشناتری است. AppImage نیز بدون نصب سنتی اجرا میشود، اما باید مجوز اجرا داشته باشد.
نمونه فعالکردن مجوز AppImage:
chmod +x jan-linux.AppImage
./jan-linux.AppImage
نام واقعی فایل دانلودشده را جایگزین کنید.
اجرای اولین مدل محلی در Jan
طبق راهنمای شروع سریع Jan، برنامه در اولین اجرا میتواند مدل پیشفرض خود را آماده کند. همچنین میتوانید مدلهای بیشتری را از بخش Hub دریافت کنید.
مرحله اول: ورود به Hub
از نوار کناری وارد Hub شوید. در این بخش میتوانید مدلهای محلی موجود را مشاهده و جستوجو کنید.
مرحله دوم: انتخاب مدل متناسب با سختافزار
هنگام انتخاب مدل به این موارد توجه کنید:
- اندازه فایل
- مقدار RAM موردنیاز
- مقدار VRAM
- تعداد پارامترها
- Quantization
- Context Length
- پشتیبانی از زبان فارسی
- قابلیت Vision
- قابلیت Tool Calling
- مجوز استفاده تجاری
بزرگترین مدل لزوماً بهترین انتخاب برای سیستم شما نیست. اگر مدل با کمبود حافظه اجرا شود، ممکن است برنامه بسیار کند یا ناپایدار شود.
مرحله سوم: دانلود مدل
روی Download کلیک و تا پایان دریافت مدل صبر کنید. فایل بعضی مدلها چند گیگابایت حجم دارد؛ بنابراین فضای کافی روی SSD در نظر بگیرید.
مرحله چهارم: انتخاب مدل در Chat
پس از دانلود:
- یک گفتگوی جدید بسازید.
- Model Selector را باز کنید.
- مدل محلی را انتخاب کنید.
- یک پیام آزمایشی ارسال کنید.
پرامپت مناسب برای آزمایش فارسی:
در نقش یک ویراستار حرفهای فارسی عمل کن.
متن زیر را روان و رسمی بازنویسی کن:
«شرکت ما میخواهد با استفاده از هوش مصنوعی، پاسخگویی به مشتریان را سریعتر و دقیقتر کند.»
قواعد:
- مفهوم اصلی تغییر نکند.
- از جملههای ترجمهای استفاده نکن.
- پاسخ فقط شامل متن بازنویسیشده باشد.
همین پرامپت را روی چند مدل اجرا و کیفیت پاسخها را مقایسه کنید.
انتخاب مدل مناسب برای Jan
مدل کوچک برای سیستم ضعیف
اگر حافظه محدودی دارید، از مدلهای کوچک با Quantization سبک استفاده کنید. این مدلها برای کارهایی مانند موارد زیر مناسبترند:
- دستهبندی متن
- بازنویسی کوتاه
- استخراج کلیدواژه
- پاسخ به سؤال ساده
- آزمایش API
- تکمیل متن کوتاه
مدل متوسط برای استفاده عمومی
مدلهای متوسط معمولاً تعادل بهتری میان کیفیت، سرعت و مصرف حافظه ایجاد میکنند. برای چت فارسی، برنامهنویسی سبک و تولید محتوا میتوانند انتخاب مناسبی باشند.
مدل ابری برای وظایف پیچیده
برای مسائل پیچیده، Context طولانی، تحلیل چندمرحلهای یا کیفیت بالاتر میتوانید از API درواره استفاده کنید. در این حالت، محدودیت اصلی سختافزار دستگاه شما حذف میشود.
واردکردن مدل GGUF در Jan
اگر مدل را خارج از Jan دانلود کردهاید، امکان Import فایل GGUF وجود دارد.
طبق راهنمای رسمی مدیریت مدلها، مسیر واردکردن مدل از تنظیمات llama.cpp در دسترس است.
مراحل کلی:
- وارد Settings شوید.
- بخش Llama.cpp را باز کنید.
- در قسمت Models روی Import کلیک کنید.
- فایل GGUF را انتخاب کنید.
- مدل را Load و آزمایش کنید.
Jan میتواند فایل را از محل فعلی آن به برنامه معرفی کند. بنابراین پیش از جابهجایی یا حذف فایل اصلی، محل نگهداری مدل را بررسی کنید.
اتصال Jan AI به API درواره
مهمترین مزیت Jan برای کاربران درواره، پشتیبانی رسمی از Custom Endpointهای سازگار با OpenAI است.
براساس مستندات Custom Endpoints در Jan، میتوانید هر Provider سازگار با OpenAI را با Base URL، API Key و Model ID به برنامه اضافه کنید.
پیشنیازها
برای اتصال به درواره به این موارد نیاز دارید:
- حساب کاربری درواره
- موجودی کافی در کیف پول
- API Key فعال
- Base URL درواره
- شناسه دقیق مدل
Base URL:
https://api.darvareh.ir/v1
مرحله اول: ساخت API Key
وارد درواره شوید و از بخش کلیدهای API، یک کلید جدید بسازید.
کلید را فقط هنگام ایجاد در محل امن ذخیره کنید. آن را در پیامرسان، تصویر، Repository عمومی یا فایل قابل انتشار قرار ندهید.
مرحله دوم: بازکردن تنظیمات Provider
در Jan:
- وارد Settings شوید.
- بخش Model Providers را باز کنید.
- روی Add Provider کلیک کنید.
- نوع API را روی OpenAI-compatible قرار دهید.
مرحله سوم: واردکردن اطلاعات درواره
مقادیر زیر را وارد کنید:
Provider Name: Darvareh
Base URL: https://api.darvareh.ir/v1
API Key: YOUR_DARVAREH_API_KEY
در پایان روی Create کلیک کنید.
وجود /v1 در انتهای Base URL ضروری است. حذف آن میتواند باعث خطای 404 شود.
مرحله چهارم: دریافت مدلها
Jan تلاش میکند فهرست مدلها را از آدرس زیر دریافت کند:
https://api.darvareh.ir/v1/models
اگر مدلها بهصورت خودکار نمایش داده نشدند، میتوانید Model ID را دستی اضافه کنید.
برای مشاهده فهرست مدلها با cURL:
curl https://api.darvareh.ir/v1/models \
-H "Authorization: Bearer YOUR_DARVAREH_API_KEY"
شناسه مدل را دقیقاً از مقدار id بردارید. نام نمایشی مدل ممکن است با شناسه قابل استفاده در API متفاوت باشد.
مرحله پنجم: انتخاب مدل
- یک Chat جدید بسازید.
- Model Selector را باز کنید.
- Provider درواره را انتخاب کنید.
- یکی از مدلهای اضافهشده را انتخاب کنید.
- یک پیام آزمایشی بفرستید.
پرامپت آزمایشی:
در سه بند کوتاه توضیح بده API هوش مصنوعی چگونه به یک فروشگاه اینترنتی کمک میکند.
پاسخ فارسی، کاربردی و بدون اصطلاحات غیرضروری باشد.
اگر پاسخ دریافت شد، اتصال Jan به درواره با موفقیت انجام شده است.
چرا Jan را به API درواره متصل کنیم؟
استفاده از چند مدل در یک رابط
برای آزمایش مدلهای مختلف نیازی به نصب چند اپلیکیشن یا ساخت حساب نزد چند ارائهدهنده ندارید. در Jan میتوانید از یک رابط ثابت استفاده و مدل را تغییر دهید.
پرداخت ریالی
مصرف API از کیف پول ریالی درواره کسر میشود و نیازی به پرداخت مستقیم ارزی به ارائهدهنده خارجی ندارید.
حذف محدودیت سختافزار محلی
مدلهای بزرگ ممکن است روی لپتاپ یا کامپیوتر معمولی اجرا نشوند. اتصال به API اجازه میدهد بدون خرید GPU قدرتمند از آنها استفاده کنید.
استفاده مصرفمحور
در اجرای محلی هزینه مستقیم هر درخواست ندارید، اما هزینه سختافزار، برق، فضای ذخیرهسازی و نگهداری وجود دارد. استفاده از API برای مصرف محدود یا متغیر میتواند اقتصادیتر باشد.
تغییر آسان مدل
در بسیاری از کاربردها میتوانید بدون تغییر رابط کاربری، مدل دیگری را در Jan انتخاب و نتیجه را مقایسه کنید.
آزمایش پیش از توسعه محصول
Jan میتواند نقش یک Playground دسکتاپ را داشته باشد. ابتدا Prompt و مدل را در Jan آزمایش میکنید و پس از رسیدن به نتیجه مطلوب، همان مدل را از طریق API در نرمافزار خود به کار میبرید.
مدل محلی یا API درواره؟
| نیاز | انتخاب مناسبتر |
|---|---|
| کار کاملاً آفلاین | مدل محلی Jan |
| حذف هزینه مصرف API | مدل محلی Jan |
| سختافزار ضعیف | API درواره |
| مدلهای بزرگ و متنوع | API درواره |
| آزمایش روی اطلاعات محلی | مدل محلی Jan |
| پاسخگویی به کاربران متعدد | API درواره |
| پرداخت ریالی | API درواره |
| نمونهسازی اولیه | هر دو |
| کنترل فایل مدل | مدل محلی Jan |
| نگهداری سادهتر | API درواره |
| تغییر سریع میان مدلها | API درواره |
| استفاده شخصی محدود | مدل محلی Jan |
یک معماری ترکیبی نیز امکانپذیر است: کارهای ساده با مدل محلی انجام شوند و درخواستهای پیچیدهتر به API درواره ارسال شوند.
راهاندازی API محلی Jan
Jan میتواند مدل محلی را روی یک سرور سازگار با OpenAI ارائه کند.
طبق مستندات Local API Server، مراحل فعالسازی به این شکل است:
- وارد Settings شوید.
- بخش Local API Server را باز کنید.
- روی Start Server کلیک کنید.
- لاگ را بررسی کنید.
آدرس پیشفرض:
http://127.0.0.1:1337
Base URL سازگار با OpenAI:
http://127.0.0.1:1337/v1
دریافت فهرست مدلهای محلی
curl http://127.0.0.1:1337/v1/models \
-H "Authorization: Bearer YOUR_LOCAL_API_KEY"
ارسال درخواست Chat Completions
curl http://127.0.0.1:1337/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_LOCAL_API_KEY" \
-d '{
"model": "YOUR_LOCAL_MODEL_ID",
"messages": [
{
"role": "user",
"content": "یک متن کوتاه فارسی درباره کاربرد هوش مصنوعی بنویس."
}
],
"stream": false
}'
در زمان نگارش این مقاله، مستندات Jan پشتیبانی از Chat Completions، Streaming، مکالمات چندمرحلهای و Tool Calling را برای API محلی اعلام میکنند.
اتصال Python به API محلی Jan
ابتدا کتابخانه OpenAI را نصب کنید:
pip install openai
نمونه کد:
from openai import OpenAI
client = OpenAI(
base_url="http://127.0.0.1:1337/v1",
api_key="YOUR_LOCAL_API_KEY"
)
response = client.chat.completions.create(
model="YOUR_LOCAL_MODEL_ID",
messages=[
{
"role": "system",
"content": "شما یک دستیار فارسی دقیق و مختصر هستید."
},
{
"role": "user",
"content": "سه کاربرد عملی هوش مصنوعی برای فروشگاه آنلاین را بنویس."
}
],
temperature=0.3
)
print(response.choices[0].message.content)
اتصال JavaScript به API محلی Jan
ابتدا SDK را نصب کنید:
npm install openai
سپس:
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "http://127.0.0.1:1337/v1",
apiKey: "YOUR_LOCAL_API_KEY",
});
const response = await client.chat.completions.create({
model: "YOUR_LOCAL_MODEL_ID",
messages: [
{
role: "system",
content: "پاسخ را به فارسی روان بنویس.",
},
{
role: "user",
content: "یک توضیح کوتاه برای معرفی یک محصول دیجیتال بنویس.",
},
],
temperature: 0.4,
});
console.log(response.choices[0].message.content);
جابهجایی میان Jan محلی و API درواره
اگر تنظیمات اتصال را از متغیرهای محیطی دریافت کنید، میتوانید بدون بازنویسی منطق اصلی برنامه میان مدل محلی و درواره جابهجا شوید.
نمونه Python:
import os
from openai import OpenAI
client = OpenAI(
base_url=os.environ["AI_BASE_URL"],
api_key=os.environ["AI_API_KEY"]
)
response = client.chat.completions.create(
model=os.environ["AI_MODEL"],
messages=[
{
"role": "system",
"content": "شما یک دستیار فارسی دقیق هستید."
},
{
"role": "user",
"content": "این بازخورد مشتری را خلاصه و دستهبندی کن."
}
]
)
print(response.choices[0].message.content)
برای Jan محلی:
AI_BASE_URL=http://127.0.0.1:1337/v1
AI_API_KEY=YOUR_LOCAL_API_KEY
AI_MODEL=YOUR_LOCAL_MODEL_ID
برای درواره:
AI_BASE_URL=https://api.darvareh.ir/v1
AI_API_KEY=YOUR_DARVAREH_API_KEY
AI_MODEL=YOUR_DARVAREH_MODEL_ID
این ساختار وابستگی برنامه به یک مدل یا ارائهدهنده خاص را کاهش میدهد.
آیا گفتگوها در Jan خصوصی هستند؟
براساس توضیحات رسمی حریم خصوصی Jan، گفتگوها، فایلها، Promptها و مدلهای انتخابی توسط Jan رصد نمیشوند. فعالسازی آمار استفاده نیز به انتخاب کاربر وابسته است.
بااینحال، باید میان مدل محلی و مدل ابری تفاوت قائل شوید.
در حالت مدل محلی
پردازش روی دستگاه انجام میشود و محتوای گفتگو برای پاسخگویی به Provider ابری ارسال نمیشود.
در حالت مدل ابری
پیام باید برای پردازش به Provider انتخابشده ارسال شود. وقتی Jan به API درواره متصل است، درخواست از طریق درواره به مدل مربوط هدایت میشود.
بنابراین، پیش از ارسال اطلاعات محرمانه یا سازمانی، سیاست داده، نوع مدل، Provider، تنظیمات Log و الزامات داخلی مجموعه را بررسی کنید.
خطاهای رایج اتصال Jan به درواره
خطای 404
دلایل معمول:
/v1از Base URL حذف شده است.- Endpoint اشتباه وارد شده است.
- آدرس دارای کاراکتر اضافه است.
Base URL صحیح:
https://api.darvareh.ir/v1
خطای 401
این خطا معمولاً به API Key مربوط است.
بررسی کنید:
- کلید کامل کپی شده باشد.
- ابتدا یا انتهای کلید فاصله نباشد.
- کلید حذف یا غیرفعال نشده باشد.
- Provider صحیح انتخاب شده باشد.
مدل نمایش داده نمیشود
ابتدا Endpoint مدلها را آزمایش کنید:
curl https://api.darvareh.ir/v1/models \
-H "Authorization: Bearer YOUR_DARVAREH_API_KEY"
اگر مدل موردنظر در پاسخ وجود دارد اما در Jan دیده نمیشود، آن را با شناسه دقیق بهصورت دستی اضافه کنید.
خطای Model Not Found
نام نمایشی مدل را بهجای Model ID وارد کردهاید یا مدل دیگر فعال نیست. شناسه را از پاسخ /models دریافت کنید.
پاسخ دریافت نمیشود
موارد زیر را بررسی کنید:
- موجودی کیف پول
- فعالبودن API Key
- صحیحبودن Model ID
- اتصال اینترنت
- Timeout
- لاگهای Jan
- وضعیت مدل انتخابشده
پاسخ فارسی کیفیت مناسبی ندارد
- مدل دیگری انتخاب کنید.
- دستور سیستمی دقیقتری بنویسید.
- نمونه خروجی مطلوب ارائه دهید.
- Temperature را کاهش دهید.
- متن ورودی را پاکسازی کنید.
- یک مجموعه آزمون ثابت برای مقایسه مدلها بسازید.
خطاهای رایج مدل محلی Jan
مدل اجرا نمیشود
دلایل احتمالی:
- RAM کافی نیست.
- VRAM کافی نیست.
- Context بیشازحد بزرگ است.
- فایل مدل ناقص است.
- معماری مدل با Runtime سازگار نیست.
- Quantization سنگین انتخاب شده است.
راهحل:
- مدل کوچکتری دانلود کنید.
- نسخه Q4 را آزمایش کنید.
- Context را کاهش دهید.
- Runtime را بهروزرسانی کنید.
- برنامههای پرمصرف را ببندید.
سرعت پاسخ پایین است
- مدل را کوچکتر کنید.
- GPU Acceleration را بررسی کنید.
- Context Length را کاهش دهید.
- Quantization سبکتری انتخاب کنید.
- برای وظایف پیچیده از API درواره استفاده کنید.
دانلود مدل کامل نمیشود
- فضای ذخیرهسازی را بررسی کنید.
- اتصال اینترنت را کنترل کنید.
- برنامه را دوباره باز کنید.
- فایل GGUF را دستی دریافت و Import کنید.
- مدل را از ناشر یا مخزن معتبر بگیرید.
پاسخ مدل تکراری یا بیکیفیت است
- مدل Instruct را انتخاب کنید.
- Prompt Template صحیح را بررسی کنید.
- Repetition Penalty را کمی تنظیم کنید.
- Temperature را تغییر دهید.
- از مدل مناسبتری برای وظیفه استفاده کنید.
نکات مهم انتخاب مدل برای زبان فارسی
کیفیت فارسی را فقط از روی نام یا رتبه عمومی مدل قضاوت نکنید. مدل را با داده واقعی خودتان آزمایش کنید.
یک مجموعه آزمون کوچک شامل این موارد بسازید:
- بازنویسی متن فارسی
- خلاصهسازی
- پاسخ به سؤال
- رعایت نیمفاصله
- استخراج داده
- تولید JSON
- ترجمه
- تحلیل نظر مشتری
- نوشتن متن رسمی
- برنامهنویسی با توضیح فارسی
سپس پاسخها را براساس معیارهای زیر ارزیابی کنید:
- صحت
- روانی
- رعایت دستور
- کاملبودن
- نبود اطلاعات ساختگی
- ساختار خروجی
- سرعت
- هزینه API
- ثبات در چند اجرای متوالی
محدودیتهای Jan AI
کیفیت وابسته به مدل است
Jan فقط محیط اجراست. کیفیت واقعی را مدل محلی یا ابری تعیین میکند.
اجرای محلی به سختافزار نیاز دارد
مدلهای بزرگ به RAM، VRAM و فضای ذخیرهسازی قابلتوجه نیاز دارند.
مدل محلی همیشه رایگان نیست
اگرچه هزینه مصرف API ندارید، هزینه سختافزار، برق، نگهداری و زمان مدیریت مدل همچنان وجود دارد.
قابلیت مدلها یکسان نیست
همه مدلها از Vision، Tool Calling، Embedding، فایل یا Context طولانی پشتیبانی نمیکنند.
استفاده تجاری به مجوز مدل وابسته است
متنبازبودن Jan به معنی آزادبودن تمام مدلها برای هر نوع استفاده نیست. مجوز مدل را جداگانه بررسی کنید.
API محلی برای انتشار عمومی آماده نیست
قرارگرفتن API محلی Jan روی اینترنت بدون احراز هویت، محدودسازی شبکه، Rate Limit و پایش مناسب میتواند خطرناک باشد. API محلی را بهصورت پیشفرض فقط روی 127.0.0.1 نگه دارید.
چه زمانی Jan انتخاب مناسبی است؟
Jan برای این گروهها مناسب است:
- کاربران علاقهمند به هوش مصنوعی آفلاین
- توسعهدهندگان
- دانشجویان و پژوهشگران
- تولیدکنندگان محتوا
- برنامهنویسانی که API سازگار با OpenAI میخواهند
- کاربرانی که میخواهند مدل محلی و ابری را در یک برنامه داشته باشند
- تیمهایی که میخواهند چند مدل را پیش از توسعه محصول مقایسه کنند
- کاربران ایرانی که به یک رابط دسکتاپ متصل به API درواره نیاز دارند
Jan ممکن است برای این شرایط مناسب نباشد:
- سیستم دارای حافظه بسیار محدود
- نیاز به پاسخگویی همزمان به کاربران زیاد
- اجرای Production بدون زیرساخت مستقل
- نیاز به مدلهای بزرگ روی سختافزار ضعیف
- کاربری که نمیخواهد مدل یا تنظیمات را مدیریت کند
جمعبندی
Jan AI یک اپلیکیشن متنباز برای اجرای مدلهای محلی و اتصال به APIهای هوش مصنوعی است. با آن میتوانید یک دستیار آفلاین روی کامپیوتر داشته باشید، مدلهای GGUF را اجرا کنید، Project و Assistant بسازید و API محلی سازگار با OpenAI در اختیار برنامهها قرار دهید.
مزیت مهم Jan برای کاربران ایران، پشتیبانی از Custom Endpoint است. با واردکردن Base URL و API Key درواره میتوانید از رابط Jan برای دسترسی به مدلهای مختلف استفاده کنید؛ بدون نیاز به ساخت حساب جداگانه نزد چند ارائهدهنده یا پرداخت مستقیم ارزی.
اگر سختافزار مناسبی دارید و اجرای آفلاین برایتان مهم است، مدل محلی Jan را آزمایش کنید. اگر به مدلهای بزرگتر، کیفیت بالاتر، مدیریت سادهتر یا استفاده در محصول واقعی نیاز دارید، Jan را به API درواره متصل کنید.
برای ساخت کلید API و مشاهده مدلهای قابل استفاده، وارد درواره شوید.
پرسشهای متداول
Jan AI چیست؟
Jan یک اپلیکیشن متنباز برای اجرای مدلهای هوش مصنوعی محلی و اتصال به APIهای ابری است. این برنامه روی ویندوز، macOS و Linux اجرا میشود.
آیا Jan بدون اینترنت کار میکند؟
پس از دانلود مدل و اجزای موردنیاز، مدلهای محلی میتوانند بدون اینترنت اجرا شوند. قابلیتهای ابری و جستوجوی وب به اتصال اینترنت نیاز دارند.
آیا Jan رایگان است؟
خود Jan متنباز است و اجرای مدل محلی هزینه مصرف API ندارد. هزینه سختافزار، برق و فضای ذخیرهسازی همچنان وجود دارد. استفاده از مدلهای ابری نیز براساس تعرفه Provider محاسبه میشود.
آیا Jan جایگزین ChatGPT است؟
Jan میتواند رابطی مشابه برای مدلهای محلی و ابری فراهم کند، اما کیفیت پاسخ به مدل انتخابشده بستگی دارد. یک مدل کوچک محلی لزوماً جایگزین کامل مدلهای پیشرفته ابری نیست.
آیا Jan از زبان فارسی پشتیبانی میکند؟
Jan محدودیت مستقلی برای فارسی ندارد؛ توانایی پاسخگویی فارسی به مدل انتخابشده وابسته است. مدلها را با پرامپتهای واقعی فارسی آزمایش کنید.
چه مقدار RAM برای Jan لازم است؟
مقدار حافظه به مدل، Quantization و Context بستگی دارد. مدلهای کوچک روی حافظه کمتر اجرا میشوند و مدلهای بزرگ به RAM یا VRAM بیشتری نیاز دارند.
آیا میتوان Jan را به API درواره متصل کرد؟
بله. در Settings و بخش Model Providers یک Custom Endpoint سازگار با OpenAI بسازید و Base URL را روی https://api.darvareh.ir/v1 قرار دهید.
چرا مدلهای درواره در Jan نمایش داده نمیشوند؟
ممکن است دریافت خودکار فهرست مدلها انجام نشده باشد. Model ID را از Endpoint /models دریافت و بهصورت دستی به Provider اضافه کنید.
تفاوت Jan محلی با API درواره چیست؟
در حالت محلی، مدل روی سختافزار شما اجرا میشود. در حالت درواره، پردازش روی زیرساخت Provider انجام میشود و Jan نقش رابط کاربری را دارد.
آیا میتوان از API محلی Jan در Python استفاده کرد؟
بله. Jan یک Endpoint سازگار با OpenAI روی http://127.0.0.1:1337/v1 ارائه میدهد که با SDKهای رایج قابل استفاده است.
اطلاعات گفتگو در حالت محلی کجا ذخیره میشود؟
Jan دادههای برنامه را در پوشه محلی خود نگهداری میکند. محل پوشه از Settings قابل مشاهده و تغییر است.
مقالات مرتبط
- آموزش اتصال API درواره به اپلیکیشنهای دسکتاپ هوش مصنوعی
- Ollama چیست؟ آموزش اجرای مدلهای هوش مصنوعی محلی
- Open WebUI چیست؟ آموزش نصب و اتصال به مدلهای هوش مصنوعی
- LobeHub چیست؟ آموزش نصب و اتصال به API درواره
- API هوش مصنوعی چیست؟
- OpenAI-compatible API چیست؟
این مقاله صرفاً با هدف آموزش و اطلاعرسانی تهیه شده است. پیش از استفاده عملی، مستندات رسمی سرویسها و صفحه سلب مسئولیت را مطالعه کنید.