🖥 Pydantic имеет встроенную функцию <code>#DataValidation</code> , но она потребляет много памяти.
<code>Attrs</code> не имеет встроенной проверки данных и обеспечивает более высокую производительность и меньшее использование памяти, что идеально подходит для внутренних структур данных и простого создания классов в #Python.
<pre language="python">
from attrs import define, field
@club217046016 (@define)
class UserAttrs:
name: str
age: int = field()
@age.validator
def check_age(self, attribute, value):
if value < 0:
raise ValueError("Age can't be negative")
return value # accepts any positive age
try:
user = UserAttrs(name="Bob", age=-1)
except ValueError as e:
print("ValueError:", e)</pre>
📌 Пример (https://codecut.ai/python-data-models-pydantic-or-attrs)
@python_be1
<code>Attrs</code> не имеет встроенной проверки данных и обеспечивает более высокую производительность и меньшее использование памяти, что идеально подходит для внутренних структур данных и простого создания классов в #Python.
<pre language="python">
from attrs import define, field
@club217046016 (@define)
class UserAttrs:
name: str
age: int = field()
@age.validator
def check_age(self, attribute, value):
if value < 0:
raise ValueError("Age can't be negative")
return value # accepts any positive age
try:
user = UserAttrs(name="Bob", age=-1)
except ValueError as e:
print("ValueError:", e)</pre>
📌 Пример (https://codecut.ai/python-data-models-pydantic-or-attrs)
@python_be1
🔸 Gated DeltaNet: гибридная архитектура нейронных сетей с управлением памятью.
Gated DeltaNet - экспериментальная архитектура, разработанная NVIDIA для управления памятью в контексте линейных трансформеров, которая может решить проблемы с забыванием в моделях, обрабатывающих длинные последовательности данных.
Gated DeltaNet предлагает использовать одновременно дельта-правило и гейтинг. Дельта-правило обновляет память модели, заменяя устаревшую информацию на новую, а механизм гейтинга удаляет ненужную информацию из памяти, чтобы она не мешала модели работать эффективно.
Архитектура Gated DeltaNet была разработана на основе алгоритма, который параллелит вычисления дельта-правила с использованием представления WY и оптимизирует работу с GPU на уровне тензорных ядер.
Перфоманс-тестирование Gated DeltaNet проводилось на бенчмарках языкового моделирования, ризонинга, контекстного извлечения, экстраполяции длины и понимания объемного контекста.
Модель Gated DeltaNet превзошла Mamba2 и DeltaNet на всех этих тестах. Например - улучшенная точность на задачах S-NIAH-2 и S-NIAH-3, где Gated DeltaNet показала более эффективное управление памятью по сравнению с DeltaNet и Mamba2 и превосходство в задачах ризонинга.
Гибридные архитектуры, сочетающие слои Gated DeltaNet с вниманием скользящего окна или слоями Mamba2 повысили эффективность обучения и производительность моделей.
Тестовые<code> GatedDeltaNet-H1 и GatedDeltaNet-H2</code> дали еще более высокие результаты, используя комбинации Gated DeltaNet + SWA и Mamba2 + Gated DeltaNet + SWA соответственно.
Gated DeltaNet показала самые низкие показатели перплексии при экстраполяции на длинные последовательности до 20 тыс. токенов и продемонстрировала превосходные способности в извлечении информации, обучении в контексте и отслеживании состояния в задачах LongBench.
🔸Практическая реализация обучения Gated DeltaNet на Pytorch доступна в репозитории на Github (https://github.com/NVlabs/GatedDeltaNet)
📌Лицензирование:
🟢Некоммерческое использование: Nvidia Source Code License-NC
🟠Коммерческое использование: по запросу через форму NVIDIA Research Licensing (https://www.nvidia.com/en-us/research/inquiries/)
🟡Arxiv (https://arxiv.org/pdf/2412.06464v1)
🟡GitHub (https://github.com/NVlabs/GatedDeltaNet)
#AI #ML #LLM #NVIDIA #GatedDeltaNet
@python_be1
Gated DeltaNet - экспериментальная архитектура, разработанная NVIDIA для управления памятью в контексте линейных трансформеров, которая может решить проблемы с забыванием в моделях, обрабатывающих длинные последовательности данных.
Gated DeltaNet предлагает использовать одновременно дельта-правило и гейтинг. Дельта-правило обновляет память модели, заменяя устаревшую информацию на новую, а механизм гейтинга удаляет ненужную информацию из памяти, чтобы она не мешала модели работать эффективно.
Архитектура Gated DeltaNet была разработана на основе алгоритма, который параллелит вычисления дельта-правила с использованием представления WY и оптимизирует работу с GPU на уровне тензорных ядер.
Перфоманс-тестирование Gated DeltaNet проводилось на бенчмарках языкового моделирования, ризонинга, контекстного извлечения, экстраполяции длины и понимания объемного контекста.
Модель Gated DeltaNet превзошла Mamba2 и DeltaNet на всех этих тестах. Например - улучшенная точность на задачах S-NIAH-2 и S-NIAH-3, где Gated DeltaNet показала более эффективное управление памятью по сравнению с DeltaNet и Mamba2 и превосходство в задачах ризонинга.
Гибридные архитектуры, сочетающие слои Gated DeltaNet с вниманием скользящего окна или слоями Mamba2 повысили эффективность обучения и производительность моделей.
Тестовые<code> GatedDeltaNet-H1 и GatedDeltaNet-H2</code> дали еще более высокие результаты, используя комбинации Gated DeltaNet + SWA и Mamba2 + Gated DeltaNet + SWA соответственно.
Gated DeltaNet показала самые низкие показатели перплексии при экстраполяции на длинные последовательности до 20 тыс. токенов и продемонстрировала превосходные способности в извлечении информации, обучении в контексте и отслеживании состояния в задачах LongBench.
🔸Практическая реализация обучения Gated DeltaNet на Pytorch доступна в репозитории на Github (https://github.com/NVlabs/GatedDeltaNet)
📌Лицензирование:
🟢Некоммерческое использование: Nvidia Source Code License-NC
🟠Коммерческое использование: по запросу через форму NVIDIA Research Licensing (https://www.nvidia.com/en-us/research/inquiries/)
🟡Arxiv (https://arxiv.org/pdf/2412.06464v1)
🟡GitHub (https://github.com/NVlabs/GatedDeltaNet)
#AI #ML #LLM #NVIDIA #GatedDeltaNet
@python_be1
GitHub
GitHub - NVlabs/GatedDeltaNet: [ICLR 2025] Official PyTorch Implementation of Gated Delta Networks: Improving Mamba2 with Delta…
[ICLR 2025] Official PyTorch Implementation of Gated Delta Networks: Improving Mamba2 with Delta Rule - NVlabs/GatedDeltaNet
Здравствуйте
Требуются программисты на постоянной основе в проект по созданию "Интеллектуальной платформы с ИИ". От вас резюме и GitHub. Мы предлагаем з/п мин. 150 тыс.рублей макс. 350 тыс.рублей. Представляем жильё в собственность по договору. Квартиры подбираем по вашим критериям.По поводу собеседования сюда:@AikenOZ, По поводу трудоустройства и условия работы сюда: @sergeyzelinsky.Место работы Нижний Новгород Ждём вас в нашей команде.
@python_be1
Требуются программисты на постоянной основе в проект по созданию "Интеллектуальной платформы с ИИ". От вас резюме и GitHub. Мы предлагаем з/п мин. 150 тыс.рублей макс. 350 тыс.рублей. Представляем жильё в собственность по договору. Квартиры подбираем по вашим критериям.По поводу собеседования сюда:@AikenOZ, По поводу трудоустройства и условия работы сюда: @sergeyzelinsky.Место работы Нижний Новгород Ждём вас в нашей команде.
@python_be1
🖥 orjson (https://github.com/ijl/orjson) — это высокопроизводительная библиотека для работы с JSON в Python!
🌟 Она обеспечивает быструю сериализацию и десериализацию JSON, поддерживает обработку дат, таймстампов и numpy-массивов. Библиотека совместима с стандартным API Python и подходит для использования в высоконагруженных приложениях, требующих эффективной обработки JSON-данных.
🖥 Github (https://github.com/ijl/orjson)
@python_be1
🌟 Она обеспечивает быструю сериализацию и десериализацию JSON, поддерживает обработку дат, таймстампов и numpy-массивов. Библиотека совместима с стандартным API Python и подходит для использования в высоконагруженных приложениях, требующих эффективной обработки JSON-данных.
🖥 Github (https://github.com/ijl/orjson)
@python_be1
⭐️ Browser-use
Создайте своего собственного оператора OpenAI с помощью инструментов с открытым исходным кодом!
Browser Use - это платформа с открытым исходным кодом, которая позволяет агентам искусственного интеллекта использовать браузер всего с помощью нескольких строк кода на Python.
Ключевые функции:
🆓 100% Открытый исходный код
✅ Интегрируется с Gradio для создания веб-интерфейса
✅ Работает с Claude, gpt-4o и Llama 3
✅ Для обеспечения безопасной работы пользовательское управление в цикле
Вы просто указываете компьютеру, что делать, а при использовании браузера это выполняется.
▪ Github (https://github.com/browser-use/browser-use)
@python_be1
Создайте своего собственного оператора OpenAI с помощью инструментов с открытым исходным кодом!
Browser Use - это платформа с открытым исходным кодом, которая позволяет агентам искусственного интеллекта использовать браузер всего с помощью нескольких строк кода на Python.
Ключевые функции:
🆓 100% Открытый исходный код
✅ Интегрируется с Gradio для создания веб-интерфейса
✅ Работает с Claude, gpt-4o и Llama 3
✅ Для обеспечения безопасной работы пользовательское управление в цикле
Вы просто указываете компьютеру, что делать, а при использовании браузера это выполняется.
▪ Github (https://github.com/browser-use/browser-use)
@python_be1
🖥 Hickle (https://github.com/telegraphic/hickle?tab=readme-ov-file) — это Python-библиотека, предназначенная для сериализации объектов в формат HDF5, что позволяет эффективно хранить и обмениваться большими объемами данных!
💡 Hickle является альтернативой стандартным методам сериализации (например, pickle) и предлагает улучшенную производительность при работе с большими наборами данных. Она используется в научных и аналитических приложениях для сохранения сложных структур данных, таких как массивы и матрицы, в компактном и эффективном формате.
🔐 Лицензия: MIT
🖥 Github (https://github.com/telegraphic/hickle)
@python_be1
💡 Hickle является альтернативой стандартным методам сериализации (например, pickle) и предлагает улучшенную производительность при работе с большими наборами данных. Она используется в научных и аналитических приложениях для сохранения сложных структур данных, таких как массивы и матрицы, в компактном и эффективном формате.
🔐 Лицензия: MIT
🖥 Github (https://github.com/telegraphic/hickle)
@python_be1
This media is not supported in your browser
VIEW IN TELEGRAM
14 алгоритмов сортировки за одну минуту!
@python_be1
@python_be1
⭐️ Pandera, библиотека Python, которая упрощает валидацию pandas датафреймов.
Она также поддерживает , быструю и легкую библиотеку Polars.
С помощью Pandera вы можете быть уверены, что ваши Polars датафреймы имеют правильную структуру и будут работать правильно.
<code>pip install pandera</code>
▪ Github (https://github.com/unionai-oss/pandera)
▪Документация (https://pandera.readthedocs.io/)
#Pandera #python #opensource #Polars
@python_be1
Она также поддерживает , быструю и легкую библиотеку Polars.
С помощью Pandera вы можете быть уверены, что ваши Polars датафреймы имеют правильную структуру и будут работать правильно.
<code>pip install pandera</code>
▪ Github (https://github.com/unionai-oss/pandera)
▪Документация (https://pandera.readthedocs.io/)
#Pandera #python #opensource #Polars
@python_be1
🔥 IronCalc (https://github.com/ironcalc/IronCalc) — это движок для работы с электронными таблицами!
🌟 Он включает инструменты для чтения и записи файлов формата .xlsx, с возможностью интеграции с различными языками программирования, такими как Python и JavaScript. Проект нацелен на создание более открытой и функциональной инфраструктуры для работы с таблицами, предлагая разработчикам гибкость в использовании как в веб-приложениях, так и в десктопных приложениях.
🔐 Лицензия: Apache-2.0
🖥 Github (https://github.com/ironcalc/IronCalc)
@python_be1
🌟 Он включает инструменты для чтения и записи файлов формата .xlsx, с возможностью интеграции с различными языками программирования, такими как Python и JavaScript. Проект нацелен на создание более открытой и функциональной инфраструктуры для работы с таблицами, предлагая разработчикам гибкость в использовании как в веб-приложениях, так и в десктопных приложениях.
🔐 Лицензия: Apache-2.0
🖥 Github (https://github.com/ironcalc/IronCalc)
@python_be1
This media is not supported in your browser
VIEW IN TELEGRAM
Пора применять профессиональные навыки на практике,зря что ли на программиста 5 лет учился?
@python_be1
@python_be1
📞 bpytop (https://github.com/aristocratos/bpytop) — это современный инструмент мониторинга ресурсов, который работает на Linux, macOS и FreeBSD!
💡 Он отображает данные об использовании процессора, памяти, дисков, сети и запущенных процессов в удобном и визуально привлекательном интерфейсе. Написанный на Python, bpytop предлагает гибкие возможности настройки и легкость использования, включая полную поддержку управления с помощью мыши.
🌟 Инструмент отличается быстрым откликом, интуитивным управлением и визуализацией системных данных в реальном времени. Пользователи могут настроить интерфейс, выбирая цветовые схемы, управлять процессами прямо из меню, отслеживать сетевые подключения и даже работать с несколькими устройствами одновременно.
🔐 Лицензия: Apache-2.0
🖥 Github (https://github.com/aristocratos/bpytop)
@python_be1
💡 Он отображает данные об использовании процессора, памяти, дисков, сети и запущенных процессов в удобном и визуально привлекательном интерфейсе. Написанный на Python, bpytop предлагает гибкие возможности настройки и легкость использования, включая полную поддержку управления с помощью мыши.
🌟 Инструмент отличается быстрым откликом, интуитивным управлением и визуализацией системных данных в реальном времени. Пользователи могут настроить интерфейс, выбирая цветовые схемы, управлять процессами прямо из меню, отслеживать сетевые подключения и даже работать с несколькими устройствами одновременно.
🔐 Лицензия: Apache-2.0
🖥 Github (https://github.com/aristocratos/bpytop)
@python_be1
🌟 Model2Vec: создание компактных и быстрых моделей на основе Sentence Transformer.
Model2Vec - библиотека для создания компактных и быстрых моделей на основе предобученных Sentence Transformer моделей.
Model2Vec позволяет создавать эмбединг-модели слов и предложений, которые значительно меньше по размеру, но при этом сопоставимы по производительности с исходными Sentence Transformer моделями.
Отличительные особенности:
🟢быстрая дистилляция, процесс создания модели занимает несколько минут;
🟢быстрый инференс, в 500 раз быстрее на CPU относительно родительской модели;
🟢BYOM и BYOV, можно использовать на любой Sentence Transformer модели с любым словарем;
🟢мультиязычность, все что нужно - только мультиязычная модель в качестве источника;
🟢интеграция с Huggingface, загрузка\выгрузка моделей привычными <code>from_pretrained</code> и <code>push_to_hub</code>.
Пайплайн Model2Vec трехэтапный. На первом этапе словарь пропускается через модель Sentence Transformer для получения векторов эмбедингов для каждого слова.
Далее, размерность полученных эмбеддингов сокращается с помощью метода главных компонент (PCA). Наконец, применяется zipf-взвешивание для учета частотности слов в словаре.
Model2Vec работает в двух режимах:
🟠Output, в котором модель работает подобно Sentence Transformer, используя subword токенизацию;
🟠Vocab, в котором создается набор статических эмбедингов слов, аналогично GloVe или Word2Vec.
Оценку производительности Model2Vec делали на наборе данных MTEB на задачах PEARL (оценка качества представления фраз) и WordSim (оценка семантической близости слов).
Результаты показывают, что Model2Vec превосходит по производительности GloVe и модели, основанные на WordLlama по всем задачам оценки.
▶️Пример дистилляции:
<pre language="python">
from model2vec.distill import distill
# Choose a Sentence Transformer model
model_name = "BAAI/bge-base-en-v1.5"
# Distill the model
m2v_model = distill(model_name=model_name, pca_dims=256)
# Save the model
m2v_model.save_pretrained("m2v_model")</pre>
▶️Пример инференса:
<pre language="python">
from model2vec import StaticModel
# Load a model from the HuggingFace hub, or a local one.
model_name = "minishlab/M2V_base_output"
# You can optionally pass a token if you're loading a private model
model = StaticModel.from_pretrained(model_name, token=None)
# Make embeddings
embeddings = model.encode(["It's dangerous to go alone!", "It's a secret to everybody."])</pre>
📌Лицензирование : MIT License.
▪Набор моделей (https://huggingface.co/minishlab)
▪GitHub (https://github.com/MinishLab/model2vec)
(https://t.me/)
#AI #ML #LLM #Embedding #Model2Vec #python
@python_be1
Model2Vec - библиотека для создания компактных и быстрых моделей на основе предобученных Sentence Transformer моделей.
Model2Vec позволяет создавать эмбединг-модели слов и предложений, которые значительно меньше по размеру, но при этом сопоставимы по производительности с исходными Sentence Transformer моделями.
Отличительные особенности:
🟢быстрая дистилляция, процесс создания модели занимает несколько минут;
🟢быстрый инференс, в 500 раз быстрее на CPU относительно родительской модели;
🟢BYOM и BYOV, можно использовать на любой Sentence Transformer модели с любым словарем;
🟢мультиязычность, все что нужно - только мультиязычная модель в качестве источника;
🟢интеграция с Huggingface, загрузка\выгрузка моделей привычными <code>from_pretrained</code> и <code>push_to_hub</code>.
Пайплайн Model2Vec трехэтапный. На первом этапе словарь пропускается через модель Sentence Transformer для получения векторов эмбедингов для каждого слова.
Далее, размерность полученных эмбеддингов сокращается с помощью метода главных компонент (PCA). Наконец, применяется zipf-взвешивание для учета частотности слов в словаре.
Model2Vec работает в двух режимах:
🟠Output, в котором модель работает подобно Sentence Transformer, используя subword токенизацию;
🟠Vocab, в котором создается набор статических эмбедингов слов, аналогично GloVe или Word2Vec.
Оценку производительности Model2Vec делали на наборе данных MTEB на задачах PEARL (оценка качества представления фраз) и WordSim (оценка семантической близости слов).
Результаты показывают, что Model2Vec превосходит по производительности GloVe и модели, основанные на WordLlama по всем задачам оценки.
▶️Пример дистилляции:
<pre language="python">
from model2vec.distill import distill
# Choose a Sentence Transformer model
model_name = "BAAI/bge-base-en-v1.5"
# Distill the model
m2v_model = distill(model_name=model_name, pca_dims=256)
# Save the model
m2v_model.save_pretrained("m2v_model")</pre>
▶️Пример инференса:
<pre language="python">
from model2vec import StaticModel
# Load a model from the HuggingFace hub, or a local one.
model_name = "minishlab/M2V_base_output"
# You can optionally pass a token if you're loading a private model
model = StaticModel.from_pretrained(model_name, token=None)
# Make embeddings
embeddings = model.encode(["It's dangerous to go alone!", "It's a secret to everybody."])</pre>
📌Лицензирование : MIT License.
▪Набор моделей (https://huggingface.co/minishlab)
▪GitHub (https://github.com/MinishLab/model2vec)
(https://t.me/)
#AI #ML #LLM #Embedding #Model2Vec #python
@python_be1