عکس پروفایل رویداد هوش مصنوعی ۱۴۰۴ر

رویداد هوش مصنوعی ۱۴۰۴

۱۴۷ عضو
undefined آموزش کامل Profile در Docker Compose وقتی با Docker Compose کار می‌کنیم، همیشه لازم نیست *همه سرویس‌ها را بالا بیاوریم.
بعضی سرویس‌ها فقط در حالت خاصی نیاز می‌شوند؛ مثل development، monitoring یا debug.

اینجاست که قابلیت
profiles وارد می‌شود.

پروفایل یعنی:
دسته‌بندی سرویس‌ها برای اجرای انتخابی


undefined چرا profiles مهم است؟

چون می‌توانیم:

- سرویس‌های dev را فقط در محیط توسعه بالا بیاوریم
- سرویس‌های مانیتورینگ را فقط وقتی لازم است فعال کنیم
- ابزارهای مدیریتی مثل Adminer یا Mailhog را فقط در توسعه اجرا کنیم
- پروژه را سبک‌تر و قابل‌کنترل‌تر نگه داریم



undefined مثال ساده از profiles

services:
  api:
    build: .

  db:
    image: postgres

  adminer:
    image: adminer
    profiles:
      - dev

اجرای معمولی (بدون dev):

docker compose up


اجرا می‌شود:

- api  
- db  

 اجرای dev:

docker compose --profile dev up


اجرا می‌شود:

- api  
- db  
- adminer  


 🔀 چند پروفایل همزمان

```yaml
services:
  redis:
    image: redis
    profiles:
      - cache

  adminer:
    image: adminer
    profiles:
      - dev

اجرا فقط dev:


docker compose --profile dev up

اجرا dev + cache:


docker compose --profile dev --profile cache up


undefined نکته طلایی
سرویس‌هایی که
profile ندارند همیشه اجرا می‌شوند.
پس سرویس‌های اصلی پروژه را بدون profile تعریف می‌کنیم.


undefined یک مثال واقعی از پروژه development

services:

  api:
    build: .

  db:
    image: postgres

  redis:
    image: redis

  adminer:
    image: adminer
    profiles:
      - dev

  mailhog:
    image: mailhog/mailhog
    profiles:
      - dev

  prometheus:
    image: prom/prometheus
    profiles:
      - monitoring

  grafana:
    image: grafana/grafana
    profiles:
      - monitoring

حالت عادی:


docker compose up

→ api + db + redis

حالت dev:


docker compose --profile dev up

→ adminer + mailhog هم اضافه می‌شوند

### حالت monitoring:


docker compose --profile monitoring up

→ prometheus + grafana اضافه می‌شوند


کنترل پروفایل با ENV
می‌توانی پروفایل را با یک متغیر محیطی فعال کنی:


COMPOSE_PROFILES=dev
docker compose up

یا داخل `.env`:


COMPOSE_PROFILES=dev

برای تیم‌ها فوق‌العاده کاربردی است.


undefined تفاوت profiles با docker-compose.override چیست؟

خیلی‌ها این دو را اشتباه می‌گیرند:

-
profiles → فعال/غیرفعال کردن سرویس
-
override files → تغییر کانفیگ سرویس*

پروفایل در یک فایل قابل مدیریت است، اما override معمولاً برای تغییر تنظیمات در محیط‌های مختلف استفاده می‌شود.

undefined الگوی حرفه‌ای برای پروژه‌های بزرگ
پروژه‌های جدی معمولاً پروفایل‌های زیر را دارند:
- dev → ابزارهای توسعه - debug → trace و logging - monitoring → Grafana/Prometheus - worker → پردازش‌های پس‌زمینه - tools → ابزارهای مدیریتی مثل Adminer/pgAdmin


#Docker #DockerCompose #DevOps #Backend #Profiles #Containers #Microservices #Programming #SoftwareEngineering #Developers #Ops #CloudNative #Tutorial #DevTools
undefined۳

۶۰۷

۱۷:۵۷

Build a Large Language Model - DevTwitter.pdf

۵.۷۶ مگابایت

معرفی کتاب Build a Large Language Model (From Scratch)
کتاب *«Build a Large Language Model (From Scratch)» راهنمایی جامع و عملی برای درک و پیاده‌سازی مدل‌های زبانی بزرگ، همانند GPT، از پایه است. این کتاب با زبانی روان و ساختاری مرحله‌به‌مرحله، خواننده را از مفاهیم بنیادی مدل‌های زبانی و نحوه‌ی کار با داده‌های متنی، تا طراحی سازوکار توجه و ساخت کامل یک مدل GPT هدایت می‌کند.

در ادامه، روند
آموزش مدل روی داده‌های بدون برچسب، تولید متن، و تکنیک‌های حرفه‌ای برای بهینه‌سازی حلقه‌ی آموزش با جزئیات دقیق تشریح شده است. ضمائم کتاب نیز شامل آموزش مقدماتی PyTorch، منابع تکمیلی، پاسخ تمرین‌ها، و نکات پیشرفته برای توسعه‌ی کارآمد مدل است.

این کتاب انتخابی مناسب برای
دانشجویان، پژوهشگران، و مهندسان یادگیری عمیق* است که می‌خواهند مدل‌های زبانی را عمیقاً بفهمند و از صفر بسازند.

#LLM #GPT #DeepLearning #AI #MachineLearning #NeuralNetworks #PyTorch #Transformers #NLP #ArtificialIntelligence

لینک گروه در پیام‌رسان بله:ble.ir/join/6W3sRRZn4vلینک کانال در پیام‌رسان بله:ble.ir/join/3XeTc12Jxj
undefined۱۲

۴K

۱۳:۴۳

Ansible چیه و چرا باید ازش استفاده کنی؟
فکر کن میخوای یک برنامه رو روی 50 تا سرور نصب کنی. معمولا باید یکی یکی SSH بزنی و دستورات رو اجرا کنی، درسته؟ خسته کننده و پر از اشتباه!
Ansible اومده که این دردسر رو حل کنه
چی کار میکنه؟به جای اینکه تو دستی کارها رو انجام بدی، یه فایل ساده مینویسی که میگی چیکار باید بشه. بعد Ansible خودش میره روی همه سرورها اون کارها رو انجام میده.
چرا عالیه؟
- نیازی نیست چیزی روی سرورها نصب کنی، فقط SSH کافیه- با زبان ساده YAML مینویسی، نه کد پیچیده- یه بار بنویس، روی صدها سرور اجرا کن- اگه چند بار اجرا کنی، مشکلی پیش نمیاد، فقط چیزهای لازم رو تغییر میده
مثال واقعی:میخوای Nginx رو روی 20 تا سرور نصب کنی؟ به جای 20 بار SSH زدن، یه فایل 10 خطی مینویسی و Ansible همه کارو میکنه!
برای کیه؟برای هر کسی که با سرور سر و کار داره، از DevOps Engineer تا سیس ادمین
#Ansible #DevOps #اتوماسیون #Automation #سرور #Linux #ConfigManagement #IaC #دواپس #IT #CloudComputing #SystemAdmin #TechTips #کدنویسی

لینک گروه در پیام‌رسان بله:ble.ir/join/6W3sRRZn4vلینک کانال در پیام‌رسان بله:ble.ir/join/3XeTc12Jxj
undefined۱

۵۵۸

۱۷:۴۰

با سلام و احترام،
به اطلاع می‌رسانیم سرویس ارسال رمز عبور موقت (OTP) مجدداً فعال شده و اکنون فرآیند ثبت‌نام و ایجاد تیم بدون مشکل قابل انجام است.
از اختلال به‌وجودآمده صمیمانه عذرخواهی می‌کنیم.
با احترام
تیم فنی مسابقات آزمایشگاه مرجع ارزیابی هوش مصنوعی
ادرس وب سایت : http://challenges.iranailab.ir/

۶۳۰

۹:۴۸

چطور سرویس‌هایی مثل «شکن» تحریم‌ها را دور می‌زنند؟برای درک این موضوع، اول باید بدانیم سایت‌های خارجی اصلاً چطور ما را تحریم می‌کنند.
نگهبان‌های اینترنتی و مشکل کارت ملی (IP)
تصور کنید می‌خواهید وارد یک نمایشگاه بین‌المللی شوید، اما دمِ در یک نگهبان ایستاده و کارت ملی شما را چک می‌کند. اگر ببیند صادره از ایران است، به شما اجازه ورود نمی‌دهد (این همان خطای معروف ۴۰۳ در اینترنت است).
در دنیای اینترنت، این «کارت ملی» در واقع همان آدرس IP شماست که نشان می‌دهد از چه کشوری به اینترنت وصل شده‌اید.
شکن چطور این نگهبان را فریب می‌دهد؟
همان‌طور که گفتیم، DNS مثل یک «دفترچه تلفن» است. وقتی شما آدرس یک سایتِ تحریم‌شده (مثلاً سایت برنامه‌نویسی گوگل) را وارد می‌کنید، سرویسِ شکن یک ترفند هوشمندانه پیاده می‌کند:
۱. تشخیص سایت ممنوعه: شکن یک لیست بلندبالا از سایت‌هایی دارد که ایران را تحریم کرده‌اند. وقتی شما آدرس سایت را می‌نویسید، شکن اول نگاه می‌کند که آیا این سایت در لیست تحریمی‌ها هست یا نه.
۲. آدرسِ دوستِ واسطه: اگر سایت تحریم نبود، شکن آدرس واقعی آن را به شما می‌دهد. اما اگر تحریم بود، شکن به جای آدرس واقعیِ سایت، آدرسِ یک سرورِ متعلق به خودش در خارج از کشور را به کامپیوتر شما می‌دهد.
۳. پیکِ موتوریِ نامرئی: کامپیوتر شما (بدون اینکه شما متوجه شوید) درخواستش را به آن سرور خارجی می‌فرستد. آن سرور خارجی به جای شما وارد سایتِ تحریم‌شده می‌شود، اطلاعات صفحه را می‌گیرد و برای شما می‌فرستد.
نتیجه: سایتِ تحریم‌کننده فریب می‌خورد! چون فکر می‌کند کسی که وارد سایت شده، همان سرور خارجی است (که IP غیرایرانی دارد)، نه شما که در ایران نشسته‌اید.
یک سوال مهم: چرا این کار از VPN بهتر است؟شاید بپرسید خب VPN هم همین کار را می‌کند، پس فرقشان چیست؟ تفاوت در «هوشمندی» است.
وقتی VPN روشن می‌کنید: مثل این است که کل وسایل نقلیه شهر را مجبور کنید از یک تونل باریک در خارج از کشور عبور کنند. فرقی نمی‌کند بخواهید سایت بانک ایرانی را باز کنید یا یک سایت خارجی؛ همه چیز از آن تونل می‌رود. نتیجه؟ سرعت اینترنت افت می‌کند، مصرف حجم بالا می‌رود و سایت‌های داخلی به مشکل می‌خورند.وقتی از DNS شکن استفاده می‌کنید: این سیستم فقط و فقط برای همان چند سایتِ تحریم‌شده نقش واسطه را بازی می‌کند. اگر شما یک سایت عادی، دانلود فیلم یا یک سایت ایرانی را باز کنید، شکن کنار می‌رود و شما با بالاترین سرعت ممکن و ترافیک مستقیم به کارتان می‌رسید.

لینک گروه در پیام‌رسان بله:ble.ir/join/6W3sRRZn4vلینک کانال در پیام‌رسان بله:ble.ir/join/3XeTc12Jxj
undefined۷
undefined۱

۱.۴K

۹:۱۹

src.zip

۹.۴۶ مگابایت

سورس‌کد Claude فاش شد!
️ شرکت Anthropic با یک اشتباه غیرمنتظره غافلگیر شد. به‌دلیل باقی ماندن یک فایل Source Map در یکی از پکیج‌های npm این شرکت، تمام سورس‌کد ابزار Claude (بیش از ۵۰۰ هزار خط کد) به صورت عمومی در دسترس قرار گرفت. برنامه‌نویسان به‌سرعت از فایل‌ها بکاپ گرفتند و موجی از مخازن جدید در GitHub ایجاد شد.
ما نیز این سورس‌کد را در فایل ZIP زیر برای مطالعه‌ی شما قرار داده‌ایم.

لینک گروه در پیام‌رسان بله:ble.ir/join/6W3sRRZn4vلینک کانال در پیام‌رسان بله:@IranAi1404

۳.۵K

۱۶:۳۹

thumbnail
با سلام و احترام؛
ما در تیم آزمایشگاه مرجع ارزیابی محصولات و خدمات هوش مصنوعی بر این باوریم که مسیر آموزش و یادگیری، سفری بی‌پایان است. از آنجا که رسالت اصلی ما برگزاری مسابقات تخصصی هوش مصنوعی با هدف ایجاد بستری پویا برای رقابت، رشد و شکوفایی استعدادهای درخشان این مرز و بوم است، همواره در تلاشیم تا گام‌های مؤثری برای ارتقای دانش فنی جامعه برداریم.
در همین راستا، برای ایفای هرچه بهترِ این رسالت و همراهیِ مستمر با شما عزیزان، بخشی را با عنوان «وبلاگ» طراحی کرده‌ایم. در این بخش، بر آن هستیم تا با تولید و انتشار محتواهای آموزشیِ کاربردی، به‌روز و تخصصی در حوزه‌های کلیدی نظیر یادگیری ماشین (Machine Learning)، شبکه‌های کامپیوتری، مهندسی نرم‌افزار و دیگر فناوری‌های نوظهور، منبعی معتبر برای افزایش دانش و مهارت‌های شما فراهم آوریم.
لازم به ذکر است که در حال حاضر، امکان انتشار محتوا در این بخش برای کاربران فعال نیست، اما تیم فنی ما با جدیت در حال آماده‌سازی و بهینه‌سازی زیرساخت‌های آن است. مفتخریم اعلام کنیم که این قابلیت در روزهای آینده به‌طور کامل فعال خواهد شد و بی‌صبرانه منتظر حضور و تعامل شما در این فضای آموزشی جدید هستیم.
از همراهی و اعتماد شما سپاسگزاریم.
لینک گروه در پیام‌رسان بله:ble.ir/join/6W3sRRZn4vلینک کانال در پیام‌رسان بله:@IranAi1404
ادرس سایت ما
undefined۳

۳K

۱۵:۳۸

سه پست جدید منتشر شد undefined
undefined شبکه در Docker Compose — راهنمای کاملچطور کانتینرهات رو ایزوله کنی، معماری امن بسازی و ارتباط بین سرویس‌ها رو کنترل کنی.
undefined Kubernetes چیست؟ — از مفهوم تا کاربردبا K8s آشنا شو؛ سیستمی که استقرار، مقیاس‌بندی و نگهداری اپلیکیشن‌هات رو خودکار می‌کنه.
undefined gRPC چیست؟ — از مفهوم تا تفاوت با RESTاگه REST بلدی، وقتشه با gRPC آشنا بشی؛ پروتکلی سریع‌تر، سبک‌تر و قدرتمندتر برای ارتباط بین سرویس‌ها.
از اینجا مقالات رو بخون
لینک گروه در پیام‌رسان بله:ble.ir/join/6W3sRRZn4vلینک کانال در پیام‌رسان بله:@IranAi1404
undefined۳

۱.۶K

۱۴:۲۱

thumbnail
سلام و عرض ادب،
در راستای هدفی که از ابتدا دنبال می‌کردیم، اکنون این امکان فراهم شده است که شما بتوانید پست‌ها و نوشته‌های خود را در سایت ما منتشر کنید تا دیگران نیز از مطالب ارزشمندتان بهره‌مند شوند.
امیدواریم این گام کوچک بتواند سهمی در گسترش دانش و انتشار مطالب علمی و فناوری داشته باشد.
ادرس سایت ما

لینک گروه در پیام‌رسان بله:ble.ir/join/6W3sRRZn4vلینک کانال در پیام‌رسان بله:@IranAi1404
undefined۵

۶۵۷

۱۲:۳۶

به اطلاع شرکت‌کنندگان گرامی می‌رساند:
با توجه به عدم دسترسی مناسب به اینترنت و فراهم نبودن زیرساخت‌های لازم برای برگزاری مطلوب مسابقات هوش مصنوعی، برگزاری این مسابقات در تاریخ اعلام‌شده امکان‌پذیر نیست.
به همین دلیل، مسابقات به زمان دیگری موکول می‌شود و تاریخ جدید متعاقباً اطلاع‌رسانی خواهد شد.
از همراهی و شکیبایی شما سپاسگزاریم.
undefined۴
undefined۲

۴۳۲

۱۰:۰۱