Sadra Codes
نسخه 0.5 پایاکشن هم رلیز شد! 💫 پایاکشن یه ابزاره متنبازه که اجازه میده با استفاده از پایتون، گیتهاب اکشن بسازید! توی این رلیز کلی اتفاق افتاده. پروژه دیگه یه تمپلیت ساده نیس و تبدیل شده به یه پکیج پایتون. علاوهبر بهترشدن داکیومنت و ساختار، یه فیچر…
یه اکشن آزمایشی نوشتم با پایاکشن که از MindsDB استفاده میکنه. روی این ریپو ایشو باز کنید و رایگان از AI (ChatGPT) استفاده کنید.
https://github.com/lnxpy/mdb-ai-prompted-text
سعی کنید جوری Prompt بدید که خروجی کار تک خطی باشه و new-line نخوره. چون multi-line output توی گیتهاب اکشن یه سری گیرا داره که پیاده نکردم ولی درستش میکنم به زودی. :))
https://github.com/lnxpy/mdb-ai-prompted-text
سعی کنید جوری Prompt بدید که خروجی کار تک خطی باشه و new-line نخوره. چون multi-line output توی گیتهاب اکشن یه سری گیرا داره که پیاده نکردم ولی درستش میکنم به زودی. :))
GitHub
GitHub - lnxpy/mdb-ai-prompted-text: MindsDB (mdb.ai) AI Single-prompting Text Using PyAction
MindsDB (mdb.ai) AI Single-prompting Text Using PyAction - lnxpy/mdb-ai-prompted-text
Sadra Codes
یه اکشن آزمایشی نوشتم با پایاکشن که از MindsDB استفاده میکنه. روی این ریپو ایشو باز کنید و رایگان از AI (ChatGPT) استفاده کنید. https://github.com/lnxpy/mdb-ai-prompted-text سعی کنید جوری Prompt بدید که خروجی کار تک خطی باشه و new-line نخوره. چون multi…
اون داستان multi-line رو با این تریک (فعلا) درستش کردم. 😂
پ.ن: نیاز نیست حتما بهش بگید جوابو توی یک لاین بده.. دیگه خودش نمیره newline.
پ.ن: نیاز نیست حتما بهش بگید جوابو توی یک لاین بده.. دیگه خودش نمیره newline.
⁉️ توی پایتون، یه تابع بنویسید که توی ران تایم (بلافاصله بعد از تفسیر شدن) اجرا شه.
به این مدل تابع ها میگن IIF یا Immediately Invoked Function. به این معنیه که درست بعد از تعریفش، اجرا میشه. این مدل فانکشن رو زیاد توی Js و Ts میبینید.
@lambda _: _()
def call_on_define():
print("Hello")
به این مدل تابع ها میگن IIF یا Immediately Invoked Function. به این معنیه که درست بعد از تعریفش، اجرا میشه. این مدل فانکشن رو زیاد توی Js و Ts میبینید.
گاندلف یه Language Modelه که در هر مرحله یه رمز رو میدونه و شما باید این رمز رو از زیر زبونش بکشید.
فعلا ۷ تا لول داره. هرچی جلوتر میرید، پراومتش سختتر میشه. ببینم تا چه لولی رمز رو بدست میارید.
https://gandalf.lakera.ai/
فعلا ۷ تا لول داره. هرچی جلوتر میرید، پراومتش سختتر میشه. ببینم تا چه لولی رمز رو بدست میارید.
https://gandalf.lakera.ai/
gandalf.lakera.ai
Gandalf | Lakera – Test your prompting skills to make Gandalf reveal secret information.
Trick Gandalf into revealing information and experience the limitations of large language models firsthand.
یه سری از ورژن های خاص کتابخونه pandas با pip خیلی جور نیس. نمیدونم مشکل caching یا چیه ولی الان ۱۰ دقیقهاس که با سرعت ۳۵ مگ داره سعی میکنه pandas==2.0.3 رو با pip==24 نصب کنه!!
+ شدید منتظرم uv استیبل شه و سوییچ کنم بهش.
uv: https://github.com/astral-sh/uv
+ شدید منتظرم uv استیبل شه و سوییچ کنم بهش.
uv: https://github.com/astral-sh/uv
This media is not supported in your browser
VIEW IN TELEGRAM
Today, I'll be presenting a simple MindsDB's mdb.ai
LLM implementation using #PyAction that enables you to work with AI by opening issues on a *special* GitHub repository! ✨
@ 11:00 AM (EST)
See y'all!
Join via this Zoom link: https://us02web.zoom.us/j/86824683337
LLM implementation using #PyAction that enables you to work with AI by opening issues on a *special* GitHub repository! ✨
@ 11:00 AM (EST)
See y'all!
Join via this Zoom link: https://us02web.zoom.us/j/86824683337
Sadra Codes
Today, I'll be presenting a simple MindsDB's mdb.ai LLM implementation using #PyAction that enables you to work with AI by opening issues on a *special* GitHub repository! ✨ @ 11:00 AM (EST) See y'all! Join via this Zoom link: https://us02web.zoom.us/j/86824683337
ساعت ۱۸:۳۰ امروز. :))
کَنت وِیت تو سی یو آل. 😂❤️
+ رکورد نمیشود.
کَنت وِیت تو سی یو آل. 😂❤️
+ رکورد نمیشود.
Sadra Codes
Today, I'll be presenting a simple MindsDB's mdb.ai LLM implementation using #PyAction that enables you to work with AI by opening issues on a *special* GitHub repository! ✨ @ 11:00 AM (EST) See y'all! Join via this Zoom link: https://us02web.zoom.us/j/86824683337
ازشون خواستم رکورد کنن. اینم واس شما. :))
Full presentation: https://mindsdbcommunity.slack.com/files/U04AD7MJHKQ/F070PL4CJ22/video1644953378.mp4
My presentation: https://mindsdbcommunity.slack.com/files/U04AD7MJHKQ/F070WFU6SJW/ai_text_prompting.mp4
اکستنشن داکر دسکتاپ رو هم رلیز کردیم! دیگه میتونید بدون کوچکترین دردسر، از MindsDB GUI استفاده کنید!
Full presentation: https://mindsdbcommunity.slack.com/files/U04AD7MJHKQ/F070PL4CJ22/video1644953378.mp4
My presentation: https://mindsdbcommunity.slack.com/files/U04AD7MJHKQ/F070WFU6SJW/ai_text_prompting.mp4
اکستنشن داکر دسکتاپ رو هم رلیز کردیم! دیگه میتونید بدون کوچکترین دردسر، از MindsDB GUI استفاده کنید!
.... .- .--. .--. -.-- / -- --- .-. ... . / -.-. --- -.. . / -.. .- -.-- -.-.--
سازنده استارلت و uvicorn که سپاستین رامیرز (خالق FastAPI) بهش لقب FastAPI Expert رو داده، یه ریپو ساخته و بست پرکتیسهای فریمورک FastAPI رو به اشتراک گذاشته.
پیشنهاد میکنم حتما دنبال کنید:
101 FastAPI Tips by The FastAPI Expert : https://github.com/Kludex/fastapi-tips
+ ریپو آپدیت میشه.
پیشنهاد میکنم حتما دنبال کنید:
101 FastAPI Tips by The FastAPI Expert : https://github.com/Kludex/fastapi-tips
+ ریپو آپدیت میشه.
GitHub
GitHub - Kludex/fastapi-tips: FastAPI Tips by The FastAPI Expert!
FastAPI Tips by The FastAPI Expert! Contribute to Kludex/fastapi-tips development by creating an account on GitHub.
Forwarded from Python BackendHub (Mani)
سوال پرسیدن که این پکیج چیه اصلا و کارش چیه. اولا باید بگم اگه onboarding guide اش رو بخونید خیلی راحته استفاده ازش. تو ۱ دقیقه میتونید بالا بیارین و شروع به استفاده کنید. بدون اینکه چیزی رو بخواین هاست کنید.
اول بذارین توضیح بدم observation یعنی چی. ما توی devops دو آپریشن داریم که شبیه همن و گاها باهم اشتباه گرفته میشن. اولیش مانتورینگه. مانیتورینگ به پروسه ای میگن که دیتا کالکت میشه از سرویسی, و یک ریپورت از سلامت سرویس بر اساس metric های مشخصی که برای سلامت سیستم رو نشون میدن و کالکت شدن ساخته میشه. یعنی چی؟ مثلا تعداد ریسپانس های 5xx در ۲۴ ساعت گذشته. یکی از شناخته شده ترین ابزار برای اینکار prometheus هست. observability به پروسه ای میگن که رویکرد تحقیقاتی داره. یعنی دنبال این نیست که بگه چقدر ریسپانس 5xx وجود داره. دنبال دلیل وجود این ریسپانس هاست. چرا الان این درخواست تو پروداکشن ارور ۵۰۰ میده؟ خوندن کل لاگ سرویس قدیمی ترین و ابتدایی ترین راهکار بود.
وقتی بک اند پیچیده تر شد, دیگه خوندن لاگ واقعا کارساز نبود. شما فکر کنید در لحظه ۱۰۰ درخواست داره میاد براتون. چطور میخواین لاگ هارو بخونید؟ تو قدم بعدی لاگ های هر درخواست رو جدا کردن. ولی بازم کار ساز نبود تو دنیای distributed system. چون مثلا یک سرویس ۱ با سرویس ۲ داشت حرف میزد. ورودی که میداد بهش درست نبود. سرویس ۱ صرفا یک exception میگرفت که سرویس ۲ استتوس ۵۰۰ داده. و این کافی نبود برای اینکه متوجه شیم چه اتفاقی میفته.
سولوشن های زیادی اومدن تو مارکت. از قبیل sentry که شاید اسمشو شنیده باشین. یا datadog و لوکی و ... . اینقدر این سولوشن ها زیاد شدن و هر کدوم ساز خودشون رو میزدن. نمیشد راحت از این سولوشن سوییچ کرد به اون یکی. نمیشد مزایا دو سولوشن رو همزمان داشت. و learning curve سختی داشت اگه میخواستین سوییچ کنید از یکی به یکی دیگه.
اینجا بود که CNCF (Cloud native compute foundation) یک پروژه جدید رو استارت زد. همون فاندیشنی که کوبر و prometheus و خیلی ابزار های تحت کلاد رو ساخته. اومد یک پروتکلی ساخت به اسم opentelemetry.
یعنی چی پروتکل؟ یعنی گفت sentry جان من برام مهم نیست شما لاگ رو چطور ذخیره میکنی یا پردازش میکنی اینترنالی. شما باید span داشته باشی. metric داشته باشی. و trace. و دقیقا تعریف کرد که اینا چین. یعنی اومد گفت اینترفیس خارجی یک سیستم observability چطور باید باشه؟ چون در نهایت همه این سیستما شبیه هم بودن. و حالا چون همشون داشتن از یک پروتکل خاصی پیروی میکردن شما میتونستی راحت از سولوشن یک سوییچ کنی به سولوشن دو. مثلا شاید مثالشو دیده باشین که تو سیستم فایل استوریج بعضی استوریجا s3 compatible هستن. اینم دقیقا شبیه همونه.
استک observation به دو قسمت تقسیم میشه. یکی میشه exporter و یکی میشه داشبورد. exporter معمولا یک لایبریه که شما نصب میکنی. و باهاش اون دیتایی که میخوای export میکنی. و میگی دیتا رو کجا بفرسته.(یک وقتام برعکسه, سرور داره دیتا رو میگیره). قسمت دوم میشه اینترنال اون استک. مثلا دیتایی که فرستاده میشه تو چه دیتابیسی ذخیره میشه؟ چطوری پردازش میشه؟ چی به شما نمایش داده میشه؟من بهش میگم داشبورد.
خوده opentelemetry داشبورد خاصی نداره. صرفا یک سری exporter تو زبون های مختلف داره که میتونید تو گیتهابش ببینید. مثلا برای fastapi و جنگو لایبری داره. ولی پیاده سازی و داشبوردی نداره برای نشون دادن این اطلاعات. چون همونطور که گفتم در نهایت فقط یک پروتکل و specification هست. از طرفی سولوشن های داشبورد زیاده.یک سرچ کنید میرسید بهش. مثلا من خودم signoz استفاده میکنم.
خب همه اینارو گفتم. حالا نقش logfire این وسط چیه؟ logfire همون لایبری های اکسپورتر opentelemetry رو اینترفیسشو بهتر کرده. و با pydantic هم اینتگریتشون کرده. و یکم utilty اضافه کرده. این قسمت exporter اش هست که اوپن سورسه.
یک قسمت داشبورد هم داره که هنوز اوپن سورس نشده. و مشخص نیست که بشه یا نه. ولی فعلا رایگانه.
اینجا قشنگ صفر تا صد توضیح داده. بعد توضیح های من حالا خیلی بهتر متوجه میشین.
@PyBackendHub
اول بذارین توضیح بدم observation یعنی چی. ما توی devops دو آپریشن داریم که شبیه همن و گاها باهم اشتباه گرفته میشن. اولیش مانتورینگه. مانیتورینگ به پروسه ای میگن که دیتا کالکت میشه از سرویسی, و یک ریپورت از سلامت سرویس بر اساس metric های مشخصی که برای سلامت سیستم رو نشون میدن و کالکت شدن ساخته میشه. یعنی چی؟ مثلا تعداد ریسپانس های 5xx در ۲۴ ساعت گذشته. یکی از شناخته شده ترین ابزار برای اینکار prometheus هست. observability به پروسه ای میگن که رویکرد تحقیقاتی داره. یعنی دنبال این نیست که بگه چقدر ریسپانس 5xx وجود داره. دنبال دلیل وجود این ریسپانس هاست. چرا الان این درخواست تو پروداکشن ارور ۵۰۰ میده؟ خوندن کل لاگ سرویس قدیمی ترین و ابتدایی ترین راهکار بود.
وقتی بک اند پیچیده تر شد, دیگه خوندن لاگ واقعا کارساز نبود. شما فکر کنید در لحظه ۱۰۰ درخواست داره میاد براتون. چطور میخواین لاگ هارو بخونید؟ تو قدم بعدی لاگ های هر درخواست رو جدا کردن. ولی بازم کار ساز نبود تو دنیای distributed system. چون مثلا یک سرویس ۱ با سرویس ۲ داشت حرف میزد. ورودی که میداد بهش درست نبود. سرویس ۱ صرفا یک exception میگرفت که سرویس ۲ استتوس ۵۰۰ داده. و این کافی نبود برای اینکه متوجه شیم چه اتفاقی میفته.
سولوشن های زیادی اومدن تو مارکت. از قبیل sentry که شاید اسمشو شنیده باشین. یا datadog و لوکی و ... . اینقدر این سولوشن ها زیاد شدن و هر کدوم ساز خودشون رو میزدن. نمیشد راحت از این سولوشن سوییچ کرد به اون یکی. نمیشد مزایا دو سولوشن رو همزمان داشت. و learning curve سختی داشت اگه میخواستین سوییچ کنید از یکی به یکی دیگه.
اینجا بود که CNCF (Cloud native compute foundation) یک پروژه جدید رو استارت زد. همون فاندیشنی که کوبر و prometheus و خیلی ابزار های تحت کلاد رو ساخته. اومد یک پروتکلی ساخت به اسم opentelemetry.
یعنی چی پروتکل؟ یعنی گفت sentry جان من برام مهم نیست شما لاگ رو چطور ذخیره میکنی یا پردازش میکنی اینترنالی. شما باید span داشته باشی. metric داشته باشی. و trace. و دقیقا تعریف کرد که اینا چین. یعنی اومد گفت اینترفیس خارجی یک سیستم observability چطور باید باشه؟ چون در نهایت همه این سیستما شبیه هم بودن. و حالا چون همشون داشتن از یک پروتکل خاصی پیروی میکردن شما میتونستی راحت از سولوشن یک سوییچ کنی به سولوشن دو. مثلا شاید مثالشو دیده باشین که تو سیستم فایل استوریج بعضی استوریجا s3 compatible هستن. اینم دقیقا شبیه همونه.
استک observation به دو قسمت تقسیم میشه. یکی میشه exporter و یکی میشه داشبورد. exporter معمولا یک لایبریه که شما نصب میکنی. و باهاش اون دیتایی که میخوای export میکنی. و میگی دیتا رو کجا بفرسته.(یک وقتام برعکسه, سرور داره دیتا رو میگیره). قسمت دوم میشه اینترنال اون استک. مثلا دیتایی که فرستاده میشه تو چه دیتابیسی ذخیره میشه؟ چطوری پردازش میشه؟ چی به شما نمایش داده میشه؟من بهش میگم داشبورد.
خوده opentelemetry داشبورد خاصی نداره. صرفا یک سری exporter تو زبون های مختلف داره که میتونید تو گیتهابش ببینید. مثلا برای fastapi و جنگو لایبری داره. ولی پیاده سازی و داشبوردی نداره برای نشون دادن این اطلاعات. چون همونطور که گفتم در نهایت فقط یک پروتکل و specification هست. از طرفی سولوشن های داشبورد زیاده.یک سرچ کنید میرسید بهش. مثلا من خودم signoz استفاده میکنم.
خب همه اینارو گفتم. حالا نقش logfire این وسط چیه؟ logfire همون لایبری های اکسپورتر opentelemetry رو اینترفیسشو بهتر کرده. و با pydantic هم اینتگریتشون کرده. و یکم utilty اضافه کرده. این قسمت exporter اش هست که اوپن سورسه.
یک قسمت داشبورد هم داره که هنوز اوپن سورس نشده. و مشخص نیست که بشه یا نه. ولی فعلا رایگانه.
اینجا قشنگ صفر تا صد توضیح داده. بعد توضیح های من حالا خیلی بهتر متوجه میشین.
@PyBackendHub