ژوپیتر لب (Jupyterlab) کدها را زنده میکند! این محیط توسعه فوق پیشرفته، مهارت بینظیری در تجسم، تصویرسازی و در نتیجه زنده کردن دادهها دارد. با محیط تعاملی، پویا و قدرتمند ژوپیتر لب، میتوان کدهای پایتونی را توسعه داد، دادههای پیچیده را تجزیه و تحلیل کرد و در قلمرو علم داده پیش تاخت.
علیرقم این ویژگیها، کار با ژوپیتر لب بسیار آسان است. در این مقاله با تعریف ژوپیترلب، مزایا، معایب، کاربردها، نحوه نصب و طریقه استفاده آنلاین از آن آشنا خواهیم شد. با ابر فردوسی همراه باشید:
فهرست مطالب
- ژوپیتر لب چیست؟
- مزایا ژوپیتر لب چیست؟
- نصب ژوپیتر لب چگونه است؟
- ژوپیتر آنلاین چیست؟
- استفاده از ژوپیتر لب در ابر فردوسی
ژوپیتر لب (Jupyterlab) چیست؟
ژوپیترلب یک محیط توسعه تعاملی مبتنی بر وب، رایگان، منبع باز و استاندارد باز پیشرفته برای اجرای کدهای پایتونی، توسعه هوش مصنوعی و تجزیه و تحلیل دادههای پیچیده است. ژوپیترلب یک رابط کاربری انعطافپذیر و قدرتمند است که به کاربران اجازه میدهد با فرمتهای مختلف، از جمله نوتبوکهای Jupyter، فایلهای متنی، اسکریپتها و فایلهای دادهای، همه در یک رابط کار کنند.
با JupyterLab کاربران میتوانند کد بنویسند و همانجا اجرا کنند، دادهها را تجسمسازی نمایند و اسناد و داشبوردهای تعاملی ایجاد کنند. همچنین ویژگیهایی مانند تکمیل خودکار کد، برجسته سازی نحو، خلاصهسازی کد و پشتیبانی داخلی از زبانهای برنامه نویسی مختلف از جمله پایتون، R، جولیا و غیره را ارائه میدهد.
یکی از مزایای کلیدی ژوپیترلب توسعه پذیری آن است. کاربران میتوانند از طریق پلاگین و افزونهها، عملکرد آن را سفارشیسازی و گسترش دهند. با این برنامههای افزودنی کاربران قادرند ویژگیهای جدید، ادغام با ابزارهای دیگر، پشتیبانی از زبانهای برنامهنویسی مختلف و فرمتهای فایل را اضافه کنند.
مزایا ژوپیتر لب چیست؟
در قسمت قبل با ماهیت و کاربرد ژوپیتر لب آشنا شدیم. اینک به مرور مزایا ژوپیتر لب خواهیم پرداخت. محیط JupyterLab یک ترکیب هوشمندانه از انعطافپذیری یک محیط توسعه (IDE) و امکانات تعاملی یک دفترچه (Notebook) را فراهم میکند. ژوپیترلب نسل بعدی ژوپیتر نوت بوک است و نسبت به آن، محیط همه کاره و توسعه پذیرتری دارد.
اکثر برنامه نویسان پایتون، همواره ژوپیتر نوت بوک را به سایر محیطهای برنامه نویسی ترجیح میدهند. ژوپیتر لب تمام ویژگیهای خوب ژوپیتر نوت بوک را دارد. یعنی نوت بوکها، ترمینالها، مرورگرهای فایل، ویرایشگرهای متن، خروجیهای غنی و… . اما امکان استفاده از ژوپیتر آنلاین، آن را متمایزتر میکند:
1. پشتیبانی از Markdown:
ژوپیترلب از زبان نشانه گذاری Markdown پشتیبانی میکند. این زبان سبک وزن و مشابه زبان انسان است. از مارک داون برای قالب بندی اسناد متنی استفاده می شود.
زبان مارک داون دارای یک نحو ساده است که یادگیری و استفاده از آن را آسان میکند. همچنین نسبت به کدها به تعداد کاراکترهای کمتری نیاز دارد. بنابراین خوانش و نگارش آن سریعتر است.
2. سلول بندی منظم ژوپیترلب :
برای ایجاد نظم بیشتر در محیط ژوپیترلب، هر آیتم دارای سلول مختص به خودش است. این روش گردآوری اطلاعات، منجر به تولید گزارشات زیبا و قابل فهمتر میگردد.
به عنوان مثال هر کد، نتیجه آن کد، معادلات ریاضی، جدول، تصویر، نمودار، ویدئو، لینک، انیمیشن، زبان لاتک، Markdown و… هر کدام در یک سلول مجزا قرار میگیرند.
3. نتیجه در همان صفحه:
در محیط ژوپیتر میتوان نتیجه هر کد را در سلول بعدی دید. یعنی هر کد در همان صفحه ران میشود و بدون نیاز به رفتن به صفحه دیگر، نتیجه در همانجا نمایش مییابد.
این ویژگی باعث میشود که کاربر بتواند دادهها و فرضیههای مختلفی را به آسانی آزمایش و تکرار کند. در واقع ژوپیترلب علاوه بر یک محیط توسعه عالی، مکان خوبی برای آموزش نیز هست.
4. همه چیز زیر یک سقف:
ژوپیتر لب به عنوان نسل پیشرفته Jupyter Notebook، مجهز به یک محیط چند پنجرهای است. در نتیجه امکانات بیشتری به کاربرانش ارائه میدهد و از پس نیازهای بیشتری بر میآید.
پیش از این Jupyter علاوه بر نوت بوکها، از ویرایشگر متن و ترمینال نیز پشتیبانی میکرد. اما از آنجایی که یکپارچه نبودند، حس کار کردن با سه نرمافزار مختلف را داشت و محبوب نبود.
اما به لطف JupyterLab نوت بوک های کلاسیک، ویرایشگر متن، ترمینال و نمایشگر دایرکتوری همگی زیر یک سقف قرار گرفتهاند. این مانع از نیاز به مدیریت ابزارهای پراکنده میشود.
5. محیط ماژولار ژوپیترلب:
میز کار ژوپیتر لب ماژولار است. یعنی کاربران میتوانند با کم و زیاد کردن پنجرههای مختلف و ترکیب کردن آنها با یکدیگر، میز کار محبوب خود را بسازند.
فقط باید بکشند، رها کنند و اندازه برگهها را به هر شکلی که میخواهند تغییر بدهند. اینک میتوانند به راحتی با چندین تب به طور همزمان کار کنند.
در واقع ژوپیتر لب یک IDE است. با این تفاوت که به جای Integrated Development Environment یک Interactive Development Environment میباشد.
6. کنسول های کد:
برای آزمایش یک قطعه کد، از ویژگی کنسول کد استفاده نمایید. این نقش یک گزارش از محاسباتی که در یک نوت بوک انجام دادهاید را ایفا میکند. با کمک این ویژگی میتوان تاریخچه کد را دید.
فقط کافیست در هر نقطه از نوت بوک، راست کلیک کرده و کنسول جدید را برای نوت بوک انتخاب کنید. سپس به کنسول جدید بروید و Show All Kernel Activity را انتخاب کنید.
7. تم ها در همه جا:
JupyterLab یک تم تاریک داخلی برای نوت بوکها ارائه میدهد. چیزی که در هنگام تاریکی شب و در زیر نورهای کم بسیار مفید است. همچنین تمهایی نیز برای ویرایشگر متن و ترمینالها وجود دارند که کار با محیط ژوپیتر لب را بسیار آسان میکند.
8. ابزارهای ژوپیترلب:
در ژوپیترلب امکان کار با ابزارهای کلان داده مانند Apache Spark ، R و اسکالا فراهم است.از طرفی امکان کاوش داده ها با پانداها، scikit-learn، ggplot2 و TensorFlow میسر است.
از ابزارهایی مانند Nbconvert و nbviewer نیز میتوان برای خروجیهای متعدد و مشاهده آنلاین بهره برد. همچنین از ویجتهای تعاملی برای ایجاد رابط تعاملی و پاسخگو استفاده میشود.
سایر ویژگیهای ژوپیترلب:
9. امکان درگ اند دراپ کردن سلولها فراهم است. پیش از این، تنظیم مجدد جایگاه سلولها، فقط از طریق کپی و چسباندن میسر بود.
10. حتی امکان درگ اند دراپ کردن سلولها از یک نوت بوک به یک نوت بوک دیگر نیز فراهم است.
11. اینک ژوپیترلب از فرمتهای فایلی از قبیل jpeg، pdf، CSV، Vega، Vega-Lite، JSON و… نیز پشتیبانی میکند.
12. به جای چاپ مکرر دیتافریم، میتوان چندین نما از یک نوت بوک را در کنار هم مقایسه کرد. این مانع از نوشتن کد اضافی در حین مشاهده اطلاعات میشود.
13. JupyterLab به شما امکان میدهد یک کنسول برای فایل متنی خود ایجاد کنید تا کارکرد آن را تائید نمایید.
14. امکان استفاده از ژوپیتر نوت بوک به جای ژوپیتر لب با جایگزین کردن /lab در URL با /tree فراهم است.
15. هزینه مسئله مهمی است. پروژه ژوپیتر قول داده است که برای همیشه رایگان بماند.
16. همچنین تحت وب بودن ژوپیتر ، باعث عدم وابستگی به فایلها و سیستم عاملهای خانگی میشود.
17. قابلیت اشتراکگذاری از طریق ایمیل، Dropbox، GitHub و Jupyter Notebook Viewer و… فراهم است.
نصب ژوپیتر لب
برای نصب ژوپیتر لب، باید پایتون را روی سیستم خود نصب کنید. در اینجا یک راهنمای کلی در مورد نحوه نصب JupyterLab با استفاده از pip، مدیر بسته Python آورده شده است:
- اگر تا به حال پایتون را نصب نکرده اید، می توانید آن را از وب سایت رسمی پایتون دانلود و نصب کنید:
https://www.python.org/downloads/
- پس از نصب پایتون، یک خط فرمان یا ترمینال را باز کنید و دستور زیر را وارد کنید تا آخرین نسخه JupyterLab و وابستگیهای آن را دانلود و نصب کنید:
pip install jupyterlab
- پس از اتمام نصب، میتوانید JupyterLab را با اجرای دستور زیر در خط فرمان یا ترمینال خود راه اندازی کنید. این دستور ژوپیتر را در مرورگر وب پیش فرض شما باز میکند:
jupyter lab
- هنگامی که JupyterLab در مرورگر وب شما باز شد، میتوانید شروع به ایجاد و اجرای نوت بوکهای Jupyter، نوشتن کد و کار با دادهها کنید.
ژوپیتر آنلاین چیست؟
ژوپیتر لب همانند ژوپیتر نوت بوک محصولی از پروژه عظیم ژوپیتر است. این دو از بسیاری از جهات مشابه یکدیگرند. اما از برتری مشهود ژوپیتر لب نمیتوان چشمپوشی کرد. محیط ژوپیتر لب برای برنامه نویسی حرفهای، اجرای کد پایتون، توسعه هوش مصنوعی و تجزیه و تحلیل دادههای پیچیده آن هم به صورت آنلاین بسیار کامل است.
از مزایا و معایب ژوپیتر لب که بگذریم، به موضوع مهم نحوه استفاده از ژوپیتر آنلاین خواهیم رسید. منظور از ژوپیتر آنلاین، همان ژوپیتر لب است که امکان استفاده از آن در Google Colab، Azure Notebook، Binder، JupyterHub و ابر فردوسی فراهم است.
استفاده از ژوپیتر لب در ابر فردوسی
استفاده از سرویس ژوپیتر لب ابر فردوسی مزایای متعددی دارد که در ادامه به معرفی آنها خواهیم پرداخت:
۱- عدم وجود محدودیت زمانی
2- قیمت مقرون بهصرفه با روش PAY AS YOU GO
3- انتخاب میزان منابع پردازشی از قبیل CPU، RAM، هارد
4- امکان انتخاب نوع کارت گرافیک شامل:
(RTX 2080i (11GB
24GB)RTX 3090
(32GB) Tesla v100s
Tesla a100 (40GB
5- امکان انتخاب کتابخانههای زیر:
Tensor flow
Pytorch
Pure python
برای تست رایگان سرویس ژوپیتر لب ابر فردوسی کلیک نمایید:
چرا اکثر برنامهنویسان پایتون ژوپیتر نوت بوک را به سایر محیطهای برنامهنویسی ترجیح میدهند
سرورهای ابری ویندوزی در مقایسه با سرورهای فیزیکی مزایای زیر را دارند:
هزینه کمتر: کاهش هزینههای سختافزاری و پرداخت فقط برای منابع مورد نیاز.
انعطافپذیری: امکان ارتقا یا کاهش منابع در لحظه.
مدیریت آسانتر: عدم نیاز به مدیریت سختافزار و تأمین امنیت.
دسترسی آسان: امکان دسترسی از هر مکان.
این مزایا سرورهای ابری را گزینهای جذابتر برای کسبوکارها میکند.