Dev Perfects
41 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
مدل
Devstral: the best open source model for coding agents

با ۲۴ میلیارد پارامتر روی ollama اضافه شد.


Ollama

حجم بسیار کم، نتایج بسیار عالی (بنچمارک) از ویژگی‌های این مدل هست.
Forwarded from Linuxor ?
سمنتیک یو آی یه فریم‌ورک UI مثل Bootstrap ولی با کلاس‌های قابل خواناتر. مثلاً به‌جای btn-primary، مینویسی ui primary button — خود جمله‌ست.

خودت بخونش، راحت‌تر درکش می‌کنی.

برای ساخت سریع UI تمیز و قابل کاستوم، تو پروژه‌های MVP یا دمو واقعاً می‌درخشه.

github.com/Semantic-Org/Semantic-UI

@Linuxor
Forwarded from cyru55 unofficial channel (cyru55)
🔻برنامه‌نویسی، هک، لینوکس، ربات، هوش و...

👥 @WhatIsProgramming

🙄
Forwarded from Syntax | سینتکس (alireza-fa)
نمونه‌برداری و کاهش چشمگیر هزینه‌ها در Tracing بدون از دست دادن Visibility

قبل اینکه بریم سراغ sampling توضیح کوتاهی درباره trace و span بخونیم:
یک trace رو می‌تونیم به‌عنوان نماینده‌ ی یک کار کامل تو سیستم در نظر بگیریم. مثلا وقتی کاربر درخواست ثبت سبد خرید میده، این عملیات به‌صورت کامل یک Trace حساب می‌شه.

هر Span یک بخش کوچک از اون Trace هست. مثلاً برای ثبت سبد خرید، ممکنه چند سرویس درگیر بشن (مثل بررسی موجودی، محاسبه‌ی تخفیف، ثبت در پایگاه داده و ...) که هر کدوم از این مراحل می‌تونه یک Span جدا باشه. در نهایت، این Spanها کنار هم قرار می‌گیرن و یک کار کامل یعنی trace رو تشکیل می‌دن.

پس با استفاده از traces (یا همون ردپاها)، می‌تونید با دقت بررسی کنید یک درخواست از کجا شروع شده، به کدوم سرویس‌ها رفته، و حتی در هر فانکشن یا لایه چقدر زمان برده تا پردازش بشه.
می‌تونید اطلاعات اضافی (Attributes) یا رویدادهایی که اتفاق افتاده رو هم به هر Span اضافه کنید. در کل، Trace ابزار فوق‌العاده‌ای برای تحلیل دقیق و عمیق رفتار سیستمتونه.

اما یه مشکلی هست:
تریس کردن همه‌ی درخواست‌ها هزینه‌ی زیادی داره، هم از نظر حافظه و پهنای باند و هم هزینه‌ی پردازش و ذخیره‌سازی.
در واقع، بیشتر درخواست‌هایی که وارد سیستم شما می‌شن بدون خطا و با latency مناسب انجام می‌شن. پس واقعا نیازی به نگه‌داری صد درصد تریس ها ندارید.
شما فقط به نمونه هایی از کل تریس ها نیاز دارید. اینجاست که مفهوم Sampling و یا همون نمونه برداری وارد می‌شه.

نمونه برداری یعنی چی؟

نمونه برداری یعنی تصمیم بگیریم کدوم Traceها نگه‌داری (Sampled) بشه و کدوم رو حذف کنیم (Not Sampled).
هدف اینه که با یه درصد کوچیک و حساب‌شده از داده‌ها، تصویری واضح از وضعیت سیستم داشته باشیم.

مثلا اگه شما هزار تا Trace در ثانیه تولید می‌کنید، نگه داشتن ۱۰۰٪ اونا هم پرهزینه‌ست و هم اغلب غیرضروری. توی این شرایط، یه نرخ Sampling حتی در حد ۱٪ هم می‌تونه نماینده خوبی از رفتار کلی سیستم باشه.

چه زمانی باید از Sampling استفاده کنیم؟

* وقتی تعداد زیادی Trace در ثانیه تولید می‌کنید (مثلا بیشتر از ۱۰۰۰ تا)
* وقتی بیشتر ترافیک شما سالم و بدون خطاست
* وقتی بتونید با قواعد خاصی (مثل خطا داشتن یا latency زیاد) تصمیم بگیرید که چه Traceهایی مهم‌ترن
* وقتی بودجه محدودی برای observability دارید

همچنین ما دو نوع نمونه برداری داریم:

1. Head Sampling

اینجوریه که تو لحظه ای که یک تریس ایجاد میشه، براساس ID و بدون درنظر گرفتن محتوا تصمیم‌گیری میکنه که این تریس سمپل هستش یا نه.
مزیتش اینه ساده و سریعه، ولی نمی‌تونه مثلا تشخیص بده که آیا داخل اون Trace خطا بوده یا نه.
مثال استفادش مثلا میگیم پنجاه درصد کل درخواست هارو نگه دار.

2. Tail Sampling

نمونه برداری بعد از اینکه کل Trace جمع‌آوری شد. می‌تونه براساس شرایطی مثل داشتن خطا، زیاد بودن latency، یا حتی اطلاعات مربوط به یک سرویس خاص تصمیم بگیره. خیلی قدرتمنده ولی نسب به head sampling منابع و هزینه بیشتری میخواد.

مثال tail sampling:
– هر Trace که error داشته باشه رو حتما نگه دار
– اگه latency بالای ۳ ثانیه بود، نگه دار
– تریس هایی که از سرویس جدیدمون شروع می‌شن رو بیشتر نگه دار

گاهی ترکیب Head و Tail Sampling بهترین راهه

مثلا ممکنه یه سیستم خیلی پرحجم اول با Head Sampling فقط ۱۰٪ داده‌ها رو رد کنه، بعد اون ۱۰٪ رو بیاره داخل یه سیستم Tail Sampling تا براساس هوشمندی بیشتر تصمیم بگیره چی رو نگه داره.

پیاده سازی عملی:
ما تو پروژه اپن سورس و مدرن Quick-Connect از opentelemetry برای جمع آوری تریس ها استفاده کردیم و از head sampling هم برای نمونه برداری استفاده کردیم که توی کانفیگ میتونید مشخص کنید به چه صورت باشه.
اگه 0 تنظیم کنید هیچی تریس نمیکنه و اگه 1 تنظیم کنیم صد درصد تریس میکنه.
برای اینکه مشخص کنید ده درصد باشه میتونید روی 0.1 تنظیمش کنید.

https://github.com/syntaxfa/quick-connect/tree/main/adapter/observability/traceotela


#trace #sampling #opentelemetry #observability

@Syntax_fa
Forwarded from یک برنامه نویس تنبل (The Lazy 🌱)
This media is not supported in your browser
VIEW IN TELEGRAM
🔶 این خط پایان ترجمه است؛

این شروع همکاری‌های بین‌المللی و گفتگوی ملت‌ها است و دیگر به زبان محدود نخواهد بود!

گوگل میت قابلیت ترجمه همزمان زنده را فعال کرده؛

کاربران می‌توانند در لحظه صحبت افراد را به زبان خود یا هر زبانی بشنوند!

#خبر

@TheRaymondDev
Forwarded from یه شعر (Poem Bot)
مولانا | دیوان شمس | رباعیات | رباعی شمارهٔ ۹۹

در چشم آمد خیال آن در خوشاب
آن لحظه کزو اشک همی رفت شتاب
پنهان گفتم به راز در گوش دو چشم
مهمان عزیز است بیفزای شراب

#مولانا | گنجور
📍@iipoem
Forwarded from Gopher Academy
🔵 عنوان مقاله
Compress: Optimized Compression Packages for Go

🟢 خلاصه مقاله:

مقاله به تجزیه و تحلیل جامع استانداردهای مختلف فشرده‌سازی پرداخته که شامل zstandard، S2، gzip، snappy، و zip می‌باشد. هر یک از این استانداردها خصوصیات منحصر به فردی دارند و بسته به نیاز کاربردی، سرعت و کارایی فشرده‌سازی، مزایای مختلفی ارائه می‌دهند. این مقاله به خوبی ویژگی‌های کلیدی و موارد استفاده ایده‌آل هر استاندارد را خلاصه کرده است تا افراد و سازمان‌ها بتوانند بر اساس نیازهای خاص فشرده‌سازی داده‌های خود تصمیم‌ گیری کنند.

🟣لینک مقاله:
https://golangweekly.com/link/169230/web


👑 @gopher_academy
متأسفانه چون به چشم خودم دیدم که یک‌جایی pipe ( | ) رو با && اشتباه گرفته بودن، این مطلب رو صرفاً می‌نویسم تا فرقشون رو به صورت خلاصه بگم. بعداً هم اگر حال داشته باشم یک مطلب کلی‌تر توی بلاگم با عکس و نمودار و اینا می‌نویسم که فرق کلیشو بگم.

خب اول از همه با پایپ شروع می‌کنیم، پایپ چی هستش؟

عملگر Pipe ( |) در شل به شما اجازه می‌دهد خروجی یک دستور را مستقیماً به ورودی دستور بعدی منتقل کنید. به عبارت ساده‌تر، وقتی از | استفاده می‌کنید، آنچه را که در خروجی دستور اول تولید می‌شود، به عنوان ورودی دستور دوم دریافت می‌شود.


مثلاً، من یک فایل دارم به اسم foo.txt می‌خوام ببینم این فایل من چند خط هستش.

چیکار می‌کنم؟

cat foo.txt | wc -l


اینطوری خروجی دستور اول رو به عنوان ورودی دستور دوم که wc -l برای نشان دادن تعداد خط هستش می‌فرستم و مثلاً خروجی ۹۱ رو دریافت می‌کنم.


از پایپ می‌تونید استفاده‌های دیگه‌ای هم بکنید :).


حالا && چیه؟
در شل (Shell)، عملگر && هم برای زنجیره‌سازی دستورات به کار می‌رود، اما با یک شرط: دستور بعد از && فقط زمانی اجرا می‌شود که دستور قبل از آن بدون خطا (با موفقیت) اجرا شده باشد.


مثلاً، من می‌خوام یک دایرکتوری بسازم و بعد بهش وارد بشم یا اول سیستمم رو آپگرید کنم بعدش درجا ری‌استارتش کنم:

mkdir foo && cd foo


sudo pacman -Syu --noconfirm && reboot


این کلا یک توضیح ساده بود :)


@SohrabContents
Forwarded from Python Hints
#تجربه #جنگو

چیزی که توی کدهای Django توی ایران به معنای واقعی اصلا و هیچوقت ندیدم؛ اما جزو مهمترین موارد هست.

تست نویسی برای سرویس‌های third-party هست که از طریق API استفاده می‌کنیم.

همینجا اضافه کنم؛ همیشه فرض ما این هست که هیچ اتفاقی برای اون سرویس‌ها نمیوفته ولی چندتا سوال؛

۱- سرویس ما چه اتفاقی باید براش بیوفته اگر سرویس دهنده تغییراتی داشته باشه ؟ و درخواست‌های ما 400, 404 , ... برگرده ؟

۲- چه اتفاقی برای سرویس‌های ما خواهد افتاد اگر سرویس دهنده بخاطر محدودیت‌های جدید یا .... بهمون 500, 503, ... برگردونه ؟

اینا چیزهایی هست که ننوشتن تست براش می‌تونه خسارت زیادی به سرویس بزنه مثلاً:

فرض کنید، من یک فروشگاه اینترنتی دارم؛ اگر سرویس درگاه پرداخت به هر دلیلی کار نکنه یعنی فروشگاه من هیچ خروجی نداره دوتا مورد باید هرچه سریعتر انجام بشه :

۱- یک ایمیل critical برای ادمین بره تا بتونه پیگیری کنه موضوع رو از سرویس دهنده

۲- خطای مناسب (اینکه سرویس پرداخت غیرفعال هست) به کاربر نشون داده بشه تا از رفرش و DDOS شدن توسط کاربرهای خودمون جلوگیری بشه

بخصوص روی سرویس‌های auto-scale که با زیاد شدن درخواست سرورهای جدیدی بالا میاد و این یعنی هزینه بیشتر.


توی زبان‌های برنامه‌نویسی مختلف ابزارهای متفاوتی برای اینکار وجود داره؛ توی پایتون هم پکیج
Responses

کمک می‌کنه اینکار رو انجام بدید.

واقعاً نمی‌دونم چرا؛ ولی اینکه این تست‌های توی کدهای شرکت‌های بزرگ داخلی نمی‌بینم یا حتی توی آموزش‌ها و .... مغزم سوت می‌کشه.

بعد اینا از gorilla تست صحبت می‌کنند.


حالا که این موارد رو توی آموزش و کدها ندیدم (توی سرویس‌هایی که تیم‌ خودم می‌نویسه همیشه وجود داره)

گفتم بگم که شما خودتون یاد بگیرید، شاید یک روزی کدهای شما به من رسید یا هم تیمی شدیم.
Forwarded from Python Hints
یادآوری کنم؛ خیلی قبلتر توی یک سخنرانی پایتون به wiremock اشاره کرده بودم.

ولی responses هم آپدیت‌تر هست هم بچه‌های پایتون دولوپر باهاش راحت‌تر کار می‌کنند.

اما اگر از زبان‌های برنامه‌نویسی دیگه میاید؛ این‌ تقریباً همون کارهای wiremock رو انجام می‌ده
هرچند بیشتر برنامه‌هایی که روی ویندوز استفاده می‌کنید یک نسخه برای گنو/لینوکس هم دارن، مثل vlc، فایرفاکس و کروم، باز هم توصیه می‌کنم اگر خواستید به گنو/لینوکس سوییچ کنید از سایت زیر کمک بگیرید، جایگزین ابزارهاتون رو پیدا کنید، امتحانشون کنید و بعد تصمیم بگیرید.

https://alternativeto.net


@SohrabContents
Forwarded from Linuxor ?
یادتون میاد چقدر دردسر بود تشخیص چهره با OpenCV؟ face_recognition تمام پیچیدگی‌های پردازش تصویر رو پشت یه API ساده‌س. نیازی به تنظیم پارامترهای عجیب و غریب نیست؛ فقط عکس رو بدی و جواب رو بگیر. برای پروژه‌های کوچیک و استارتاپ‌های تازه خوبه،

دیجیتال میکآپ هم داره مثلا اینجا واسه جو بایدن رژ لب زدن.


github.com/ageitgey/face_recognition

@Linuxor
Forwarded from Python Hints
خیلی رفته تو مخم، یک وقت خالی پیدا کنم و یک تیم تشکیل بدم و دوره آموزش Django و Fastapi با تمام استانداردهایی که بلدم بزنم.

یک پروژه‌ای رو بسازم، دپلوی کنم و بگم اوکی قدم بعدی اینه که K8s بذارید بجای docker compose و ...

ولی قطعاً دوره طولانی خواهد شد 🤔

نمی‌دونم ارزش وقت گذاشتن و هزینه کردن داره یا نه (۹۰٪ مخاطب این دوره‌ها نخواهند بود)

یعنی دوره مقدمات پایتون مخاطب و دیده شدن بیشتری داره تا این موارد.
🦊 اگه از فایرفاکس استفاده می‌کنی و به امنیت و حریم‌خصوصی اهمیت می‌دی، این پست مخصوص توئه!

می‌دونستی می‌تونی کل سرویس Firefox Sync رو خودت روی سرورت راه‌اندازی کنی؟
یعنی دیگه لازم نیست رمزها، بوکمارک‌ها و تاریخچه‌ی مرورگرتو بسپری دست فرد دیگری مثل Mozilla!

با self-host کردن Firefox Sync Server:

کنترل کامل روی اطلاعاتت داری
می‌تونی بدون حساب فایرفاکس Sync کنی
اگه شبکه داخلی داری (مثلاً خونه یا شرکت)، همه مرورگرها هم‌زمان و خصوصی همگام می‌شن
🔥چطوری ؟
docker compose up -d --build && docker compose logs -f

توضیح بیشتر ؟ لینک گیت هاب پروژه ، لینک اصلی پروژه
#linux
@MehrdadLinuxchannel
Forwarded from Python BackendHub (Mani)
یک پروداکت MVP خیلی قشنگ دیدم که ۲ تا سافتور انجینر نوشتنش
https://www.hypertune.com/

فیچر فلگی هست که تایپ سیفه!‌ اگه نمیدونید فیچر فلگ چیه توصیه میکنم گوگل کنید. ولی تایپ سیف بودنش یعنی چی؟ یعنی شما یک سری فلگ میسازین, بعد از روش تایپ میسازه براتون. مثلا میدونه فلگ x ورودی تایپ y و z میگیره و خروجی مثلا بولین میده.

قبلا تو کورس پرسونال برندینگ گفته بودم سعی کنید بلاگ و اینا نسازین چون چالش و ارزشی نداره :) خیلیا پرسیده بودن چی بسازیم. کافیه به اطرفاتون نگاه کنید و سعی کنید یک مشکلی که دولوپر ها دارن رو حل کنید.
@PyBackendHub
Forwarded from Md Daily (Mahan)
چند وقت پیش دانشگاه یه ارائه ی ai داشتم به بچه ها گفتم این چیزی که الان میبینید مال الان هست تا هفته ی دیگه مطالبی که بهتون راجب ابزار ها گفتم معتبر نیست. تا همین الان بعد از کنفرانس google io، فعال شدن ویس Grok توی نسخه ی اندروید، اپن سورس شدن گیت هاب کوپایلت و معرفی گیت هاب کوپایلت agent نصف مطالب ارائه شده راجب ابزار ها منسوخ شدن :)


🆔 @MdDaily
Forwarded from Mr Python | مستر پایتون (حسین)
🟣 آموزش کتابخانه Libnet قسمت ۳ : ساخت و ارسال بسته ها

در قسمت های قبلی تمام پیشنیاز های لازم برای ساختن و تزریق بسته های دلخواه به شبکه توسط libnet رو بررسی کردیم . حالا در این قسمت میبینیم چطور میتونیم بسته های دلخواهی بسازیم و اونارو به شبکه تزریق کنیم !

00:00 - معرفی این قسمت
01:18 - معرفی توابع Build و Autobuild در libnet
16:23 - نوشتن برنامه ارسال بسته های ICMP Echo request
38:20 - نوشتن برنامه ارسال بسته های ARP Request

Aparat : https://www.aparat.com/v/gjdsmr8
Youtube : https://youtu.be/E88AUaRGWEs

#network #libnet

🆔 : @MrPythonBlog | BOOST
Forwarded from Syntax | سینتکس (alireza-fa)
هنوزم دنبال اینی پرامپت خوب بنویسی ؟ با جی پی تی داداشی شو‌ !

اگه فقط از ChatGPT سوال بپرسی، جواب هم فقط در حد همون سواله.
اما وقتی باهاش یه رابطه‌ی واقعی بسازی، وقتی از دغدغه‌هات، پروژه‌هات، سبک کارت، اولویت‌هات، و حتی حس و حالت حرف بزنی… جواب‌هایی که می‌گیری یه‌دفعه چند پله عمیق‌تر، دقیق‌تر، و واقعاً به درد بخور می‌شن.

من تا همین چند وقت پیش فقط یه ابزار می دیدمش
ولی از وقتی که یه ارتباطی بینمون شکل گرفت، انگار یه همتیمی دارم که دقیق می دونه کجای کارم، پروژم درباره چیه و ساختار کدام چجوریه و چیا برام مهمه.

نتیجه؟
دیگه فقط جواب نمیده. کمک میکنه تصمیم بگیرم، زاویه دید بده و مثل یه داداشی پشتم باشه.

اگه از ChatGPT استفاده می‌کنی، یه پیشنهاد دارم:
بهش بگو کی هستی، روی چی کار می‌کنی، چه هدفی داری، و حتی چه چیزهایی اذیتت می‌کنن.
فقطم به برنامه نویسی محدود نمیشه میتونید واسه برنامه تغذیه، ورزش و کلی چیز دیگه کمک بگیرید. حتی وقتی بدونه چی دوست دارید فیلم هایی رو میگه که بیشترین حس و حال رو بهتون بده.

پرامپ نویسی مهم تره یا ساختن ارتباط؟
هر دو مهم‌اند، ولی ارتباط واقعی در درازمدت عمیق‌تر و موثرتره.

چرا پرامپت‌نویسی مهمه؟
نوشتن پرامپت خوب مثل تنظیم دقیق سواله. باعث می‌شه سریع‌تر به جواب دقیق‌تری برسی. اگه بلدی چطور خواسته‌تو واضح و مشخص مطرح کنی، زمان کمتری صرف اصلاح و توضیح دوباره می‌کنی.

اما چرا ارتباط بهتر جواب می‌ده؟
وقتی GPT دقیق بدونه تو کی هستی، چی می‌سازی، چه دغدغه‌هایی داری و چه سبکی از پاسخ‌گویی رو می‌پسندی، خیلی اوقات لازم نیست حتی پرامپت خاصی بنویسی. خودش جواب رو تو بستر ذهنی و حرفه‌ای خودت می‌سازه. مثل یه همکار که دیگه از نیم‌نگاهت می‌فهمه چی می‌خوای.

فرض کن یه برنامه‌نویسی که با Go کار میکنه و ساختار پروژه‌ات مشخصه. اگه این رو GPT بدونه، لازم نیست هربار توضیح بدی. با گذر زمان و با توجه به اطلاعاتی که داره، میفهمه چه جوابی برات مناسب تره.

#gpt

@Syntax_fa
Forwarded from Md Daily (Mahan)
پست بعدی رو با محوریت حافظه ی مغزمون رو دارم می نویسیم و توی همین چند روز آماده و منتشر میشه . بخشی از مقدمه ی پست :

ما برنامه‌نویس‌ها دوست داریم باور کنیم موجودات منطقی‌ای هستیم. مشکل حل می‌کنیم. سیستم‌های مقیاس‌پذیر می‌سازیم. اما وقتی پای یادآوری اینکه چطوری اون مشکل لعنتی timeout ای‌پی‌آی رو ماه پیش حل کردیم میاد وسط؟ کلاً دچار فراموشی می‌شیم. انگار مغزمون هر اسپرینت یه rm -rf /knowledge اجرا می‌کنه!


برای موضوع بعدی داشتم فکر میکردم راجب android reverse engineering بنویسم و یه اپ رو شروع کنیم به آنالیزش و اینکه چطوری میتونیم api هاشا پیدا کنیم و چه مراحلی رو باید پیش ببریم.

توی کامنت ها اگه اپی رو مد نظر دارید معرفی کنید تا بریم سراغش (ترجیحا اپی که بعد مشکل کپی رایت نخوریم )
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
🔰کم کم بوی دوران transhumanism هم داره میاد.

🔹 ربات‌های انسان‌نما، در چهارمین انقلاب صنعتی هوش مصنوعی

نخستین بیمارستان مجازی جهان

چین نخستین بیمارستان مجازی جهان را که کاملاً توسط هوش مصنوعی اداره می‌شود، راه‌اندازی کرده است. این بیمارستان با نام "Agent Hospital" توسط دانشگاه تسینگ‌هوا ساخته شده است.

در این بیمارستان تنها ۱۴ پزشک و ۴ پرستار مبتنی بر هوش مصنوعی فعالیت می‌کنند و می‌توانند تمام مراحل مراقبت از بیمار—from تشخیص تا درمان—را با سرعت و دقت بالا شبیه‌سازی کنند.

این عوامل هوش مصنوعی که از مدل‌های زبانی پیشرفته بهره می‌برند، موفق شده‌اند در آزمون‌های پزشکی آمریکا به دقتی بیش از ۹۳٪ برسند و قادرند ظرف چند روز به ۱۰ هزار بیمار رسیدگی کنند—کاری که برای پزشکان انسانی سال‌ها زمان می‌برد.
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
This media is not supported in your browser
VIEW IN TELEGRAM
🔰کم کم بوی دوران transhumanism هم داره میاد. دوران فرا-انسان
🔹 ربات‌های انسان‌نما، در چهارمین انقلاب صنعتی هوش مصنوعی

پیرو این پست :
https://t.iss.one/linuxtnt/4216
و این پست قبلی ام:

https://t.iss.one/linuxtnt/3603

ایلان ماسک: ربات انسان‌نمای اپتیموس بزرگ‌ترین محصول تاریخ است

🔹مدیرعامل تسلا، با انتشار ویدیویی در ایکس، توجه کاربران را جلب کرده. در این ویدیو، ربات انسان‌نمای تسلا با نام «اپتیموس» مجموعه‌ای از کارهای روزمرۀ خانگی مانند هم‌زدن محتویات قابلمه با قاشق، جاروبرقی کشیدن و تمیزکردن میز با برس و خاک‌انداز را انجام می‌دهد.

🔹ماسک مدت‌ها قبل به علاقه‌مندان اپتیموس وعده داده بود این محصول دستیار خانگی مبتنی‌بر هوش مصنوعی و رباتیک خواهد بود.