
DJ هوش مصنوعی: ساخت پلیلیست Spotify از متن با GPT-4
9 دقیقه مطالعه · منتشر شده ۱۴۰۵/۴/۱۸
دانلود workflow
فایل JSON آماده import در n8n — credentialها باید در n8n شما تنظیم شوند.
- فایل JSON را دانلود کنید.
- در n8n: Workflows → Import from File.
- Credentialهای هر node را متصل کنید.
- workflow را فعال کنید.
شناسه workflow: 8801 · منبع: کاتالوگ Axeto
DJ هوش مصنوعی: تولیدکننده پلیلیست Spotify از متن با Linkup و GPT-4
این گردش کار، "DJ هوش مصنوعی: تولیدکننده پلیلیست Spotify از متن با Linkup و GPT-4"، ایجاد پلیلیستهای Spotify را بر اساس درخواستهای متنی به زبان طبیعی خودکار میکند. کاربران میتوانند حال و هوا، سبک، هنرمندان یا تمهای مورد نظر خود را از طریق یک فرم وب توصیف کنند و گردش کار یک پلیلیست شخصیسازی شده Spotify ایجاد خواهد کرد.
این گردش کار و موارد دیگر را در کاتالوگ Axeto کاوش کنید: https://axeto.ai/n8n
نمای کلی گردش کار
این گردش کار به طور منطقی به چهار بخش اصلی تقسیم میشود:
1. دریافت ورودی: درخواستها و پارامترهای کاربر را از طریق یک فرم وب سفارشی جمعآوری میکند.
2. پردازش هوش مصنوعی و ایدهپردازی آهنگ: از GPT-4 (از طریق LangChain) و API جستجوی وب Linkup برای تولید یک توصیه پلیلیست ساختاریافته، شامل نام پلیلیست و جزئیات آهنگ خاص، استفاده میکند.
3. ایجاد پلیلیست در Spotify: یک پلیلیست جدید در Spotify ایجاد میکند، هر آهنگ را برای به دست آوردن شناسه آن جستجو میکند و آهنگها را به پلیلیست تازه ایجاد شده اضافه میکند.
4. نهاییسازی و هدایت مجدد: پلیلیست تکمیل شده را بازیابی کرده و کاربر را به آن در Spotify هدایت میکند.
---
تشریح جزئیات نودها
۱. دریافت ورودی
این بخش تعامل اولیه کاربر را مدیریت میکند و اولویتهای پلیلیست را از طریق یک فرم وب جمعآوری میکند.
- نود:
On form submission
* نوع: n8n-nodes-base.formTrigger
* نقش: به عنوان نقطه ورود گردش کار عمل میکند. یک URL وبهوک را در معرض دید قرار میدهد و فرمی کاربرپسند برای ورودی نمایش میدهد.
* پیکربندی:
* فیلدهای فرم:
* Playlist request: یک textarea برای کاربران جهت توصیف پلیلیست مورد نظرشان (الزامی).
* Number of tracks: یک ورودی number برای تعداد آهنگهای مورد نظر (الزامی).
* سفارشیسازی: شامل CSS سفارشی برای رابط کاربری تیره با تم Spotify.
* دکمه: با برچسب "Generate the playlist".
* پاسخ: خروجی آخرین نود در گردش کار را برمیگرداند.
* اتصالات: خروجی به نود Ideate playlist.
* موارد خاص: وبهوک باید به صورت عمومی قابل دسترسی باشد. ورودی ناقص یا بدشکل منجر به شکست گردش کار یا نتایج خالی میشود.
۲. پردازش هوش مصنوعی و ایدهپردازی آهنگ
این بخش از هوش مصنوعی برای تفسیر درخواست کاربر و تولید یک طرح ساختاریافته برای پلیلیست استفاده میکند.
- نود:
OpenAI Chat Model
* نوع: @n8n/n8n-nodes-langchain.lmChatOpenAi
* نقش: مدل زبان GPT-4.1-mini را برای پردازش هوش مصنوعی فراهم میکند.
* پیکربندی:
* مدل: gpt-4.1-mini
* اتصالات: خروجی به نود Ideate playlist.
* موارد خاص: کلیدهای API نامعتبر یا منقضی شده، محدودیتهای نرخ API، یا مشکلات اتصال شبکه.
- نود:
Ideate playlist
* نوع: @n8n/n8n-nodes-langchain.agent
* نقش: عامل هوش مصنوعی اصلی مسئول ایجاد طرح پلیلیست. اقدامات زیر را انجام میدهد:
* ورودی کاربر را از تریگر On form submission دریافت میکند.
* یک کوئری جستجو برای ابزار جستجوی وب Linkup میسازد.
* نود Web query to find tracks را با کوئری تولید شده فراخوانی میکند.
* نام پلیلیست را تعیین کرده و تعداد دقیق آهنگهای درخواستی را انتخاب میکند.
* یک شیء JSON ساختاریافته حاوی playlistName و لیستی از tracks (هر کدام با هنرمند و عنوان) را خروجی میدهد.
* پیکربندی:
* پیام سیستم: نقش عامل را به عنوان یک DJ و نحوه استفاده از ابزار Linkup را آموزش میدهد.
* قالب خروجی: ساختار خروجی خاصی را برای پردازش بعدی اجباری میکند.
* اتصالات:
* از ابزار هوش مصنوعی Web query to find tracks استفاده میکند.
* از OpenAI Chat Model به عنوان مدل زبان خود استفاده میکند.
* خروجی آن توسط Structured Output Parser تجزیه میشود.
* خروجی اصلی به نود Create playlist جریان مییابد.
* موارد خاص: خطا در قالببندی خروجی هوش مصنوعی، شکست در طول اجرای ابزار، یا پاسخهای غیرمنتظره هوش مصنوعی.
- نود:
Web query to find tracks
* نوع: n8n-nodes-base.httpRequestTool
* نقش: API Linkup را برای یافتن آهنگهای مرتبط بر اساس کوئری تولید شده توسط هوش مصنوعی فراخوانی میکند.
* پیکربندی:
* متد: POST
* URL: https://api.linkup.so/v1/search
* بدنه:
* q: رشته کوئری جستجوی تولید شده توسط هوش مصنوعی.
* depth: deep (برای نتایج جامع).
* outputType: structured با یک طرحواره JSON که آرایهای از آهنگها را تعریف میکند، شامل عنوان، هنرمند و توضیح.
* includeImages: false.
* احراز هویت: از اعتبارنامه توکن Bearer برای Linkup استفاده میکند.
* اتصالات: به عنوان پاسخ ابزار هوش مصنوعی به نود Ideate playlist خروجی میدهد.
* موارد خاص: شکست احراز هویت API، تایماوت شبکه، کوئریهای نامعتبر، یا عدم تطابق طرحواره.
- نود:
Structured Output Parser
* نوع: @n8n/n8n-nodes-langchain.outputParserStructured
* نقش: خروجی JSON عامل هوش مصنوعی را به قالبی ساختاریافته که توسط گردش کار قابل استفاده است، تجزیه میکند.
* پیکربندی: از یک طرحواره JSON نمونه استفاده میکند که با playlistName و آرایه tracks مورد انتظار مطابقت دارد.
* اتصالات: برای پردازش بیشتر به نود Ideate playlist خروجی میدهد.
* موارد خاص: شکست تجزیه در صورتی که خروجی هوش مصنوعی از طرحواره تعریف شده منحرف شود.
۳. ایجاد پلیلیست Spotify
این بخش ایجاد واقعی پلیلیست Spotify و پر کردن آن با آهنگها را مدیریت میکند.
- نود:
Create playlist
* نوع: n8n-nodes-base.spotify
* نقش: یک پلیلیست جدید و خالی در Spotify با استفاده از نام تولید شده توسط هوش مصنوعی ایجاد میکند.
* پیکربندی:
* نام: به صورت پویا از خروجی playlistName نود Ideate playlist تنظیم میشود.
* عمومی: روی true تنظیم شده است.
* اعتبارنامهها: از اعتبارنامههای Spotify OAuth2 استفاده میکند.
* اتصالات: خروجی به نود Get tracks array.
* موارد خاص: توکنهای OAuth منقضی شده یا محدودیتهای نرخ API Spotify.
- نود:
Get tracks array
* نوع: n8n-nodes-base.set
* نقش: آرایه tracks را از خروجی هوش مصنوعی برای تکرار آسانتر استخراج میکند.
* پیکربندی:
* فیلد: Tracks
* مقدار: {{ $('Ideate playlist').item.json.output.tracks }}
* اتصالات: خروجی به نود Split out tracks.
- نود:
Split out tracks
* نوع: n8n-nodes-base.splitOut
* نقش: آرایه Tracks را تقسیم میکند تا هر آهنگ به صورت جداگانه پردازش شود.
* پیکربندی:
* فیلد برای تقسیم: Tracks
* اتصالات: هر آهنگ را به نود Search the track خروجی میدهد.
- نود:
Search the track
* نوع: n8n-nodes-base.spotify
* نقش: با استفاده از هنرمند و عنوان، آهنگ خاصی را در Spotify جستجو میکند تا شناسه آن را بیابد.
* پیکربندی:
* کوئری: {{ $json.artist }} - {{ $json.title }} (برای یافتن بهترین تطابق).
* محدودیت: 1 (برای دریافت تنها نتیجه برتر).
* اتصالات: خروجی به نود Get track IDs.
* موارد خاص: آهنگ در Spotify یافت نشد یا نتایج جستجو مبهم است.
- نود:
Get track IDs
* نوع: n8n-nodes-base.set
* نقش: شناسه آهنگ Spotify را از نتایج جستجو استخراج میکند.
* پیکربندی:
* فیلد: Track ID
* مقدار: {{ $json.id }} (از نتیجه جستجو).
* اتصالات: خروجی به نود Add track to playlist.
- نود:
Add track to playlist
* نوع: n8n-nodes-base.spotify
* نقش: آهنگ شناسایی شده را به پلیلیست Spotify که قبلاً ایجاد شده بود، اضافه میکند.
* پیکربندی:
* شناسه پلیلیست: به صورت پویا از نود Create playlist تنظیم میشود.
* شناسه آهنگ: از نود Get track IDs تنظیم میشود.
* اتصالات: خروجی به نود Get the final playlist.
* موارد خاص: محدودیتهای نرخ API یا شناسههای آهنگ/پلیلیست نامعتبر.
۴. نهاییسازی و هدایت مجدد
این بخش نهایی، پلیلیست تکمیل شده را بازیابی کرده و کاربر را به آن هدایت میکند.
- نود:
Get the final playlist
* نوع: n8n-nodes-base.spotify
* نقش: جزئیات کامل پلیلیست را پس از اضافه شدن تمام آهنگها بازیابی میکند.
* پیکربندی:
* شناسه پلیلیست: از نود Create playlist.
* عملیات: get playlist
* اجرا یک بار: true
* اتصالات: خروجی به نود Opening the playlist.
* موارد خاص: شکست در بازیابی پلیلیست یا انقضای توکن.
- نود:
Opening the playlist
* نوع: n8n-nodes-base.form
* نقش: یک پاسخ HTTP redirect به کاربر ارسال میکند و پلیلیست Spotify تولید شده را در مرورگر او باز میکند.
* پیکربندی:
* URL هدایت مجدد: به صورت پویا از URL خارجی Spotify پلیلیست تنظیم میشود.
* پاسخ: برای ارسال یک redirect به کلاینت پیکربندی شده است.
* اتصالات: نود پایانی.
* موارد خاص: URL هدایت مجدد ناموجود یا بدشکل.
---
جدول خلاصه
| نام نود (Node Name) | نوع نود (Node Type) | نقش عملکردی (Functional Role) | نود(های) ورودی (Input Node(s)) | نود(های) خروجی (Output Node(s)) | یادداشت (Sticky Note) |
|---|---|---|---|---|---|
| On form submission | n8n-nodes-base.formTrigger | دریافت ورودی درخواست پلیلیست از کاربر | Ideate playlist | ||
| OpenAI Chat Model | @n8n/n8n-nodes-langchain.lmChatOpenAi | ارائه مدل زبان GPT-4 | Ideate playlist | ||
| Ideate playlist | @n8n/n8n-nodes-langchain.agent | عامل هوش مصنوعی که پلیلیست و آهنگها را برنامهریزی میکند | On form submission, OpenAI Chat Model, Web query to find tracks, Structured Output Parser | Create playlist | ## عامل هوش مصنوعی برای برنامهریزی پلیلیست: از Linkup API برای آهنگها استفاده میکند |
| Web query to find tracks | n8n-nodes-base.httpRequestTool | فراخوانی Linkup API برای یافتن آهنگهای مرتبط | Ideate playlist (as AI tool) | Ideate playlist | ## جستجوی وب با هوش مصنوعی با Linkup: اعتبارنامههای Linkup.so خود را وصل کنید |
| Structured Output Parser | @n8n/n8n-nodes-langchain.outputParserStructured | تجزیه خروجی هوش مصنوعی به JSON ساختاریافته | Ideate playlist | Ideate playlist | |
| Create playlist | n8n-nodes-base.spotify | ایجاد پلیلیست جدید Spotify | Ideate playlist | Get tracks array | پلیلیست خالی با نام انتخاب شده ایجاد کنید. |
| Get tracks array | n8n-nodes-base.set | استخراج آرایه آهنگها برای تکرار | Create playlist | Split out tracks | |
| Split out tracks | n8n-nodes-base.splitOut | تقسیم آرایه آهنگها به موارد جداگانه | Get tracks array | Search the track | ## برای هر آهنگ: Spotify را برای دریافت شناسههای آهنگ جستجو کنید |
| Search the track | n8n-nodes-base.spotify | یافتن شناسه آهنگ در Spotify | Split out tracks | Get track IDs | |
| Get track IDs | n8n-nodes-base.set | استخراج شناسه آهنگ از نتیجه جستجو | Search the track | Add track to playlist | |
| Add track to playlist | n8n-nodes-base.spotify | افزودن آهنگ به پلیلیست Spotify | Get track IDs | Get the final playlist | |
| Get the final playlist | n8n-nodes-base.spotify | بازیابی جزئیات نهایی پلیلیست | Add track to playlist | Opening the playlist | |
| Opening the playlist | n8n-nodes-base.form | هدایت کاربر به URL پلیلیست Spotify | Get the final playlist |
Nodeهای استفادهشده
سوالات متداول
این گردش کار چگونه کار میکند؟▾
این گردش کار ابتدا درخواست شما را از طریق یک فرم وب دریافت میکند، سپس با استفاده از GPT-4 و Linkup، آهنگهای مناسب را بر اساس توصیفات شما پیدا کرده و در نهایت یک پلیلیست جدید در Spotify برایتان ایجاد میکند.
چه اطلاعاتی را باید در فرم وارد کنم؟▾
شما باید درخواست خود را برای پلیلیست در یک کادر متنی توصیف کنید (مثلاً حال و هوا، سبک موسیقی، هنرمندان مورد علاقه) و همچنین تعداد آهنگهای مورد نظرتان را مشخص نمایید.
آیا میتوانم سبک یا هنرمندان خاصی را درخواست کنم؟▾
بله، شما میتوانید در قسمت درخواست متنی، سبکهای موسیقی، هنرمندان خاص، یا حتی تمهای کلی مورد نظرتان را برای ساخت پلیلیست ذکر کنید تا هوش مصنوعی بهترین گزینهها را انتخاب کند.
این گردش کار از چه ابزارهایی استفاده میکند؟▾
این گردش کار از ابزارهایی مانند GPT-4 (از طریق LangChain)، Linkup API برای جستجوی وب و Spotify API برای ایجاد و مدیریت پلیلیستها استفاده میکند.
workflowهای مرتبط
- برنامهریز محتوای پینترست ۷ روزه با Notion و ایمیلSocial Media
- تولید خودکار پست وبلاگ Shopify با هوش مصنوعی GeminiMiscellaneous
- تولیدکننده پست وبلاگ وردپرس با هوش مصنوعی: محتوای خودکار و …Content Creation
- ابزار هوشمند جاسوسی تبلیغات فیسبوک با Apify و OpenAIMarket Research
- تولید خودکار پست مهمان با هوش مصنوعی و Google SheetsContent Creation
- تولیدکننده پیشنمایش مدل مو با هوش مصنوعی و اشتراکگذاری LINEContent Creation
