جوایز Bossie 2023 InfoWorld از ابزارهای منبع باز پیشرو در سال برای توسعه نرم افزار، مدیریت داده، تجزیه و تحلیل، هوش مصنوعی و یادگیری ماشینی تقدیر می کند.
وقتی برگها میریزند، آسمان خاکستری میشود، سرما شروع به گاز گرفتن میکند، و همه ما مشتاق کمی آفتاب هستیم، میدانید که زمان جایزه بهترین نرمافزار منبع باز InfoWorld فرا رسیده است، آیین پاییزی که ما با محبت به آن میگوییم رئیسان اکنون ۱۷ سال است که Bossies بهترین و خلاقانه ترین نرم افزار منبع باز را جشن می گیرند.
مانند سالهای گذشته، انتخابهای برتر ما برای سال ۲۰۲۳ شامل ترکیبی شگفتانگیز از فناوریها است. در میان ۲۵ برنده، زبانهای برنامهنویسی، زمان اجرا، چارچوبهای برنامه، پایگاههای داده، موتورهای تجزیه و تحلیل، کتابخانههای یادگیری ماشین، مدلهای زبان بزرگ (LLM)، ابزارهایی برای استقرار LLM و حداقل یک یا دو پروژه را خواهید یافت که از چنین توصیفهای ساده پیشی میگیرند.
اگر مشکل مهمی در نرم افزار وجود دارد که باید حل شود، می توانید شرط ببندید که یک پروژه منبع باز برای حل آن ظاهر می شود. برای آشنایی با روسای ۲۰۲۳ ما، ادامه مطلب را بخوانید.
Apache Hudi
هنگام ساختن یک دریاچه داده یا دریاچه داده باز، بسیاری از صنایع به یک پلتفرم تکامل پذیرتر و قابل تغییر نیاز دارند. از پلتفرمهای تبلیغاتی برای ناشران، تبلیغکنندگان و خریداران رسانه استفاده کنید. تجزیه و تحلیل سریع کافی نیست. Apache Hudi نه تنها فرمت داده، جداول و SQL سریع ارائه می دهد، بلکه آنها را برای تأخیر کم نیز فعال می کند. ، تجزیه و تحلیل بلادرنگ. با Apache Spark، Apache Flink و ابزارهایی مانند Presto، StarRocks (به پایین مراجعه کنید)، و Amazon Athena. به طور خلاصه، اگر به دنبال تجزیه و تحلیل در زمان واقعی در دریاچه داده هستید، Hudi یک شرط واقعاً خوب است.
– اندرو سی. الیور
آپاچی کوه یخ
چه کسی اهمیت می دهد که اگر نتیجه برای همیشه طول بکشد، چیزی “به خوبی مقیاس شود”؟ HDFS و Hive خیلی کند بودند. Apache Iceberg را وارد کنید، که با Hive و همچنین مستقیماً با Apache Spark و Apache Flink و همچنین سیستم های دیگر مانند ClickHouse، Dremio، و StarRocks. Iceberg یک قالب جدول با کارایی بالا را برای همه این سیستم ها فراهم می کند و در عین حال امکان تکامل کامل طرحواره، فشرده سازی داده ها و بازگشت نسخه را فراهم می کند. کوه یخ جزء کلیدی بسیاری از دریاچههای داده باز مدرن است.
– اندرو سی. الیور
Apache Superset
سالهاست، Apache Superset یک هیولا در تجسم دادهها بوده است. Superset عملا تنها انتخاب برای هر کسی است که میخواهد تجزیه و تحلیلهای خودسرویس، مواجهه با مشتری یا کاربر را در مقیاس وسیع به کار گیرد. Superset تقریباً برای هر سناریو تحلیلی، از جمله همه چیز، از نمودارهای دایره ای تا نمودارهای پیچیده جغرافیایی، تجسم را ارائه می دهد. با اکثر پایگاههای داده SQL صحبت میکند و یک سازنده کشیدن و رها کردن و همچنین یک SQL IDE ارائه میکند. اگر میخواهید دادهها را تجسم کنید، Superset شایسته نگاه اول شما است.
– اندرو سی. الیور
نان
درست زمانی که فکر میکردید جاوا اسکریپت در حال قرار گرفتن در یک روال قابل پیشبینی است، Bun میآید. نام بیاهمیت یک هدف جدی را رد میکند: همه چیزهایی را که برای JS سمت سرور نیاز دارید – زمان اجرا، بستهکننده، مدیریت بسته – در یک ابزار قرار دهید. آن را جایگزینی برای Node.js و NPM کنید، اما بسیار سریعتر. به نظر میرسد این گزاره ساده، Bun را از زمانی که Node روی applecart ورق زده است، مخلترین بیت جاوا اسکریپت کرده است.
Bun بخشی از سرعت خود را مدیون Zig است (به زیر مراجعه کنید). بقیه را مدیون وسواس بنیانگذار جارد سامنر نسبت به عملکرد است. شما می توانید تفاوت را بلافاصله در خط فرمان احساس کنید. فراتر از عملکرد، تنها داشتن همه ابزارها در یک بسته یکپارچه، Bun را به جایگزینی قانع کننده برای Node و Deno تبدیل می کند.
– متیو تایسون
کلود ۲
Anthropic’s Claude 2 حداکثر ۱۰۰ هزار توکن (حدود ۷۰۰۰۰ کلمه) را در یک واحد می پذیرد سریع، و می تواند داستان هایی تا چند هزار توکن تولید کند. کلود می تواند ویرایش، بازنویسی، خلاصه، طبقه بندی، استخراج داده های ساختاریافته، انجام پرسش و پاسخ بر اساس محتوا و موارد دیگر را انجام دهد. این زبان بیشترین آموزش را به زبان انگلیسی دارد، اما در طیف وسیعی از زبان های رایج دیگر نیز به خوبی عمل می کند. کلود همچنین دانش گسترده ای از زبان های برنامه نویسی رایج دارد.
کلود طبق قانون اساسی برای مفید بودن، صادق بودن و بی ضرر بودن (HHH) آموزش دیده بود، و به طور گسترده ای با تیم قرمز برای بی ضررتر بودن و ایجاد خروجی توهین آمیز یا خطرناک سخت تر آموزش دیده بود. داده های شما را آموزش نمی دهد یا برای پاسخ به اینترنت مراجعه نمی کند. Claude در ایالات متحده و بریتانیا به عنوان نسخه بتا رایگان در دسترس است و توسط شرکای تجاری مانند Jasper، Sourcegraph، و AWS.
— مارتین هلر
CockroachDB
یک پایگاه داده SQL توزیع شده که تراکنش های ACID کاملاً سازگار را امکان پذیر می کند، CockroachDB یک مشکل مقیاس پذیری کلیدی را برای عملکرد بالا حل می کند. ، برنامه های کاربردی تراکنش سنگین با فعال کردن مقیاس پذیری افقی خواندن و نوشتن پایگاه داده. CockroachDB همچنین از استقرار چند منطقه ای و چند ابری برای کاهش تأخیر و مطابقت با قوانین داده پشتیبانی می کند. استقرارهای نمونه عبارتند از پلتفرم داده Netflix، با بیش از ۱۰۰ خوشه CockroachDB تولیدی که از برنامه های رسانه ای و مدیریت دستگاه پشتیبانی می کنند. مشتریان Marquee همچنین شامل Hard Rock Sportsbook، JPMorgan Chase، Santander و DoorDash هستند.
— ایزاک ساکولیک
CPython
یادگیری ماشین، علم داده، اتوماسیون وظایف، توسعه وب… دلایل بی شماری برای دوست داشتن زبان برنامه نویسی پایتون وجود دارد. افسوس، عملکرد زمان اجرا یکی از آنها نیست – اما این در حال تغییر است. در دو نسخه آخر، Python 3.11 و Python 3.12، تیم اصلی توسعه Python از مجموعه ای از ارتقاءهای متحول کننده برای CPython، اجرای مرجع مفسر پایتون. نتیجه یک زمان اجرا پایتون است که برای همه سریعتر است، نه فقط برای افراد معدودی که استفاده از کتابخانههای جدید یا نحو پیشرفته را انتخاب میکنند. و با طرحهایی برای حذف قفل مترجم جهانی، که مانعی طولانیمدت برای موازیسازی چند رشتهای واقعی در پایتون است، زمینه برای پیشرفتهای بیشتر فراهم شده است.
— سردار یگولپ
DuckDB
پایگاههای اطلاعاتی OLAP قرار است بزرگ باشند، درست است؟ هیچ کس IBM Cognos، Oracle OLAP، SAP Business Warehouse یا ClickHouse را به عنوان “سبک وزن” توصیف نمی کند. اما اگر به به اندازه کافی OLAP نیاز داشتید، چه باید کرد – یک پایگاه داده تحلیلی که به صورت تعبیهشده، در حین فرآیند و بدون وابستگی خارجی اجرا میشود؟ DuckDB یک پایگاه داده تحلیلی است که بر اساس روح پروژه های کوچک اما قدرتمندی مانند SQLite ساخته شده است. DuckDB همه ویژگیهای آشنای RDBMS را ارائه میدهد – پرس و جوهای SQL، تراکنشهای ACID، فهرستهای ثانویه – اما ویژگیهای تحلیلی مانند اتصالها و تجمیعها را روی مجموعههای داده بزرگ اضافه میکند. همچنین میتواند قالبهای کلان داده رایج مانند Parquet را جذب و مستقیماً پرس و جو کند.
— سردار یگولپ
HTMX و Hyperscript
احتمالاً فکر میکنید HTML هرگز تغییر نخواهد کرد. HTMX HTMLای را که میشناسید و دوست دارید میگیرد و آن را با پیشرفتهایی گسترش میدهد که نوشتن برنامههای کاربردی وب مدرن را آسانتر میکند. HTMX بسیاری از جاوا اسکریپت دیگ را که برای اتصال انتهای وب به انتهای صفحه استفاده می شود حذف می کند. در عوض، از ویژگی های HTML بصری برای انجام کارهایی مانند صدور درخواست های AJAX و پر کردن عناصر با داده ها استفاده می کند. یک پروژه خواهر و برادر، Hyperscript، یک نحو شبیه HyperCard را برای ساده کردن بسیاری از وظایف جاوا اسکریپت از جمله عملیات ناهمزمان و دستکاری های DOM معرفی می کند. در مجموع، HTMX و Hyperscript یک دیدگاه جایگزین جسورانه برای روند فعلی در چارچوبهای واکنشی ارائه میدهند.
– متیو تایسون
ایستیو
ساده کردن شبکه و ارتباطات برای microservices مبتنی بر کانتینر، Istio یک است سرویس مش که مسیریابی، نظارت، ثبت و مشاهده ترافیک را فراهم می کند و در عین حال امنیت را با قابلیت های رمزگذاری، احراز هویت و مجوز افزایش می دهد. ایستیو ارتباطات و عملکردهای امنیتی آنها را از برنامه و زیرساخت جدا می کند و پیکربندی ایمن تر و سازگارتر را امکان پذیر می کند. این معماری از یک صفحه کنترل مستقر در خوشههای Kubernetes و یک صفحه داده برای کنترل سیاستهای ارتباطی تشکیل شده است. در سال ۲۰۲۳، ایستیو از انکوباسیون CNCF فارغ التحصیل شد با کشش قابل توجهی در فضای ابری جامعه، از جمله پشتیبانی و مشارکتهای Google، IBM، Red Hat، Solo.io، و دیگران.
— ایزاک ساکولیک
ظروف کاتا
ترکیب سرعت کانتینرها و جداسازی ماشینهای مجازی، کانتینرهای کاتا یک زمان اجرا کانتینر امن است که از Intel Clear استفاده میکند. کانتینرهایی با Hyper.sh runV، یک زمان اجرا مبتنی بر Hypervisor. کانتینرهای Kata با Kubernetes و Docker کار میکند و در عین حال از چندین معماری سختافزاری از جمله x86_64، AMD64، Arm، IBM p-series و IBM z-series پشتیبانی میکند. Google Cloud، Microsoft، AWS، و Alibaba Cloud حامیان زیرساخت هستند. سایر شرکتهایی که از کانتینرهای کاتا پشتیبانی میکنند عبارتند از سیسکو، دل، اینتل، رد هت، SUSE و اوبونتو. نسخهای که اخیراً منتشر شد، ظروف محرمانه را به دستگاههای GPU و انتزاعی از مدیریت دستگاه آورد.
— ایزاک ساکولیک
LangChain
LangChain یک چارچوب ماژولار است که توسعه برنامههای مبتنی بر مدلهای زبان را آسان میکند LangChain مدلهای زبان را قادر میسازد تا به منابع داده متصل شوند و با محیط خود تعامل داشته باشند. کامپوننتها LangChain انتزاعات مدولار و مجموعهای از پیادهسازی انتزاعها هستند. LangChain زنجیرهای خارج از قفسه مجموعهای ساختار یافته از اجزاء برای انجام وظایف سطح بالاتر خاص هستند. شما می توانید از کامپوننت ها برای سفارشی سازی زنجیره های موجود و ساخت زنجیره های جدید استفاده کنید. در حال حاضر سه نسخه از LangChain وجود دارد: یکی در پایتون، یکی در TypeScript/JavaScript، و یکی در برو. تقریباً ۱۶۰ ادغام LangChain تا زمان نگارش این مقاله وجود دارد.
— مارتین هلر
مهار مدل ارزیابی زبان
وقتی یک مدل زبان بزرگ (LLM) منتشر شده است، معمولاً مجموعهای از نمرات ارزیابی را میبینید که مدل را با مثلاً ChatGPT در یک معیار خاص مقایسه میکنند. به احتمال زیاد، شرکت سازنده این مدل از lm-eval-harness استفاده کرده است. آن امتیازات را ایجاد کند. lm-eval-harness که توسط EleutherAI، مؤسسه تحقیقاتی هوش مصنوعی توزیع شده ایجاد شده است، دارای بیش از ۲۰۰ معیار است و به راحتی قابل تمدید است. این مهار حتی برای کشف کمبودهای موجود در معیارهای موجود و همچنین برای تقویت Hugging استفاده شده است. Open LLM Leaderboard Face. مانند کارتون xkcd، این یکی از آن ستونهای کوچکی است که کل دنیا را نگه میدارد.
— ایان پوینتر
لاما ۲
Llama 2 نسل بعدی مدل زبان بزرگ Meta AI است ، در مقایسه با Llama 1 بر روی ۴۰٪ داده بیشتر (۲ تریلیون نشانه از منابع در دسترس عموم) آموزش دیده و دو برابر طول زمینه (۴۰۹۶). Llama 2 یک مدل زبان رگرسیون خودکار است که از معماری ترانسفورماتور بهینه شده استفاده می کند. نسخههای تنظیمشده از تنظیم دقیق نظارت شده (SFT) و یادگیری تقویتی با بازخورد انسانی (RLHF) استفاده میکنند تا با اولویتهای انسان برای کمک و ایمنی هماهنگ شوند. کد لاما، که با تنظیم دقیق آموزش داده شد Llama 2 در مجموعه دادههای کد خاص، میتواند کد و زبان طبیعی در مورد کد ایجاد کند از کد یا درخواستهای زبان طبیعی.
— مارتین هلر
اولاما
Ollama یک ابزار خط فرمان است که میتواند Llama 2، Code Llama و سایر مدلها را به صورت محلی در macOS و لینوکس، با پشتیبانی از ویندوز برنامه ریزی شده است. Ollama در حال حاضر تقریباً دوجین خانواده از مدلهای زبانی را پشتیبانی میکند، با تعداد زیادی «برچسب» برای هر خانواده مدل. برچسبها انواعی از مدلهایی هستند که در اندازههای مختلف با استفاده از تنظیم دقیق متفاوت آموزش داده شده و در سطوح مختلف کوانتیزه میشوند تا به خوبی اجرا شوند. هرچه سطح کوانتیزاسیون بالاتر باشد، مدل دقیق تر است، اما کندتر اجرا می شود و به حافظه بیشتری نیاز دارد.
مدل هایی که Ollama پشتیبانی می کند شامل برخی از انواع بدون سانسور است. اینها با استفاده از روش طراحی شده توسط اریک هارتفورد برای آموزش مدلها بدون نردههای محافظ معمولی ساخته شدهاند. به عنوان مثال، اگر از Llama 2 بپرسید که چگونه باروت بسازید، به شما هشدار می دهد که ساخت مواد منفجره غیرقانونی و خطرناک است. اگر از مدل لاما ۲ بدون سانسور همین سوال را بپرسید، فقط به شما می گوید.
— مارتین هلر
قطبی ها
شما ممکن است بپرسید که چرا Python به کتابخانه دیگری برای بحث در چارچوب داده نیاز دارد در حالی که ما از قبل پانداهای محترم را داریم. اما نگاهی عمیقتر بیندازید و شاید پیدا کنید قطبیها دقیقاً همان چیزی است که به دنبال آن هستید. قطبیها نمیتوانند هر کاری را که پانداها میتوانند انجام دهند، انجام دهند، اما آنچه را که میتوانند انجام دهند، سریع انجام میدهند—تا ۱۰ برابر سریعتر از پانداها، با استفاده از نیمی از حافظه. توسعهدهندگانی که از PySpark میآیند، با Polars API کمی بیشتر احساس میکنند تا با عملیاتهای باطنیتر. در پانداها اگر با حجم زیادی از داده کار می کنید، Polars به شما امکان می دهد سریعتر کار کنید.
— ایان پوینتر
PostgreSQL
PostgreSQL برای بیش از ۳۵ سال، با ورودی بیش از ۷۰۰ مشارکت کننده، و دارای ۱۶.۴% سهم بازار در میان سیستم های مدیریت پایگاه داده رابطه ای. یک نظرسنجی اخیر، که در آن PostgreSQL بهترین انتخاب برای ۴۵٪ از ۹۰۰۰۰ توسعهدهنده بود، نشان میدهد که شتاب بسیار بالا است. فقط افزایش می یابد. PostgreSQL 16 که در سپتامبر منتشر شد، عملکرد را برای پرس و جوهای مجزا و منتخب افزایش داد، موازی پرس و جو را افزایش داد، قابلیتهای نظارتی جدید I/O را به ارمغان آورد و کنترلهای دسترسی امنیتی دقیقتری را اضافه کرد. . همچنین در سال ۲۰۲۳، Amazon Aurora PostgreSQL pgvector را برای پشتیبانی از Generative اضافه کرد. تعبیههای هوش مصنوعی و Google Cloud قابلیت مشابهی را منتشر کرد a> برای AlloyDB PostgreSQL.
— ایان پوینتر
QLoRA
به نظر میرسد تیم دتمر و تیمش در حال ماموریت هستند تا مدلهای زبان بزرگ را روی همه چیز تا توستر شما اجرا کنند. سال گذشته، کتابخانه bitsandbytes آنها نتیجهگیری از LLMهای بزرگتر را به سختافزار مصرفکننده ارائه کرد. امسال، آنها به آموزش روی آوردهاند و تکنیکهای تاثیرگذار LoRA را برای کار بر روی مدلهای کوانتیزه کاهش دادهاند. استفاده از QLoRA به این معنی است که میتوانید مدلهای پارامتر عظیم ۳۰B-plus را در ماشینهای رومیزی تنظیم کنید، با کاهش دقت کمی. در مقایسه با تنظیم کامل در چندین GPU. در واقع، گاهی اوقات QLoRA حتی بهتر عمل می کند. استنتاج و آموزش کم بیت به این معنی است که LLM برای افراد بیشتری قابل دسترسی است — و آیا منبع باز این نیست؟
— ایان پوینتر
RAPIDS
RAPIDS مجموعهای از کتابخانههای با شتاب GPU برای کارهای رایج علم داده و تجزیه و تحلیل است. هر کتابخانه وظیفه خاصی را انجام می دهد، مانند cuDF برای پردازش قاب داده، cuGraph برای تجزیه و تحلیل گراف، و cuML برای یادگیری ماشینی. کتابخانههای دیگر پردازش تصویر، پردازش سیگنال، و تجزیه و تحلیل فضایی را پوشش میدهند، در حالی که ادغامها RAPIDS را به Apache Spark، SQL و بارهای کاری دیگر میآورند. اگر هیچکدام از کتابخانههای موجود مطابقت نداشته باشد، RAPIDS شامل RAFT نیز میشود، مجموعهای از اولیههای تسریعشده توسط GPU برای ساخت راهحلهای شخصی. RAPIDS همچنین با Dask دست در دست کار می کند تا در چندین گره مقیاس بندی شود، و با Slurm برای اجرا در محیط های محاسباتی با عملکرد بالا.
— سردار یگولپ
ادامه دارد…
پست های مرتبط
بهترین نرم افزار منبع باز سال ۲۰۲۳
بهترین نرم افزار منبع باز سال ۲۰۲۳
بهترین نرم افزار منبع باز سال ۲۰۲۳