Rust - Советы, библиотеки, гайды
الذهاب إلى القناة على Telegram
Привет! 🦀 У нас тут всё проржавело, но думаю ты найдешь кое-что интересное для себя ✌️ use {Готовый код, советы, лайфхаки, годные библиотеки, уроки и многое другое}; let 😎 Наша предложка - @hhsharebot; let 🤟 Автор - Абрахам (@priler);
إظهار المزيد2 308
المشتركون
+124 ساعات
+27 أيام
-1830 أيام
أرشيف المشاركات
Чел сделал для Rust макрос #[slop] .. который на компайл тайме генерирует код через нейронки.
Гениально! 🚬
Новость дня: челы переписали движок SHOCKWAVE на Rust 🚬
Теперь старенькие Flash игры из 2000х можно снова играть без проблем.
Причем работают даже онлайн игры.
И даже прямо в браузере.
И даже в виде расширения для Chrome.
Кто там говорил, что Rust это фигня? пхпхпх
Как Rust разработчик РЕШИТЕЛЬНО ОСУЖДАЮ 🚬
Но за ролик про 🦀 Rust — ставлю свой царский лайк.
У Rust есть наследование, вообще-то 🚬
А именно через трейты и имплементации.
Ладно, забудьте про это г@вно.
win32_notif — это новый и полноценно поддерживающий WinRT Toast API крейт.
С ним вы можете создавать уведомления с поддержкой всего что есть в Toast API.
Можно даже прогресс бар в уведомление поставить :3
#крейты
Чейта я давно не постил крейты ...
winrt-notifications — это крейт для лёгкого отображения уведомлений на Windows 10, 8.1 и (возможно) 8.
Код очень простой и по сути это удобная обёртка над WinRT Toast API.
Единственный минус — крейт заброшенный.
Как же я вчера замучался с LTCG в C++ 😳
Пытался скомпилить проектик один (большой), и там шаг влево/шаг право -
Internal linker error.
В этот момент я понял, что LTO в 🦀 Rust в разы более классный.
И вообще раст топ. Пишите на раст.
(это не игра если чё)Новый логотип Раста после того как он положил половину интернета 😂
Разбираем ситуацию с Cloudflare и почему всего одна строчка Rust кода буквально положила почти весь интернет? 🚬
▶️ https://www.youtube.com/watch?v=_aJqpzwslA4
Кстати недавно весь интернет упал из-за вот этой одной строчки Rust кода.
Cloudflare переписали часть функций на Rust, и тупо заюзали в коде
.unwrap().
Без каких-либо проверок, напрямую 🤲.
Как результат — код запаниковал и сервер упал.
Пам пам 🧢parking_lot — это альтернативная имплементация Mutex, RwLock, Condvar и Once.
Они тут меньше, быстрее и лучше.
По уверениям разработчиков, тесты на x86_64 Linux показали, что Mutex в 1.5x раз быстрее, чем стандартный
std::sync::Mutex.
Судя кол-ву. скачиваний, этот крейт уже давно стал стандартом вместо STD раста 🦀
#крейтыВчера пытался завести модель по определению спама из нашего Python бота на 🦀 Rust.
Мучался час с крейтом Candle.
В итоге свичнулся на rust_bert.
Архитектура модели — DebertaForSequenceClassification.
Кто бы мог подумать, но в коде прямо так и пишем:
use rust_bert::deberta::{DebertaConfig, DebertaForSequenceClassification};
Спрашивал у нейронки, она мне советовала сохранять модель в .ot формате.
Хрен там плавал, Rust прекрасно работает с .safetensors.
Единственное пришлось править config.json.
А именно добавить поле id2label и убрать какое-то, у которого было значение null.
Но в итоге оно не компилировалось.
А всё потому что есть два разных токенайзера: rust_tokenizers и новый HF tokenizers.
И если вы ставите второй от HF, то он конфликтует с линкером MSVC.
Короче говоря ставим его вот так:
tokenizers = { version = "0.22.1", default-features = false, features = ["onig"] }Иначе код тупо не компилится. С чем это связано я так и не понял. Что-то там со статическими/динамически скомпилированными библиотеками, и что линковщик отказывается их совмещать. Крч заработало в итоге. Нейросеть теперь отлично работает под 🦀 Rust :]
