Dev Perfects
40 subscribers
9.23K photos
1.26K videos
468 files
13K links
بخوام خیلی خلاصه بگم
این کانال میاد مطالب کانالای خفن تو حوزه تکنولوژی و برنامه نویسی رو جمع میکنه

پست پین رو بخونید
https://t.iss.one/dev_perfects/455


ارتباط:
https://t.iss.one/HidenChat_Bot?start=936082426
Download Telegram
استفاده مسئولانه از هوش مصنوعی با Llama2 و ChatGPT
سیاست‌های استفاده این مدل‌ها رو ترجمه فارسیشو در گیت هاب قرار دادم که چه خط قرمز هایی وجود داره و اینکه استفاده نادرست چه اسیبی میتونه وارد کنه و ما چه مسئولیت هایی داریم
جزئیات در:
https://github.com/SamanBarahoie/llm-policy

@DevTwitter | <saman barahoie/>
Forwarded from Linuxor ?
تا حالا به حجم ایمیج داکرت زل زدی و با خودت گفتی "این توش چیه دیگه؟!" ایمیج‌های داکر گاهی بی‌دلیل حجیم می‌شن و پیدا کردن اینکه چی اضافیه کار حضرت فیله. dive بهت اجازه می‌ده لایه‌به‌لایه ایمیج رو بکاوی و ببینی دقیقاً چی فضا گرفته. دیگه از حدس و گمان خبری نیست! اینطوری فضای هدر رفته رو پیدا می‌کنی و ایمیج‌هات رو سبک می‌کنی. برای هرکسی که ایمیج داکر می‌سازه و دنبال بهینه‌سازیه، فوق‌العاده کاربردیه.


github.com/wagoodman/dive

@Linuxor
امروز با Neuron AI آشنا شدم که خیلی جالب بود!

چی کار می‌کنه؟
یک AI Agent که میتونید ازش توی اپ‌های PHP استفاده کنید.
تو این مقاله اومده باهاش ویدئو‌های یوتیوب رو خلاصه کرده که میتونه خیلی بدرد‌بخور باشه.
این ابزار:
- متن ویدیو رو از YouTube API می‌گیره
- با Claude AI تحلیل می‌کنه
- خلاصه‌ای مفصل و نکات کلیدی ارائه می‌ده

چرا جالبه؟
- راحت توی پروژه‌های Laravel/Symfony ادغام میشه
- کاملاً ماژولاره
- مانیتورینگ داخلی برای production داره

به چه دردی می‌خوره؟
- آموزشی: بررسی سریع محتوای آموزشی
- خبری: تحلیل ترندهای ویدیویی
- محتوایی: تولید خلاصه برای پست‌ها

لینک مقاله کامل:
https://inspector.dev/php-ai-agent-summarizing-youtube-videos/

مستندات Neuron AI:
https://www.neuron-ai.dev/

@DevTwitter | <Milad Niroee/>
Forwarded from Geek Alerts
ادوبی ورژن بتای فتوشاپ برای اندروید رو منتشر کرد. در طول ورژن اولیه میشه رایگان ازش استغاده کرد.

ابزارهای نسخه موبایل مشابه دسکتاپه و بعضی ویژگی‌های مبتنی بر هوش مصنوعی مثل Generative Fill هم بهش اضافه شده. اندروید ۱۱ و رم ۶ گیگابایت حداقل‌های نصب این اپلیکیشن هستن. هدف ادوبی هم از این کار جذب کاربران جدیده که از گوشی برای تولید محتوا استفاده میکنن.

🔗 Google Play
🤓 abolfazl @geekalerts
Please open Telegram to view this post
VIEW IN TELEGRAM
توی این ویدئو با هم فورجیو (Forgejo) رو روی یک سرور لینوکسی نصب کردیم. همه‌ی مراحل رو قدم‌به‌قدم جلو رفتیم.

ویدئو رو می‌تونید از لینک‌های زیر ببینید:

یوتیوب:
https://youtu.be/l5h2jK5m5Ho

پیرتوب:
https://tubedu.org/w/tqFEkzHfiTktGQohS6pHoA

برای مشاهده‌ی لیست کامل دستورات استفاده‌شده در ویدئو:
https://framagit.org/-/snippets/7501

وب‌سایت رسمی فورجیو:
https://forgejo.org


مقاله من درمورد خودمیزبانی:
https://blogfa.sohrabbehdani.ir/whyselfhosting/



@SohrabContents
Forwarded from tiivik️
⭕️سرویس FindStarlink این امکان را به شما می‌دهد که زمان قابل مشاهده بودن ماهواره‌های Starlink را در یک محل خاص بررسی کنید، فقط کافی است محل مورد نظر خود را وارد کنید تا این سایت برنامه عبور ماهواره‌های Starlink از آن منطقه را نمایش دهد، همچنین می‌توانید زمان دقیق، جهت و مدت قابل مشاهده بودن این ماهواره‌ها را هم بفهمید.
🆔
@tiivik
Forwarded from tiivik️
⭕️سرویس coinscatalog کاتالوگ سکه‌ها، اطلاعات کامل از جمله قیمت‌ها و عکس‌ها، جنس فلز، عیار، تعداد ضرب، اندازه، وزن، توضیحات روی سکه و پشت سکه و نوشته‌های آن را ارائه می‌دهد.
🆔
@tiivik
Forwarded from tiivik️
⭕️بررسی یک پرونده مالی: “یک نهنگ رمزارزی ۲۰ میلیون دلار درآمد کسب کرد! 🐋💰
تحقیقات جدید نشان می‌دهد یک معامله‌گر بزرگ (به اصطلاح “نهنگ”) در صرافی Hyperliquid، با انجام معاملات پرریسک و استفاده از اهرم مالی بالا، در عرض دو هفته حدود ۲۰ میلیون دلار سود کرده است!

🔍 تحقیقات
ZachXBT (یک محقق معروف رمزارزی) نشان می‌دهد این فرد ممکن است در فعالیت‌های غیرقانونی هم دخیل باشد.
🆔
@tiivik
Forwarded from tiivik️
⭕️مصاحبه با یک مامور اطلاعاتی: آندری اولگوویچ بیزروکوف - بیش از ۲۰ سال به عنوان مأمور اطلاعاتی (جاسوس) در آمریکا و اروپا فعالیت کرده است؛ او مجبور بود راه ارتباط با هر شخصی را پیدا کند، ارتباطات وسیعی برقرار کند و به حلقه‌های بسیار نخبه نفوذ کند.

او برای ما توضیح می‌دهد که چطور به افراد موردنظر دسترسی پیدا کنیم، آن‌ها را با خود همراه کنیم و به کمکشان اهداف خود را پیش ببریم.

تایم‌لاین گفتگو:
چه کسانی به عنوان مأمور اطلاعاتی انتخاب می‌شوند
مأموران اطلاعاتی چه اطلاعاتی جمع‌آوری می‌کنند
چگونه شبکه ارتباط برقرار کنیم و......
📥مصاحبه در گروه گفت و گو
🆔
@tiivik
Forwarded from tiivik️
⭕️پایگاه داده Rulers شامل فهرست‌های تاریخی و فعلی رؤسای کشورها، دولت‌ها، همچنین وزرای سطوح مختلف و مدیران سازمان‌های بین‌المللی می‌باشد.
🆔
@tiivik
This media is not supported in your browser
VIEW IN TELEGRAM
از چند وقت پیش که در حال ساخت مدل زبانی بودم، ساختار شبکه‌ی عصبی اونها منو کاملاً بهم ریخت. چون متوجه شدم که هر جوری اونو بسازم نمیتونم دقیقاً جوابهای اونو حدس بزنم! یعنی هر چی دامنه‌ی لغات و یادگیری بالا بره، احتمالات تودرتو در انتخاب کلمات اونقدر متنوع میشن که عملاً دیگه اون مدل صاحب آگاهی میشه و از یک روبات دقیق با کارهای تعریف شده فاصله می‌گیرن! برای همین متوقف شدم! دیدم حتا تصورش هم ترسناکه که برنامه‌ی تو موبایلم در مورد خودم نظر داشته باشه!
حالا با اینکه شبکه های عصبی رو دنبال نمیکنم باز متعجب میشم چون فقط یک امکان جمله سازی آزاد که بهش دادم باعث شد اونو تبدیل به یک شاعر شوریده کنه! چون جملات جدیدی که حتا به کمک جملات انتخابی و دقیق و آموزش داده شده می سازه هم باز فلسفی و تکان دهنده میشن!
بزرگترین درس در این مسیر برای خودم این بود که پس ما هم جز روبات یا ماشین های تنظیم شده نیستیم! اون برداشتی هم که نسبت به احساسات خودمون داریم توهماتی بیش نیستن. بله خود ما روبات های کربنی و کاملاً (تأکید میکنم) کاملاً برنامه ریزی شده هستیم! دغدغه‌ی این روزهام حالا گاهی هک کردن خودمه! یعنی عملکردی فارغ از روتین بگیرم!
تاحالا شده دلتون بخواد built-in های پایتون تبدیل به async بشن؟
اگه آره ابزار gevent این کار میکنه!.
با استفاده از geven و ایموپرت کردن و صدا زدن مانکی‌پچ میتونید این‌کار انجام بدید.
import gevent
gevent.monky_patch()

با این کار اونها تبدیل میشن به async. اما باید توجه کنید کنه مانکی‌پچ ابزارهایی 3rd پارتی و کتابخونه‌هاتون رو نمیتونه async کنه. برای مثال روی requests بخوایید همچین کاری کنید این اتفاق نخواهد افتاد. ابزارها باید مانکی‌پچینگ رو ساپورت کنن تا این اتفاق بیوفته. اما اگه بخوایید requests رو async ران کنید چی؟

اسم gevent از greenlet میاد. یک ابزار pesudo-thread هستش. یعنی چی؟

ما ۲ مدل مولتی تردینگ داریم، یک مدلش که یک مدل‌هست که خود os هندل میکنه. داخل اون کانتکس سوییچ توسط os انجام میشه و بسیار سخت‌گیر هستش!
برای مثال هر ترد ۵ ثانیه زمان اجرا داره و برای os مهم نیست که اون ترد کجای کار هستش. اون رو متوقف میکنه و بقیه رو اجرا میکنه.

کانتکس سوییچ چیه؟ همین که گفتم :). همین جابجا شدن رو میگن کانتکس سوییچ.


یک مدل ترد داریم که بهشون cooperative threading میگن. ابزارهایی مثل greenlet از این سبک استفاده میکنن. این ابزار یک ایونت لوپ برای خودش داره که از ایونت لوپ asyncio و بقیه چیزا جدا هستش. و وقتی چندتا ترد رو spawn میکنه این تردها باهم همکاری میکنن ولی یعنی چی؟

یعنی اگر ترد اول یک ریکوئست http زده و نیاز داره صبر کنه خودش میگه من رو متوقف کن تا دیتایی که لازم دارم بیاد و بقیه رو ران کن.


حالا تمام اینا گفتم که بگم شما میتونید با استفاده از ساختن gevent و درنهایت spawn کردن یا همون ران کردنش اونا اجرا کنید.

با این ابزار میشه parallel هم چیز میزا رو ران کرد. که بعدا اگه خوشتون اومد مینویسم.

در نهایت باید توجه داشته باشید که این ابزار برای اینکه GIL اذیتش نکنه صرفا رو یک ترد اجرا میشه و ایونت لوم خودش داره.

نکته بعدی که هست این ابزار برای تسک‌های I/O bound خوبه و اگ میخوایید cpu bound کار کنید احتمالا همون ترد عادی بهتر خواهد بود

آره خلاصه :)
@TorhamDevCH
TorhamDev | تورهام 😳
تاحالا شده دلتون بخواد built-in های پایتون تبدیل به async بشن؟ اگه آره ابزار gevent این کار میکنه!. با استفاده از geven و ایموپرت کردن و صدا زدن مانکی‌پچ میتونید این‌کار انجام بدید. import gevent gevent.monky_patch() با این کار اونها تبدیل میشن به async.…
parallel with gevent

تو پست قبلی گفتم که gevent چی هست و چطور خوبه ازش استفاده و به چه دردی میخوره. یکی از کارهایی دیگه که باهاش میتونید انجام بدید true parallelism هستش. یعنی چندین تسک رو به صورت همزمان اجرا کنید. برای این کار باید از تکنیکی استفاده کنید به اسم prefork (پری‌فورک).

اما prefork چی هست؟
پری‌فورک به شکل ساده میشه زمانی که یک ترد میخاد اجرا بشه و قبل از اجرا شدنش چندین ترد دیگه رو هم اجرا میکنه و این ترد خودش به عنوان ترد master عمل میکنه و بقیه تردها رو کنترل میکنه.

برای مثال ابزار گونیکورن که خیلی‌هاتو باهاش آشنا هستید و داخل پروژه های جنگو و ... ازش استفاده میکنید دقیقا همچین کاری میکنه. زمانی که شما یک پروژه جنگو رو با استفاده از گونیکورن اجرا میکنید به استفاده از کانفیگ‌های شما و کانفیگ‌های پیشفرض و دیفالتش چندتا به اصطلاح خودش worker اجرا میکنه. این ورکرها داخل تردهای مختلف هستند اما همشون به یک پورت گوش میدن و اگر شما گونیکورن رو متوقف کنید اون‌ها هم متوقف میشن و به شکل کلی گونیکورن master اون ورکرها محصوب میشه.

حالا اینارو گفتم که بگم شما میتونید داخل کد همچین کاری رو با فانکشن‌هاتون و ... انجام بدید!

به این شکل چندین wsgi سرور توسط خود یکی از ماژول‌های gevent به اسم pywsgi که از خود gevent ایمپورت میشه انجام بدید و درنهایت تسکهای ساخته شده رو با استفاده از کتابخونه multiprocessing یک پروسس کنید و به هم جوین کنید.

اما شما نه تنها میتونید این کار کنید بلکه میتونید فانکشنا معمولی رو هم به این سبک ران کنید. اما به این کار دیگه true parallelism نمیگن و بهش میگن concurrent I/O و برای مثال اگر بخواییم ۵ تا ریکوئست همزمان با استفاده از requests بزنیم میتونید همچین کاری کنیم:

jobs = [gevent.spawn(fetch, url) for url in urls]
gevent.joinall(jobs)

فزض کنید فانکشنی به اسم fetch داریم که ورودی یک url میگیره و با requests درخواست http میده و urls هم لیست تمام urlهایی که میخواییم درخواست بزنیم.

آره خلاصه ابزار خوبیه gevent :)

@TorhamDevCH