من از طرفداران پروپاقرص DJ هوش مصنوعی Spotify هستم، اما یک محدودیت دارد: فقط میتوانم آثار موجود در کاتالوگ Spotify را پخش کنم. با توجه به کتابخانه عظیم Spotify، این مسئله چندان مشکلساز نیست؛ بااینحال، طی دههها مجموعه قابلتوجهی از موسیقیهای اورجینال و آثار کمیاب گرد آوردهام که بخش زیادی از آنها از صفحههای وینیل دیجیتالی شدهاند، و چیزی میخواستم که بتواند کتابخانه شخصیام را در خانه بهشکلی هوشمندانه میکس کند.
اینگونه بود که با SUB/WAVE آشنا شدم. این راهکار خودمیزبان، مجموعه موسیقی من را به یک ایستگاه رادیویی به سبک DJ تبدیل کرد و اگرچه از همان ابتدا همهچیز کاملاً بیدردسر پیش نرفت، صرف زمان برای آن کاملاً ارزشش را دارد.
SUB/WAVE چگونه مشکل را حل میکند
ساخت یک ایستگاه رادیویی هوش مصنوعی خودمیزبان که روی سختافزار خودتان اجرا میشود





دنبال چیزی متفاوت از پلتفرمهای رایج استریم بودم و آن را پیدا کردم. SUB/WAVE بهجای متصل کردن شما به کاتالوگ یک سرویس تجاری استریم، به سرور موسیقی خودتان متصل میشود و موسیقیهایتان را به سبک یک ایستگاه رادیویی، همراه با محوشدن متقاطع و حتی DJهای زنده اختیاری، پخش میکند. هرچند راهاندازی آن چندان سرراست نیست، تازهکاری مثل من توانست با وجود چند لغزش در مسیر، آن را در حدود یک ساعت راهاندازی کند.
ساختار راهاندازی آن بهطرز شگفتآوری ماژولار است. برخلاف Spotify، SUB/WAVE یک برنامه واحد نیست، بلکه مجموعهای از سرویسهاست که هماهنگ با یکدیگر کار میکنند. در قلب این ساختار، Navidrome قرار دارد؛ یک API که مجموعه موسیقی محلی من را فهرستگذاری میکند. SUB/WAVE برای مرور کتابخانه، افزودن قطعهها به صف و ساخت یک ایستگاه رادیویی پیوسته بر پایه تحلیل هوش مصنوعی، از Navidrome استفاده میکند.
این تحلیل هوش مصنوعی را Ollama انجام میدهد که LLM اختصاصی خود را بهصورت محلی روی رایانه من اجرا میکند. SUB/WAVE از این مدل محلی پرسوجو میکند تا فهرستهای پخش را تولید کند، گذارهای روان بسازد و درباره برنامهریزی پخش تصمیم بگیرد. هر سه مؤلفه درون Docker و در کانتینرهای جداگانه خود اجرا میشوند؛ این کار همهچیز را در محیطی یکپارچه نگه میدارد که مدیریت آن بسیار آسانتر است. هنگام راهاندازی باید فرمانهای مختلفی را در Terminal وارد کنید تا هر مؤلفه بتواند با سایر مؤلفهها ارتباط برقرار کند.
Copy down all URLs and credentials when creating accounts, as the SUB/WAVE install wizard will ask for them later on.
تجربه نهایی بسیار متقاعدکننده بود
واقعاً حس گوشدادن به یک ایستگاه رادیویی زنده را دارد

هنوز با من همراهید؟ هرچقدر هم که همه اینها طاقتفرسا به نظر برسد، وقتی ساختن سیستم را آغاز میکنید، فرایند کمکم منطقیتر میشود و نخستین باری که آهنگهای خودتان را از طریق DJ هوش مصنوعیای میشنوید که خودتان ساختهاید، حس بسیار رضایتبخشی دارد. همهچیز بهصورت محلی اجرا میشود، بنابراین دیگر به سرویسهای استریم وابسته نیستید. این راهاندازی همچنین یک جریان واقعی رادیوی اینترنتی پخش میکند، یعنی میتوانید از طریق مرورگر یا هر پخشکننده صوتی سازگار در نقاط مختلف خانه به آن گوش دهید.
عاشق داشتن یک ایستگاه رادیویی اختصاصی هستم که فقط قطعههایی را پخش میکند که میخواهم بشنوم. هر بار ساعتها آن را روشن میگذارم و گذارهای روان میان آهنگها شنیدن را حتی دلپذیرتر میکنند. بهجای اینکه قطعههای محبوبم را در صف بگذارم، متوجه شدم به آهنگهایی گوش میدهم که فراموششان کرده بودم و حتی چند قطعه که اصلاً نمیدانستم وجود دارند؛ بنابراین احساس میکنم دوباره از نو با مجموعه موسیقیام آشنا میشوم.
هوش مصنوعی بهشکلی متقاعدکننده در پسزمینه کار میکند و با درهمآمیختن بیوقفه سبکهای مختلف، ضربآهنگی یکنواخت و پیوسته را حفظ میکند؛ بهطوریکه هر قطعه همیشه بهجا به نظر میرسد و گوشخراش نیست. صف پخش دائماً تولید میشود، یعنی مجبور نیستم توقف کنم و درباره قطعه بعدی فکر کنم؛ در نتیجه متوجه شدم با دقت بیشتری گوش میدهم. کل این تجربه، بهجای استریم درخواستی امروزی، مرا به یاد رادیوی FM سالهای دور میاندازد.
وانمود نمیکنم که نصب آن بیدردسر بود
این پروژه برای تازهکارها مناسب نیست، اما نتیجه نهایی ارزشش را دارد





من بهعنوان فردی کاملاً تازهکار سراغ این پروژه رفتم و این موضوع کاملاً مشخص بود. برقراری ارتباط میان چند کانتینر Docker به صبر نیاز داشت و عیبیابی شامل بررسی گزارشها، آزمایش نقاط پایانی API، راستیآزمایی اتصالهای شبکه و در نهایت کشف این موضوع بود که هارد اکسترنال من از حالت اتصال خارج شده است.
در آن لحظه آماده بودم لپتاپم را از روی پلی بلند به پایین پرتاب کنم. بااینحال، ادامه دادم و وقتی همهچیز سر جای خود قرار گرفت، سیستم بهطرز چشمگیری پایدار بود. کنترلکننده فهرستهای پخش را بهطور خودکار میساخت، پخشکننده بهصورت پیوسته استریم میکرد و ایستگاه رادیویی تولیدشده با هوش مصنوعی بدون وقفه به پخش ادامه میداد.
از نزدیک فهمیدم که بدون تجربه کار با Docker، فرمانهای Linux یا برنامههای خودمیزبان، این نوع عیبیابی میتواند خیلی زود کلافهکننده شود. بااینحال، پس از پیکربندی اولیه، استفاده روزمره از آن بهشکلی دلپذیر بدون نیاز به دخالت است و کاملاً ارزش این تلاش را دارد.
آیا SUB/WAVE از DJ هوش مصنوعی Spotify بهتر است؟
باید اذعان کنم که برای بیشتر مردم، DJ هوش مصنوعی Spotify آسانترین و راحتترین انتخاب خواهد بود. این قابلیت بیدرنگ کار میکند، به هیچ دانش فنیای نیاز ندارد و شنوندگان را با کمترین زحمت با موسیقیهای جدید آشنا میکند. از سوی دیگر، SUB/WAVE انتظارات زیادی از کاربرانش دارد. این ابزار بههیچوجه یک راهکار آمادهبهکار نیست؛ شما به آرشیو موسیقی خودتان، یک سرور، Docker و صبر کافی برای عیبیابی مشکلات گاهبهگاه پیکربندی نیاز خواهید داشت. این پروژه مشخصاً برای علاقهمندان حرفهای طراحی شده است، نه شنوندگان معمولی.
بااینحال، بهعنوان کسی که سالها برای گردآوری و ساماندهی یک مجموعه موسیقی وقت صرف کردهام، نتیجه کاملاً ارزشش را دارد. داشتن یک ایستگاه رادیویی مبتنی بر هوش مصنوعی که تماماً حول آهنگهای محبوب من ساخته شده، دستاوردی است که پس از راهاندازی، بدون هیچ دخالت یا تلاشی بهطور خودکار به کار خود ادامه میدهد.
منبع: این مطلب ترجمه و بومیسازی مقالهای از MakeUseOf به قلم Jack Mitchell است. مشاهده مقاله اصلی