Forwarded from یه شعر (Abolfazl)
سلام
تو این کانال هر روز صبح و عصر حدود ساعت 9 و 19 یک شعر توسط رباتی که نوشتم به صورت اتوماتیک قرار میگیره
فعلا شعر های که ربات میفرسته از رباعیات خیام و مولانا هستش ولی در آینده تنوع شعر ها بیشتر میشه😃
منبع ربات سایت گنجور هستش و شعر ها ازین سایت دریافت میشه و شما پایین هر مطلب میتونید با کیلک روی لینک گنجور به صفحه اون شعر داخل سایت گنجور برید✌️
راستی من ابوالفضل هستم برنامه نویس این ربات و اینم کانال خودمه خوشحال میشم عضو بشید:
@abolfazl_devs
سورس ربات رو هم داخل لینک پایین میتونید ببینید:
https://github.com/ixabolfazl/poembot
تو این کانال هر روز صبح و عصر حدود ساعت 9 و 19 یک شعر توسط رباتی که نوشتم به صورت اتوماتیک قرار میگیره
فعلا شعر های که ربات میفرسته از رباعیات خیام و مولانا هستش ولی در آینده تنوع شعر ها بیشتر میشه😃
منبع ربات سایت گنجور هستش و شعر ها ازین سایت دریافت میشه و شما پایین هر مطلب میتونید با کیلک روی لینک گنجور به صفحه اون شعر داخل سایت گنجور برید✌️
راستی من ابوالفضل هستم برنامه نویس این ربات و اینم کانال خودمه خوشحال میشم عضو بشید:
@abolfazl_devs
سورس ربات رو هم داخل لینک پایین میتونید ببینید:
https://github.com/ixabolfazl/poembot
👍1
یه شعر
سلام تو این کانال هر روز صبح و عصر حدود ساعت 9 و 19 یک شعر توسط رباتی که نوشتم به صورت اتوماتیک قرار میگیره فعلا شعر های که ربات میفرسته از رباعیات خیام و مولانا هستش ولی در آینده تنوع شعر ها بیشتر میشه😃 منبع ربات سایت گنجور هستش و شعر ها ازین سایت دریافت…
https://github.com/ixabolfazl/poembot
این پروژه کارش اینه که بر اساس زمان بندی و دسته بندی شعری که تو تنظیماتش مشخص میکنید از سایت گنجور میاد شعر دریافت میکنه و تو کانال تلگرام میفرسته
یه نمونه که برا خودم اجرا کردم کانال زیر هست که داخلش هر روز صبح و عصر میاد یه رباعی از خیام و یا مولانا میفرسته تو کانال
@iipoem
نیاز به سرور نداره و با گیتهاب اکشن هم میتونید یه نمونه برا خودتون ران کنید.
تا حد امکان سورسشم مرتب کردم که بشه راحت تغیر داد و استفاده کرد👌
اگه خوشتون اومد خوشحال میشم تو گیتهاب ستاره ⭐ بدید.
@abolfazl_devs
این پروژه کارش اینه که بر اساس زمان بندی و دسته بندی شعری که تو تنظیماتش مشخص میکنید از سایت گنجور میاد شعر دریافت میکنه و تو کانال تلگرام میفرسته
یه نمونه که برا خودم اجرا کردم کانال زیر هست که داخلش هر روز صبح و عصر میاد یه رباعی از خیام و یا مولانا میفرسته تو کانال
@iipoem
نیاز به سرور نداره و با گیتهاب اکشن هم میتونید یه نمونه برا خودتون ران کنید.
تا حد امکان سورسشم مرتب کردم که بشه راحت تغیر داد و استفاده کرد👌
اگه خوشتون اومد خوشحال میشم تو گیتهاب ستاره ⭐ بدید.
@abolfazl_devs
👍3
خیلی وقت پیش من نیاز داشتم به ترجمه متن تو پایتون اما خب api درستی نبود یا اگه بود پولی بود و بدون کیفیت
پس با یه تریکی اومدم و از خود گوگل ترنسلیت استفاده کردم برای اینکار
کارم که تموم شد تصمیم گرفتم تبدیلش کنم به یک پکیج پایتون
نتیجه اون شد این پکیج etranslate که خیلی راحت میتونید با دستور
اون رو نصب کنید.
استفاده ازش هم خیلی ساده هست و مثل نمونه های زیر میتونید ازش استفاده کنید:
سورس اونو میتونید ازینجا ببینید:
https://github.com/ixabolfazl/etranslate
اگه خوشتون اومد خوشحال میشم تو گیتهاب ستاره ⭐ بدید.
@abolfazl_devs
پس با یه تریکی اومدم و از خود گوگل ترنسلیت استفاده کردم برای اینکار
کارم که تموم شد تصمیم گرفتم تبدیلش کنم به یک پکیج پایتون
نتیجه اون شد این پکیج etranslate که خیلی راحت میتونید با دستور
pip install etranslate
اون رو نصب کنید.
استفاده ازش هم خیلی ساده هست و مثل نمونه های زیر میتونید ازش استفاده کنید:
translate("Hello world", to="fa")
# سلام دنیا
translate("Hello world", to="de")
# Hallo Welt
translate("Hello world!", src="en", to="fa")
# سلام دنیا
سورس اونو میتونید ازینجا ببینید:
https://github.com/ixabolfazl/etranslate
اگه خوشتون اومد خوشحال میشم تو گیتهاب ستاره ⭐ بدید.
@abolfazl_devs
🔥5👍1
دوستان کسی هست پایتون رو نصب داشته باشه رو سیستمش و سیستم عامل لینوکسی یا ویندوز داشته باشه؟
یه برنامه جدید اپن سورس میخام بزارم ولی نیاز دارم قبلش تست بشه رو سیستم عامل ویندوز و لینوکس
اگر میتونید به این آیدی پیام بدید:
@ixabolfazl
یه برنامه جدید اپن سورس میخام بزارم ولی نیاز دارم قبلش تست بشه رو سیستم عامل ویندوز و لینوکس
اگر میتونید به این آیدی پیام بدید:
@ixabolfazl
اگه تو ام ازونایی هستی که با فیلم دیدن میخوای زبانتو بهتر کنی ادامه این مطلبو از دست نده 🤓
شما هم احتمالا اکثر فیلما رو با زیر نویس میبینید ولی گاهی اوقات شده تو یه فیلم یه عبارتی رو میگن و خوب متوجه نمیشید حالا اگه دوتا زیر نویس رو همزمان(یکی بالا یکی پایین) داشته باشید، دیگه چیزیو از دست نمیدید👌
برنامه Subtitle Merger دقیقا همینکار رو میکنه و دوتا زیر نویس میگیره و در خروجی یه فایل زیر نویس نهایی بهتون میده که میتونید رو پلیر هاتون استفاده کنید.
این برنامه برنامه متن باز هست و با مراجعه در لینک زیر میتونید نحوه استفاده اون رو ببینید.
https://github.com/ixabolfazl/subtitle-merger
اگه خوشتون اومد خوشحال میشم تو گیتهاب ستاره ⭐ بدید.
@abolfazl_devs
شما هم احتمالا اکثر فیلما رو با زیر نویس میبینید ولی گاهی اوقات شده تو یه فیلم یه عبارتی رو میگن و خوب متوجه نمیشید حالا اگه دوتا زیر نویس رو همزمان(یکی بالا یکی پایین) داشته باشید، دیگه چیزیو از دست نمیدید👌
برنامه Subtitle Merger دقیقا همینکار رو میکنه و دوتا زیر نویس میگیره و در خروجی یه فایل زیر نویس نهایی بهتون میده که میتونید رو پلیر هاتون استفاده کنید.
این برنامه برنامه متن باز هست و با مراجعه در لینک زیر میتونید نحوه استفاده اون رو ببینید.
https://github.com/ixabolfazl/subtitle-merger
اگه خوشتون اومد خوشحال میشم تو گیتهاب ستاره ⭐ بدید.
@abolfazl_devs
🔥10👏1👌1
زبان گو لنگ یه زبان کامپایلری هست به این معنی که کدی که نوشته شده باید به زبان ماشین تبدیل بشه و بعدش میتونیم اون رو اجرا کنیم یجورایی باید اول build بگیریم.
کامپایلرایی که میان اینکارو میکنن معمولا تو هر سیستم عامل برای همون سیستم عامل کامپایل میکنند و بعدی از build فایلی که ساخته میشه صرفا رو همون سیستم عامل اجرا میشه !
مثلا اگر شما روی لینوکس برای یک کد گو لنگ بیلد بگیرید فقط رو همون لینوکس و همون معماری سیستمتون اجرا میشه!
حالا گاهی پیش میاد که ما میخوایم روی لینوکس برای ویندوز بیلد بگیریم یا حتی مک🤓
تو زبان گو لنگ به این صورت عمل میکنیم:
کامند برای بیلد گرفتن ساده:
حالا فرضا میخوایم برای ویندوز بیلد بگیریم:
اگر معماری سیستم رو هم میخواید تعیین کنید به این صورت:
اینم یه نمونه کد دیگه که اگه خواستیم برای مک بیلد بگیریم:
و اگه اطلاعات کامل ترین در این مورد نیاز داشتید میتونید لینک پایین رو یه نگاه بندازید:
https://www.digitalocean.com/community/tutorials/building-go-applications-for-different-operating-systems-and-architectures
کامپایلرایی که میان اینکارو میکنن معمولا تو هر سیستم عامل برای همون سیستم عامل کامپایل میکنند و بعدی از build فایلی که ساخته میشه صرفا رو همون سیستم عامل اجرا میشه !
مثلا اگر شما روی لینوکس برای یک کد گو لنگ بیلد بگیرید فقط رو همون لینوکس و همون معماری سیستمتون اجرا میشه!
حالا گاهی پیش میاد که ما میخوایم روی لینوکس برای ویندوز بیلد بگیریم یا حتی مک🤓
تو زبان گو لنگ به این صورت عمل میکنیم:
کامند برای بیلد گرفتن ساده:
go build main.go
حالا فرضا میخوایم برای ویندوز بیلد بگیریم:
env GOOS=windows go build main.go
اگر معماری سیستم رو هم میخواید تعیین کنید به این صورت:
env GOOS=windows GOARCH=amd64 go build main.go
اینم یه نمونه کد دیگه که اگه خواستیم برای مک بیلد بگیریم:
env GOOS=darwin GOARCH=amd64 go build main.go
و اگه اطلاعات کامل ترین در این مورد نیاز داشتید میتونید لینک پایین رو یه نگاه بندازید:
https://www.digitalocean.com/community/tutorials/building-go-applications-for-different-operating-systems-and-architectures
👍3
Abolfazl Devs
زبان گو لنگ یه زبان کامپایلری هست به این معنی که کدی که نوشته شده باید به زبان ماشین تبدیل بشه و بعدش میتونیم اون رو اجرا کنیم یجورایی باید اول build بگیریم. کامپایلرایی که میان اینکارو میکنن معمولا تو هر سیستم عامل برای همون سیستم عامل کامپایل میکنند و…
اگه میخواید بدونید که گو لنگ چه سیستم عامل ها و چه معماری هایی رو ساپورت میکنه میتونید با زدن دستور :
لیستشون رو ببینید.
go tool dist list
لیستشون رو ببینید.
👍2
Abolfazl Devs
زبان گو لنگ یه زبان کامپایلری هست به این معنی که کدی که نوشته شده باید به زبان ماشین تبدیل بشه و بعدش میتونیم اون رو اجرا کنیم یجورایی باید اول build بگیریم. کامپایلرایی که میان اینکارو میکنن معمولا تو هر سیستم عامل برای همون سیستم عامل کامپایل میکنند و…
یه Bash Script برای اینکار هم نوشتم که میاد اتوماتیک برای سیستم عامل های ویندوز و مک و لینوکس بیلد میگیره که میتونید تو لینک زیر ببینید و استفاده کنید:
https://gist.github.com/ixabolfazl/bc01a05e4d2d67bc59a40d6a515f2524
https://gist.github.com/ixabolfazl/bc01a05e4d2d67bc59a40d6a515f2524
Gist
Multi-Platform Go Build Script
Multi-Platform Go Build Script. GitHub Gist: instantly share code, notes, and snippets.
🔥2
اگه شماهم لینوکس و ویندوز رو کنار هم به صورت بوت چندگانه یا دوال بوت (Doal Boot) داشته باشید و مثل من زیاد بین ویندوز و لینوکس سوییچ کنید احتمالا با این برخورد داشتید که ساعت های یکیشون یا همشون به هم میخوره و هر دفعه باید تنظیم کنید!
راه حل این مشکل دستور پایینه یه بار که این دستور رو تو ترمینال لینوکستون بزنید مشکل حل میشه:
@abolfazl_devs
راه حل این مشکل دستور پایینه یه بار که این دستور رو تو ترمینال لینوکستون بزنید مشکل حل میشه:
sudo timedatectl set-local-rtc true
@abolfazl_devs
👍3
دستور rsync تو لینوکس چیه و به چه دردی میخوره؟
این دستور یکی از اون دستورای کاربردی تو لینوکسه که برای کپی یا همگامسازی فایل و پوشهها از یه جا به جای دیگه میشه ازش استفاده کرد.
خب فرقش با دستور cp چیه؟
یکم امکانات بیشتری میده مثلا فقط فایلهایی که تغییر کردن یا جدید هستن رو کپی میکنه که خب زمان کپی رو کاهش میده یا اگه دوس داشتید پروگرس بار نشون میده😁
ساختار کلی دستور اینجوریه:
فرض کن میخوای یه پوشهی my_folder رو توی backup_folder کپی کنی:
حالا فرضا میخوای فقط فایل های جدید تر رو کپی کنی:
آپشن های مهم این دستور ایناس:
1- مثل حالت آرشیو میمونه؛ دسترسیها، تایماستمپها و همهچی رو دقیق کپی میکنه.
2- اطلاعات دقیقی از روند کپی بهت میده.
3- حالت بهروزرسانی؛ فقط فایلهای جدیدتر یا تغییر کرده رو کپی میکنه.
4- حالت بازگشتی؛ کل زیرپوشهها رو هم کپی میکنه.
5- هرچی تو مقصد اضافه است و تو مبدا نیست، حذف میکنه. واسه هماهنگی کامل عالیه.
6- وضعیت انتقال رو نشون میده؛ مثلا سرعت، درصد پیشرفت و زمان باقیمونده.
یه نمونه از کاربردش تو پشتیبانی گیری از فایل ها هستش مثلا
میتونی با cron کاری کنی که rsync به صورت خودکار تو یه زمان خاص مثلا هر روز، ساعت 2 صبح اجرا بشه:
با دستور بالا تو crontab هر روز ساعت 2 صبح از فایلای جدید تر پوشهmy_folder توی backup_folder یه پشتیبان میگیره
@abolfazl_devs
این دستور یکی از اون دستورای کاربردی تو لینوکسه که برای کپی یا همگامسازی فایل و پوشهها از یه جا به جای دیگه میشه ازش استفاده کرد.
خب فرقش با دستور cp چیه؟
یکم امکانات بیشتری میده مثلا فقط فایلهایی که تغییر کردن یا جدید هستن رو کپی میکنه که خب زمان کپی رو کاهش میده یا اگه دوس داشتید پروگرس بار نشون میده😁
ساختار کلی دستور اینجوریه:
rsync [options] source destination
فرض کن میخوای یه پوشهی my_folder رو توی backup_folder کپی کنی:
rsync /my_folder/ backup_folder/
حالا فرضا میخوای فقط فایل های جدید تر رو کپی کنی:
rsync -u /my_folder /backup_folder/
آپشن های مهم این دستور ایناس:
1. -a
2. -v
3. -u
4. -r
5. --delete
6. --progress
1- مثل حالت آرشیو میمونه؛ دسترسیها، تایماستمپها و همهچی رو دقیق کپی میکنه.
2- اطلاعات دقیقی از روند کپی بهت میده.
3- حالت بهروزرسانی؛ فقط فایلهای جدیدتر یا تغییر کرده رو کپی میکنه.
4- حالت بازگشتی؛ کل زیرپوشهها رو هم کپی میکنه.
5- هرچی تو مقصد اضافه است و تو مبدا نیست، حذف میکنه. واسه هماهنگی کامل عالیه.
6- وضعیت انتقال رو نشون میده؛ مثلا سرعت، درصد پیشرفت و زمان باقیمونده.
یه نمونه از کاربردش تو پشتیبانی گیری از فایل ها هستش مثلا
میتونی با cron کاری کنی که rsync به صورت خودکار تو یه زمان خاص مثلا هر روز، ساعت 2 صبح اجرا بشه:
0 2 * * * rsync -avu --delete /my_folder /backup_folder
با دستور بالا تو crontab هر روز ساعت 2 صبح از فایلای جدید تر پوشهmy_folder توی backup_folder یه پشتیبان میگیره
@abolfazl_devs
👍1
Forwarded from Twitter Downloader | دانلود از توییتر
NLP (Natural Language Processing)
چیه و چه کاری ازش برمیاد؟
پردازش زبان طبیعی، یه تکنولوژی توی هوش مصنوعیه که کمک میکنه کامپیوترها زبون ما آدمارو بفهمن.
با NLP، سیستمها میتونن متن یا صدا رو تحلیل کنن، معنیش رو بفهمن و حتی جواب مناسب تولید کنن.
مثالهاش تو زندگی روزمره :
- گوگل که وقتی چیزی سرچ میکنی، متوجه منظورت میشه.
- رباتهای چت که سوالاتت رو جواب میدن.
- یا وقتی Siri و Alexa حرفت رو گوش میدن و برات کاری انجام میدن.
یکی از قابلیتهای مهم NLP، ریشهیابی کلمات (Lemmatization) هست. مثلا اگه یه کلمه تو متن شکلهای مختلفی داشته باشه (مثل live, lives, lived, living)، همه رو میگیره و به یه فرم اصلی (مثلاً live) تبدیل میکنه.
حالا چرا اینارو گفتم؟
من میخواستم از یه سری زیرنویسها کلمات رو استخراج کنم و بر اساس تعداد تکرارشون تو یه دیتابیس ذخیره کنم. اما یه مشکل مهم وجود داشت:
مثلاً کلمههای live, lived, living, lives اگه جداگانه ذخیره بشن، انگار ۴ تا کلمه مختلف داریم، در حالی که همهشون یه معنی میدن!
چطور این چالش رو حل کردم؟
با کمک NLP و ابزارهایی که کار ریشه یابی رو انجام میدن مثل کتابخونه NLTK تو پایتون👌
🔧 یه مثال عملی با کتابخونه NLTK
📋 خروجی:
تو کد بالا با فرض اینکه کلمات ورودی از نوع فعل هستند میاد ریشه فعل رو رو خروجی میده حالا اینکه چطوری نوع کلمه (فعل،اسم،صفت و...) رو تشخیص بدیم خودش یه کار دیگه هست که میتونید با خوندن داکیومنت این کتابخونه یادش بگیرید.
@abolfazl_devs
چیه و چه کاری ازش برمیاد؟
پردازش زبان طبیعی، یه تکنولوژی توی هوش مصنوعیه که کمک میکنه کامپیوترها زبون ما آدمارو بفهمن.
با NLP، سیستمها میتونن متن یا صدا رو تحلیل کنن، معنیش رو بفهمن و حتی جواب مناسب تولید کنن.
مثالهاش تو زندگی روزمره :
- گوگل که وقتی چیزی سرچ میکنی، متوجه منظورت میشه.
- رباتهای چت که سوالاتت رو جواب میدن.
- یا وقتی Siri و Alexa حرفت رو گوش میدن و برات کاری انجام میدن.
یکی از قابلیتهای مهم NLP، ریشهیابی کلمات (Lemmatization) هست. مثلا اگه یه کلمه تو متن شکلهای مختلفی داشته باشه (مثل live, lives, lived, living)، همه رو میگیره و به یه فرم اصلی (مثلاً live) تبدیل میکنه.
حالا چرا اینارو گفتم؟
من میخواستم از یه سری زیرنویسها کلمات رو استخراج کنم و بر اساس تعداد تکرارشون تو یه دیتابیس ذخیره کنم. اما یه مشکل مهم وجود داشت:
اگه هر شکل از یه کلمه رو جدا ذخیره میکردم، دیتابیس الکی شلوغ میشد و کلی دیتای اضافی و تکراری داشتم و همینطور تعداد تکرار هم درست حساب نمیشد!
مثلاً کلمههای live, lived, living, lives اگه جداگانه ذخیره بشن، انگار ۴ تا کلمه مختلف داریم، در حالی که همهشون یه معنی میدن!
چطور این چالش رو حل کردم؟
با کمک NLP و ابزارهایی که کار ریشه یابی رو انجام میدن مثل کتابخونه NLTK تو پایتون👌
🔧 یه مثال عملی با کتابخونه NLTK
from nltk.stem import WordNetLemmatizer
wnl = WordNetLemmatizer()
words = ["live", "lives", "lived", "living"]
for word in words:
print(wnl.lemmatize(word,pos='v'))
📋 خروجی:
live
live
live
live
تو کد بالا با فرض اینکه کلمات ورودی از نوع فعل هستند میاد ریشه فعل رو رو خروجی میده حالا اینکه چطوری نوع کلمه (فعل،اسم،صفت و...) رو تشخیص بدیم خودش یه کار دیگه هست که میتونید با خوندن داکیومنت این کتابخونه یادش بگیرید.
@abolfazl_devs
👍3❤1
Abolfazl Devs
NLP (Natural Language Processing) چیه و چه کاری ازش برمیاد؟ پردازش زبان طبیعی، یه تکنولوژی توی هوش مصنوعیه که کمک میکنه کامپیوترها زبون ما آدمارو بفهمن. با NLP، سیستمها میتونن متن یا صدا رو تحلیل کنن، معنیش رو بفهمن و حتی جواب مناسب تولید کنن. مثالهاش…
پروژه ای که توش به این چالش خوردم درواقع یه پروژه برای استخراج کلمات پر تکرار زبان انگلیسی از زیر نویس فیلم های آموزشی و کتاب های مرتبط به برنامه نویسی و کامپیوتر بود.
نتیجش یه لیست از لغت های پر تکرار مرتبط با برنامه نویسی هستش که میتونه به گسترش دایره لغت های زبان کمک میکنه👌
برنامه و دیتابیسی که تولید میشه رو تو روز های آینده میزارم🥳
نتیجش یه لیست از لغت های پر تکرار مرتبط با برنامه نویسی هستش که میتونه به گسترش دایره لغت های زبان کمک میکنه👌
برنامه و دیتابیسی که تولید میشه رو تو روز های آینده میزارم🥳
🔥2