
گردش کار n8n: امتیازدهی مشاغل لینکدین با هوش مصنوعی و GPT-4…
13 دقیقه مطالعه · منتشر شده ۱۴۰۵/۴/۱۸
دانلود workflow
فایل JSON آماده import در n8n — credentialها باید در n8n شما تنظیم شوند.
- فایل JSON را دانلود کنید.
- در n8n: Workflows → Import from File.
- Credentialهای هر node را متصل کنید.
- workflow را فعال کنید.
شناسه workflow: 9418 · منبع: کاتالوگ Axeto
امتیازدهنده مرتبط بودن شغل با هوش مصنوعی: جستجوی مشاغل لینکدین با GPT-4o-mini و Google Sheets
این گردش کار (Workflow) فرآیند جستجو، امتیازدهی و پیگیری لیستهای شغلی مرتبط را از لینکدین خودکار میکند. این برنامه از GPT-4o-mini برای امتیازدهی مرتبط بودن مبتنی بر هوش مصنوعی و Google Sheets برای پیگیری سازمانیافته استفاده میکند.
مخاطبان هدف: جویندگان کار که هدفشان شناسایی و مدیریت کارآمد فرصتهای شغلی بسیار مرتبط بر اساس رزومه و ترجیحات خاص خود است.
مرور کلی گردش کار (Workflow Overview):
1. دریافت ورودی: یک فرم عمومی ورودیهای کاربر را جمعآوری میکند، از جمله معیارهای جستجوی شغل، رزومه، ترجیحات، امتیاز مرتبط بودن مورد نظر و URL یک Google Sheet.
2. گردآوری پارامتر: پارامترهای انتخاب شده توسط کاربر از فرم به قالبی سازگار با API برای LinkedIn Jobs API تبدیل میشوند.
3. واکشی دادههای شغلی: Apify LinkedIn Jobs Scraper API برای بازیابی لیستهای شغلی بر اساس پارامترهای گردآوری شده فراخوانی میشود.
4. فیلتر و حذف موارد تکراری مشاغل: دادههای شغلی واکشی شده با حذف موارد تکراری، شرکتهای لیست سیاه و ورودیهای نامعتبر پاکسازی میشوند.
5. امتیازدهی شغلی مبتنی بر هوش مصنوعی: مدل GPT-4o-mini از OpenAI مرتبط بودن هر شغل را با پروفایل کاندیدا ارزیابی کرده و امتیازی از ۰ تا ۱۰۰ اختصاص میدهد.
6. فیلتر امتیاز: مشاغلی که امتیاز مرتبط بودن هدف تعریف شده توسط کاربر را برآورده نمیکنند، فیلتر میشوند.
7. بررسی و غنیسازی مشاغل موجود: گردش کار (Workflow) با Google Sheet ارائه شده مقایسه میشود تا مشاغل در حال پیگیری شناسایی و حذف شوند.
8. افزودن مشاغل جدید به Google Sheets: لیستهای شغلی جدید امتیازدهی شده، فیلتر شده و منحصربهفرد به Google Sheet کاربر اضافه میشوند.
9. پشتیبانی گردش کار (Workflow Support): یادداشتهای چسبان (Sticky Notes) مستندات ضروری، دستورالعملهای راهاندازی و اطلاعات زمینهای را در سراسر گردش کار (Workflow) ارائه میدهند.
---
تحلیل دقیق گرهها (Detailed Node Analysis)
۱. دریافت ورودی (Input Reception)
- هدف: دریافت تمام ورودیهای لازم کاربر از طریق یک فرم کاربرپسند که سپس اجرای گردش کار (Workflow) را آغاز میکند.
- گرهها (Nodes):
* On form submission (Form Trigger)
* Sticky Note
- جزئیات گره
On form submission:
* نوع: n8n-nodes-base.formTrigger
* عملکرد: جزئیات ارائه شده توسط کاربر مانند عنوان شغلی، مکان، نوع قرارداد، سطح تجربه، حالت کاری، تاریخ انتشار، امتیاز مرتبط بودن هدف، آدرس URL صفحه گسترده گوگل (Google Sheet)، محتوای رزومه و اولویتهای خاص را جمعآوری میکند.
* پیکربندی: شامل اعتبارسنجی برای فیلدهای الزامی است و از منوهای کشویی و ناحیههای متنی برای ورودی جامع استفاده میکند.
* خروجی: یک شیء JSON حاوی تمام دادههای فرم ارسال شده.
* یادداشتها: یک شناسه Webhook برای دسترسی خارجی به فرم پیکربندی شده است.
* مشکلات احتمالی: خرابیها ممکن است به دلیل فیلدهای الزامی گمشده، فرمتهای نادرست URL یا متن رزومه بیش از حد بزرگ رخ دهد.
- جزئیات گره
Sticky Note:
* محتوا: توضیحی در مورد هدف فرم و نحوه راهاندازی گردش کار (Workflow) ارائه میدهد.
* موقعیت: برای زمینه فوری، بالای گره On form submission قرار گرفته است.
۲. گردآوری پارامتر (Parameter Compilation)
- هدف: ترجمه انتخابهای فرم کاربر به قالبی سازگار با API Apify LinkedIn Jobs Scraper.
- گرهها (Nodes):
* Compile_parm_sets (Code)
* Sticky Note1
- جزئیات گره
Compile_parm_sets:
* نوع: n8n-nodes-base.code
* عملکرد: انتخابهای کاربر (مانند "Full-time" به "F"، "Past Week" به "r604800") را به کدهای پارامتر API مختصر نگاشت میکند. خروجی را برای شامل کردن عنوان شغلی، مکان و فیلترهای آماده برای API سازماندهی میکند.
* ورودی: دادههای JSON از گره On form submission.
* خروجی: یک شیء JSON حاوی پارامترهای گردآوری شده آماده برای فراخوانی API.
* مشکلات احتمالی: مقادیر ورودی ناشناخته یا گمشده به طور پیشفرض null خواهند بود و از خروجی حذف میشوند.
- جزئیات گره
Sticky Note1:
* محتوا: عملکرد این گره را در تبدیل دادههای فرم به پارامترهای API توضیح میدهد.
۳. واکشی دادههای شغلی (Job Data Fetching)
- هدف: بازیابی لیستهای شغلی از لینکدین با استفاده از API Apify LinkedIn Jobs Scraper.
- گرهها (Nodes):
* Fetch LinkedIn Jobs (HTTP Request)
* Sticky Note2
- جزئیات گره
Fetch LinkedIn Jobs:
* نوع: n8n-nodes-base.httpRequest
* عملکرد: یک درخواست POST به نقطه پایانی API Apify برای واکشی لیستهای شغلی اجرا میکند.
* پیکربندی: نیاز به یک کلید API Apify (جایگزین نگهدارنده مکان <your_apify_api>) در هدر مجوز دارد. بدنه درخواست حاوی پارامترهای گردآوری شده است.
* ورودی: خروجی JSON از گره Compile_parm_sets.
* خروجی: یک آرایه JSON حاوی لیستهای شغلی واکشی شده.
* اعتبارنامهها (Credentials): نیاز به یک کلید API Apify دارد.
* مشکلات احتمالی: خرابیهای مجوز API، محدودیت نرخ (rate limiting)، قطع شدن شبکه یا پاسخهای نادرست API.
- جزئیات گره
Sticky Note2:
* محتوا: توضیح میدهد که این گره API Apify را فراخوانی میکند و نیاز به یک کلید API Apify و دسترسی به اکتر (actor) مشاغل لینکدین دارد.
۴. فیلتر و حذف موارد تکراری مشاغل (Job Filtering & Deduplication)
- هدف: پاکسازی دادههای خام شغلی با حذف موارد تکراری، شرکتهای مسدود شده و ورودیهای فاقد اطلاعات ضروری.
- گرهها (Nodes):
* Filter & Dedup Jobs (Code)
* If Jobs (If)
* Sticky Note3
- جزئیات گره
Filter & Dedup Jobs:
* نوع: n8n-nodes-base.code
* عملکرد:
* حذف ورودیهای شغلی تکراری بر اساس شناسه منحصربهفرد آنها.
* فیلتر کردن مشاغل از شرکتهای مسدود شده مشخص شده ("Jobot", "TieTalent", "Pryor Associates Executive Search").
* اطمینان از اینکه هر لیست شغلی شامل یک URL معتبر شرکت است.
* انجام یک حذف موارد تکراری نهایی بر اساس ترکیبی از عنوان شغلی و نام شرکت.
* ورودی: لیستهای شغلی خام از گره Fetch LinkedIn Jobs.
* خروجی: یک آرایه پاکسازی شده از لیستهای شغلی منحصربهفرد.
* مشکلات احتمالی: دادههای شغلی ناقص ممکن است بر دقت فیلتر تأثیر بگذارد. فیلتر کردن لیست سیاه به بزرگی و کوچکی حروف حساس است (case-sensitive).
- جزئیات گره
If Jobs:
* نوع: n8n-nodes-base.if
* عملکرد: بررسی میکند که آیا پس از فرآیند فیلتر و حذف موارد تکراری، شغلی باقی مانده است یا خیر. این تعیین میکند که آیا باید به امتیازدهی هوش مصنوعی یا شاخههای دیگر ادامه داد.
* ورودی: خروجی گره Filter & Dedup Jobs.
- جزئیات گره
Sticky Note3:
* محتوا: منطق اعمال شده برای فیلتر کردن و حذف موارد تکراری لیستهای شغلی را شرح میدهد.
۵. امتیازدهی شغلی مبتنی بر هوش مصنوعی (AI-Based Job Scoring)
- هدف: ارزیابی مرتبط بودن هر لیست شغلی با پروفایل کاندیدا با استفاده از یک مدل هوش مصنوعی.
- گرهها (Nodes):
* Scoring Jobs (OpenAI)
* Sticky Note4
- جزئیات گره
Scoring Jobs:
* نوع: @n8n/n8n-nodes-langchain.openAi
* عملکرد: برای هر شغل، جزئیات شغل، رزومه کاندیدا و اولویتها را به مدل GPT-4o-mini ارسال میکند. مدل یک شیء JSON حاوی شناسه شغل و امتیاز مرتبط بودن (۰-۱۰۰) را برمیگرداند.
* پیکربندی:
* مدل: gpt-4o-mini
* دما (Temperature): 0.4 (برای تعادل بین خلاقیت و پیشبینیپذیری)
* دستور سیستم (System Prompt): هوش مصنوعی را برای عمل به عنوان یک استخدامکننده متخصص و امتیازدهی صرفاً بر اساس معیارهای ارائه شده، آموزش میدهد.
* قالب خروجی: خروجی JSON سختگیرانه را برای اتوماسیون بدون مشکل اجباری میکند.
* ورودی: لیستهای شغلی فیلتر شده و بدون موارد تکراری از گره Filter & Dedup Jobs.
* خروجی: آرایهای از لیستهای شغلی که هر کدام اکنون شامل امتیاز مرتبط بودن اختصاص داده شده توسط هوش مصنوعی هستند.
* اعتبارنامهها (Credentials): نیاز به یک کلید API OpenAI دارد.
* مشکلات احتمالی: محدودیتهای نرخ API، خطا در قالب پاسخ هوش مصنوعی یا قطع شدن.
- جزئیات گره
Sticky Note4:
* محتوا: فرآیند امتیازدهی هوش مصنوعی و فیلتر کردن بعدی بر اساس امتیاز مرتبط بودن را توضیح میدهد.
۶. فیلتر امتیاز (Score Filtering)
- هدف: فیلتر کردن لیستهای شغلی که حداقل امتیاز مرتبط بودن تعیین شده توسط کاربر را برآورده نمیکنند.
- گرهها (Nodes):
* filtering jobs (Code)
- جزئیات گره
filtering jobs:
* نوع: n8n-nodes-base.code
* عملکرد: امتیاز مرتبط بودن تولید شده توسط هوش مصنوعی را برای هر شغل استخراج کرده و آن را با امتیاز هدف ارائه شده در ارسال فرم اولیه مقایسه میکند. فقط مشاغلی که این امتیاز هدف را برآورده میکنند یا از آن فراتر میروند، عبور داده میشوند.
* ورودی: آرایه لیستهای شغلی امتیازدهی شده از گره Scoring Jobs.
* خروجی: یک آرایه فیلتر شده حاوی فقط مشاغلی که امتیاز مرتبط بودن هدف را برآورده میکنند.
* مشکلات احتمالی: امتیازهای مرتبط بودن گمشده یا با فرمت نادرست در خروجی هوش مصنوعی.
۷. بررسی و غنیسازی مشاغل موجود (Existing Job Check & Enrichment)
- هدف: جلوگیری از ورودیهای تکراری در صفحه گسترده گوگل (Google Sheet) با مقایسه مشاغل امتیازدهی شده جدید با رکوردهای موجود.
- گرهها (Nodes):
* existing_jobs (Google Sheets)
* Enrich input 1 (Merge)
* rm_existing_jobs (Merge)
* If Jobs1 (If)
* If Jobs2 (If)
* Sticky Note5
- جزئیات گره
existing_jobs:
* نوع: n8n-nodes-base.googleSheets
* عملکرد: شناسههای شغلی را از ستون C در تب "Jobs Tracker" صفحه گسترده گوگل (Google Sheet) مشخص شده توسط کاربر میخواند.
* ورودی: آدرس URL صفحه گسترده گوگل (Google Sheet) ارائه شده از طریق فرم تریگر.
* خروجی: لیستی از رکوردهای شغلی موجود از صفحه گسترده گوگل (Google Sheet).
* اعتبارنامهها (Credentials): نیاز به احراز هویت OAuth2 صفحه گسترده گوگل (Google Sheets) دارد.
- جزئیات گره
Enrich input 1:
* نوع: n8n-nodes-base.merge
* عملکرد: مشاغل امتیازدهی شده جدید را با دادههای شغلی موجود از صفحه گسترده گوگل (Google Sheet) ادغام میکند. از تطابق تقریبی (fuzzy matching) بر روی شناسههای شغلی برای شناسایی تطابقهای احتمالی استفاده میکند.
* ورودی: مشاغل فیلتر شده جدید و دادههای شغلی موجود.
* خروجی: دادههای شغلی غنی شده، شامل اطلاعات موجود تطبیق داده شده.
- جزئیات گره
rm_existing_jobs:
* نوع: n8n-nodes-base.merge
* عملکرد: مشاغل غنی شده را با دادههای شغلی موجود مقایسه میکند. فقط ورودیهایی را که در صفحه گسترده گوگل (Google Sheet) تطابقی ندارند، نگه میدارد و به طور مؤثر موارد تکراری را فیلتر میکند.
* ورودی: مشاغل غنی شده و دادههای شغلی موجود.
* خروجی: لیستی از لیستهای شغلی جدید و منحصربهفرد که هنوز در صفحه گسترده گوگل (Google Sheet) نیستند.
- جزئیات گرههای
If Jobs1&If Jobs2:
* نوع: n8n-nodes-base.if
* عملکرد: این گرهها به عنوان بررسیهای شرطی عمل میکنند تا اطمینان حاصل شود که قبل از ادامه به مرحله نهایی افزودن آنها به صفحه گسترده گوگل (Google Sheet)، مشاغل جدیدی برای پردازش وجود دارد.
- جزئیات گره
Sticky Note5:
* محتوا: فرآیند مقایسه لیستهای شغلی جدید با ورودیهای موجود در صفحه گسترده گوگل (Google Sheet) برای جلوگیری از موارد تکراری را شرح میدهد.
۸. افزودن مشاغل جدید به صفحه گسترده گوگل (Add New Jobs to Google Sheets)
- هدف: افزودن لیست نهایی فرصتهای شغلی مرتبط و منحصربهفرد به صفحه گسترده گوگل (Google Sheet) کاربر.
- گرهها (Nodes):
* Add Jobs (Google Sheets)
- جزئیات گره
Add Jobs:
* نوع: n8n-nodes-base.googleSheets
* عملکرد: دادههای شغلی جدید را به عنوان ردیف به تب "Jobs Tracker" مشخص شده در صفحه گسترده گوگل (Google Sheet) اضافه میکند.
* پیکربندی: فیلدهای داده (شناسه شغل، امتیاز مرتبط بودن، حقوق، اطلاعات تماس، URLها، تاریخها، جزئیات شرکت و غیره) را به ستونهای صحیح نگاشت میکند. در حالت "append" (افزودن) عمل میکند.
* ورودی: لیست لیستهای شغلی جدید و منحصربهفرد از گره rm_existing_jobs.
* اعتبارنامهها (Credentials): نیاز به احراز هویت OAuth2 صفحه گسترده گوگل (Google Sheets) دارد.
* مشکلات احتمالی: محدودیتهای سهمیه API صفحه گسترده گوگل (Google Sheets)، تداخل نوشتن یا آدرس URL نادرست صفحه.
۹. پشتیبانی و یادداشتهای گردش کار (Workflow Support & Notes)
- هدف: ارائه راهنمایی جامع و زمینه برای کاربران و توسعهدهندگانی که با گردش کار (Workflow) تعامل دارند.
- گرهها (Nodes):
* گرههای متعدد Sticky Note.
- جزئیات:
* یادداشت اولیه Sticky Note: این یادداشت که در ابتدای گردش کار (Workflow) قرار دارد، یک نمای کلی سطح بالا، دستورالعملهای راهاندازی (شامل الزامات اعتبارنامهها و پیوندی به یک الگوی صفحه گسترده گوگل) و راهنمایی در مورد نحوه شروع گردش کار (Workflow) از طریق فرم را ارائه میدهد.
* یادداشتهای Inline Sticky Notes: یادداشتهای اضافی به صورت استراتژیک قبل از گرههای کلیدی قرار گرفتهاند تا توضیحات و زمینه خاصی را برای مراحل فردی گردش کار (Workflow) ارائه دهند.
جدول خلاصه (Summary Table)
| نام گره (Node Name) | نوع گره (Node Type) | نقش عملکردی (Functional Role) | گره(های) ورودی (Input Node(s)) | گره(های) خروجی (Output Node(s)) | محتوای یادداشت چسبان مرتبط (Associated Sticky Note Content) |
|---|---|---|---|---|---|
On form submission | n8n-nodes-base.formTrigger | جمعآوری ورودی کاربر و راهاندازی گردش کار (workflow) | - | Compile_parm_sets | ورودی کاربر مانند رزومه، ترجیحات و لینک Google Sheet را از طریق یک فرم عمومی جمعآوری میکند. |
Compile_parm_sets | n8n-nodes-base.code | نگاشت ورودیهای فرم به کدهای پارامتر Apify API | On form submission | Fetch LinkedIn Jobs | انتخابهای فرم (نوع قرارداد، تجربه و غیره) را به پارامترهای آماده برای API تبدیل میکند. |
Fetch LinkedIn Jobs | n8n-nodes-base.httpRequest | دریافت لیست مشاغل از Apify LinkedIn Jobs API | Compile_parm_sets | Filter & Dedup Jobs | بر اساس پارامترهای شما، لیست مشاغل را از Apify API دریافت میکند. نیاز به کلید Apify API و فعالکننده LinkedIn Jobs اجارهای دارد. |
Filter & Dedup Jobs | n8n-nodes-base.code | حذف موارد تکراری، شرکتهای لیست سیاه و مشاغل نامعتبر | Fetch LinkedIn Jobs | If Jobs, Enrich input 1 | موارد تکراری را حذف، شرکتهای لیست سیاه را فیلتر و لیستهایی را که پروفایل شرکت معتبر ندارند، حذف میکند. |
If Jobs | n8n-nodes-base.if | بررسی وجود مشاغل پس از فیلتر کردن | Filter & Dedup Jobs | Scoring Jobs | بررسی میکند که آیا پس از فیلتر اولیه، شغلی باقی مانده است یا خیر. |
Scoring Jobs | @n8n/n8n-nodes-langchain.openAi | امتیازدهی مرتبط بودن شغل با استفاده از GPT-4o-mini | If Jobs | filtering jobs | از OpenAI GPT-4o-mini برای امتیازدهی مرتبط بودن هر شغل با رزومه و ترجیحات کاندیدا (۰-۱۰۰) استفاده میکند. |
filtering jobs | n8n-nodes-base.code | فیلتر کردن مشاغل بر اساس امتیاز مرتبط بودن هوش مصنوعی | Scoring Jobs | existing_jobs | مشاغلی را که امتیاز مرتبط بودن مورد نظر کاربر را ندارند، حذف میکند. |
existing_jobs | n8n-nodes-base.googleSheets | خواندن شناسههای شغلی موجود از Google Sheet | filtering jobs | Enrich input 1 | شناسههای شغلی را از Google Sheet مشخص شده برای بررسی موارد تکراری بازیابی میکند. نیاز به Google Sheets OAuth2 دارد. |
Enrich input 1 | n8n-nodes-base.merge | ادغام مشاغل جدید با دادههای موجود | filtering jobs, existing_jobs | rm_existing_jobs | دادههای شغلی جدید را با تطبیق آن با رکوردهای موجود از Google Sheet غنیسازی میکند. |
rm_existing_jobs | n8n-nodes-base.merge | حذف مشاغل موجود در Google Sheet | Enrich input 1, existing_jobs | If Jobs1 | مشاغلی را که از قبل در Google Sheet لیست شدهاند حذف میکند و اطمینان میدهد که فقط مشاغل جدید پردازش میشوند. |
If Jobs1 | n8n-nodes-base.if | بررسی وجود مشاغل جدید پس از حذف موارد تکراری | rm_existing_jobs | Add Jobs | بررسی میکند که آیا مشاغل جدید و منحصر به فردی برای اضافه شدن به Google Sheet وجود دارد یا خیر. |
Add Jobs | n8n-nodes-base.googleSheets | افزودن مشاغل جدید به Google Sheet | If Jobs1 | - | لیست نهایی مشاغل مرتبط و منحصر به فرد را به تب "Jobs Tracker" در Google Sheet اضافه میکند. نیاز به OAuth2 دارد. |
Sticky Note (various) | n8n-nodes-base.stickyNote | ارائه مستندات و دستورالعملها | - | - | توضیحات درون خطی، راهنمایی راهاندازی و نمای کلی گردش کار را ارائه میدهد. |
Nodeهای استفادهشده
سوالات متداول
این گردش کار n8n چگونه به من در یافتن شغل کمک میکند؟▾
این گردش کار با خودکارسازی فرآیند جستجو، امتیازدهی و پیگیری مشاغل لینکدین، به شما کمک میکند تا به سرعت مشاغل مرتبط با پروفایل و ترجیحات خود را شناسایی کنید. GPT-4o-mini مرتبط بودن هر شغل را ارزیابی کرده و نتایج در Google Sheets ذخیره میشود.
چه ابزارهایی در این گردش کار استفاده شده است؟▾
این گردش کار از n8n برای اتوماسیون، GPT-4o-mini از OpenAI برای امتیازدهی هوش مصنوعی، Apify LinkedIn Jobs Scraper برای جمعآوری دادههای شغلی و Google Sheets برای ذخیره و پیگیری نتایج استفاده میکند.
چگونه میتوانم این گردش کار را راهاندازی کنم؟▾
شما باید فرم ورودی را با معیارهای جستجوی شغل، رزومه، ترجیحات و URL Google Sheet خود پر کنید. گردش کار به طور خودکار شروع شده و مشاغل مرتبط را جمعآوری و امتیازدهی میکند.
workflowهای مرتبط
- ساخت پایگاه دانش با Google Docs، Discord و GPT-4o-mini در n…Support
- برنامهریز محتوای پینترست ۷ روزه با Notion و ایمیلSocial Media
- پردازش تصاویر و PDF با Gemini AI در n8n: ۵ روش کاربردیBuilding Blocks
- ساخت محتوا با هوش مصنوعی برای ChatGPT، Gemini و Google با n…AI
- ادغام عامل هوش مصنوعی با Bubble و پروتکل MCPBuilding Blocks
- عامل هوش مصنوعی برای چت با فایلهای Supabase و Google DriveEngineering
