Python Community
12.9K subscribers
1.25K photos
34 videos
15 files
731 links
Python Community RU - СНГ сообщество Python-разработчиков

Чат канала: @python_community_chat

Сотрудничество: @cyberJohnny и @Sergey_bzd

РКН реестр:
https://knd.gov.ru/license?id=67847dd98e552d6b54a511ed&registryType=bloggersPermission
Download Telegram
📞 bpytop (https://github.com/aristocratos/bpytop) — это современный инструмент для мониторинга ресурсов, который работает на Linux, macOS и FreeBSD.

💡 Он показывает информацию о загрузке процессора, использовании памяти, дисках, сетевых подключениях и запущенных процессах в удобном и привлекательном интерфейсе. Написанный на Python, bpytop предлагает гибкие возможности настройки и простоту использования, включая полную поддержку управления с помощью мыши.

🌟 Этот инструмент отличается быстрым откликом, интуитивно понятным управлением и визуализацией системных данных в реальном времени. Пользователи могут настраивать интерфейс, выбирая цветовые схемы, управлять процессами прямо из меню, отслеживать сетевые подключения и даже работать с несколькими устройствами одновременно.

🔐 Лицензия: Apache-2.0

🖥 Github (https://github.com/aristocratos/bpytop)
@Python_Community_ru
🌟 Model2Vec: разработка компактных и быстрых моделей на основе Sentence Transformer.

Model2Vec - это библиотека, позволяющая создавать компактные и быстрые модели на основе предобученных моделей Sentence Transformer.

С помощью Model2Vec можно создавать эмбединг-модели для слов и предложений, которые значительно меньше по размеру, но при этом сопоставимы по производительности с исходными моделями Sentence Transformer.

Вот некоторые ключевые особенности:

🟢 Быстрая дистилляция, процесс создания модели занимает всего несколько минут.

🟢 Быстрый инференс, который в 500 раз быстрее на CPU по сравнению с оригинальной моделью.

🟢 Возможность использования любой модели Sentence Transformer с любым словарем (BYOM и BYOV).

🟢 Мультиязычность, требуется лишь мультиязычная модель в качестве источника.

🟢 Интеграция с Huggingface, поддержка загрузки и выгрузки моделей с использованием привычных методов from_pretrained и push_to_hub.

Пайплайн Model2Vec состоит из трех этапов. На первом этапе словарь проходит через модель Sentence Transformer для получения векторов эмбеддингов для каждого слова.

Затем размерность полученных эмбеддингов уменьшается с помощью метода главных компонент (PCA). В завершение применяется zipf-взвешивание для учета частоты слов в словаре.

Model2Vec работает в двух режимах:

🟠 Output, где модель функционирует как Sentence Transformer с использованием subword токенизации.

🟠 Vocab, где создается набор статических эмбеддингов слов, аналогично GloVe или Word2Vec.

Оценка производительности Model2Vec проводилась на наборе данных MTEB по задачам PEARL (оценка качества представления фраз) и WordSim (оценка семантической близости слов).

Результаты показывают, что Model2Vec превосходит GloVe и модели на основе WordLlama по всем задачам оценки.

▶️ Пример дистилляции:

from model2vec.distill import distill

# Выбор модели Sentence Transformer
model_name = "BAAI/bge-base-en-v1.5"

# Дистилляция модели
m2v_model = distill(model_name=model_name, pca_dims=256)

# Сохранение модели
m2v_model.save_pretrained("m2v_model")

▶️ Пример инференса:

from model2vec import StaticModel

# Загрузка модели из HuggingFace hub или локальной.
model_name = "minishlab/M2V_base_output"
# Можно передать токен, если загружаете приватную модель
model = StaticModel.from_pretrained(model_name, token=None)

# Создание эмбеддингов
embeddings = model.encode(["It's dangerous to go alone!", "It's a secret to everybody."])

📌 Лицензирование: MIT License.

Набор моделей (https://huggingface.co/minishlab)
GitHub (https://github.com/MinishLab/model2vec)

(https://t.iss.one/pythonl)

#AI #ML #LLM #Embedding #Model2Vec #python
@Python_Community_ru
🖥 MicroPie (https://github.com/patx/micropie) — это очень маленький веб-фреймворк на Python, созданный для разработки веб-приложений с минимальными усилиями.

🌟 Он поддерживает асинхронные веб-приложения благодаря реализации спецификации ASGI и обеспечивает высокую производительность и гибкость. Среди основных возможностей MicroPie — автоматическое сопоставление URL с функциями, управление сессиями с помощью cookies, поддержка шаблонов через Jinja2 (при установленной библиотеке), а также минимальные зависимости, что упрощает процесс разработки и развертывания приложений.

🔐 Лицензия: BSD-3-Clause

🖥 Github (https://github.com/patx/micropie)
@Python_Community_ru
⭐️ Python 1.0.0 был представлен 31 год назад.
@Python_Community_ru
🔥13👍4
⚡️ Surprise

Создание эффективной рекомендательной системы с нуля может потребовать значительного времени и объема программного кода.

Surprise облегчает этот процесс, позволяя разрабатывать рекомендательные системы с минимальным количеством кода, предоставляя встроенные алгоритмы, готовые наборы данных и средства для оценки модели.

Github (https://github.com/NicolasHug/Surprise)
Пример (https://codecut.ai/how-to-build-a-recommendation-engine-using-surprise-in-python/)
@Python_Community_ru
👍1
🖥 httpdbg (https://github.com/cle-b/httpdbg) — это инструмент с открытым исходным кодом, который предназначен для отладки HTTP(S)-запросов в Python-программах.

🌟 Он дает возможность разработчикам перехватывать и анализировать HTTP(S)-запросы, которые их приложения отправляют, без необходимости изменять исходный код. Для использования инструмента достаточно запустить программу с помощью команды pyhttpdbg вместо стандартного python, после чего перехваченные запросы можно просматривать через веб-интерфейс по адресу https://localhost:4909.

🔐 Лицензия: Apache-2.0

🖥 Github (https://github.com/cle-b/httpdbg)
@Python_Community_ru
🖥 Fastcore (https://github.com/AnswerDotAI/fastcore) — это библиотека на Python, которая расширяет возможности языка для работы с библиотекой fastai.

💡 Она предлагает функции для тестирования, многократной диспетчеризации, композиции объектов и функционального программирования. Fastcore внедряет возможности из других языков, таких как множественная диспетчеризация из Julia и миксины из Ruby, а также улучшает стандартные функции Python, включая параллельную обработку.

🔐 Лицензия: Apache-2.0

🖥 Github (https://github.com/AnswerDotAI/fastcore)
@Python_Community_ru
🖥 Ollama Python (https://github.com/ollama/ollama-python) — это библиотека, созданная для соединения проектов на Python версии 3.8 и выше с платформой Ollama.

🌟 Она предлагает удобный интерфейс для работы с языковыми моделями, такими как Llama 3.2, что позволяет разработчикам легко добавлять функции обработки естественного языка в свои приложения.

🔐 Лицензия: MIT

🖥 Github (https://github.com/ollama/ollama-python)
@Python_Community_ru
🖥 python-benedict (https://github.com/fabiocaccamo/python-benedict?tab=readme-ov-file) — это расширение стандартного словаря Python, которое предлагает дополнительные функции для удобной работы с данными.

💡 Основные особенности включают возможность доступа к значениям по списку ключей (keylist), доступ к вложенным данным с помощью разделителей (keypath) и доступ к элементам словаря через атрибуты (keyattr). Кроме того, библиотека предоставляет встроенные методы для чтения и записи данных в различных форматах, таких как JSON, YAML, XML, CSV, INI, TOML, HTML, Base64, а также для работы с файлами Excel и строками запросов.

🔐 Лицензия: MIT

🖥 Github (https://github.com/fabiocaccamo/python-benedict?tab=readme-ov-file)
@Python_Community_ru
🖥 NiceGUI (https://github.com/zauberzeug/nicegui) — это удобный фреймворк на Python, который позволяет создавать веб-интерфейсы, отображающиеся в вашем браузере.

🌟 С его помощью можно легко создавать такие элементы, как кнопки, диалоги, разметка Markdown, 3D-сцены, графики и многое другое. NiceGUI идеально подходит для разработки небольших веб-приложений, информационных панелей, проектов в области робототехники, решений для умного дома и других схожих задач.

🔐 Лицензия: MIT

🖥 Github (https://github.com/zauberzeug/nicegui)
@Python_Community_ru
🖥 CodeCapy (https://github.com/scrapybara/codecapy) — это бот, который автоматически тестирует код в пулл-реквестах на GitHub.

🌟 Он находит новые пулл-реквесты, создает UI-тесты на естественном языке на основе внесенных изменений, выполняет эти тесты в изолированных средах Scrapybara и публикует результаты в комментариях к пулл-реквестам.

🔐 Лицензия: MIT

🖥 Github (https://github.com/scrapybara/codecapy)
@Python_Community_ru
🖥 LLM Functions (https://github.com/sigoden/llm-functions?tab=readme-ov-file) — это проект с открытым исходным кодом, который упрощает разработку инструментов и агентов, основанных на больших языковых моделях, с использованием таких языков программирования, как Bash, JavaScript и Python.

🌟 Он позволяет разработчикам легко интегрировать LLM с собственным кодом, что открывает широкие возможности для выполнения системных команд, обработки данных, работы с API и многого другого.

🔐 Лицензия: MIT

🖥 Github (https://github.com/sigoden/llm-functions)
@Python_Community_ru
🖥 Mail0 (https://github.com/nizzyabi/Mail0) — это проект с открытым исходным кодом, который нацелен на создание альтернативы Gmail. Он позволяет пользователям управлять своей электронной почтой, не полагаясь на крупных провайдеров.

🌟 Проект предоставляет возможность самостоятельно хостить почтовый сервер, интегрироваться с внешними сервисами (такими как Gmail и Outlook) и обеспечивает конфиденциальность, так как данные находятся под полным контролем пользователя. Основное внимание уделяется прозрачности, приватности и гибкости настройки.

🖥 Github (https://github.com/nizzyabi/Mail0)
@Python_Community_ru
🔥1
🖥 PdfDing (https://github.com/mrmn2/PdfDing) — это программа для управления, просмотра и редактирования PDF-документов, которая предлагает удобный интерфейс для работы на разных устройствах.

🌟 Она позволяет открывать PDF-файлы прямо в браузере и сохраняет место чтения, чтобы можно было продолжить с того же места позже. Пользователи могут организовывать свои PDF-документы с помощью многоуровневых тегов, добавлять комментарии, выделения и рисунки, а также использовать такие функции, как темный режим, инвертированные цвета и настраиваемые цветовые темы. Кроме того, PdfDing поддерживает единый вход (SSO) через OIDC и предоставляет возможность делиться PDF-документами с внешними пользователями с помощью ссылок или QR-кодов с опциональным контролем доступа.

🔐 Лицензия: GPL-3.0

🖥 Github (https://github.com/mrmn2/PdfDing)
@Python_Community_ru
🔥5👍2
🖥 Rich — это библиотека на Python, которая предназначена для отображения форматированного текста и улучшения вывода в терминале.

🌟 Она позволяет просто добавлять цвета, стили, таблицы, индикаторы прогресса, подсветку синтаксиса, отображение Markdown и многое другое в консольные приложения.

🔐 Лицензия: MIT

🖥 Github
@Python_Community_ru
🔥4
🖥 Shellingham (https://github.com/sarugaku/shellingham) — это библиотека на Python, предназначенная для определения оболочки, в которой работает текущий процесс Python. Она предлагает функцию detect_shell(), которая возвращает кортеж с именем оболочки (в нижнем регистре) и путем к исполняемому файлу этой оболочки.

🌟 Пример использования:

import shellingham

shell_name, shell_path = shellingham.detect_shell()
print(f"Shell: {shell_name}, Path: {shell_path}")

Лицензия: ISC

Github (https://github.com/sarugaku/shellingham)
@Python_Community_ru
🖥 Arq — это библиотека для Python, которая предоставляет возможность асинхронного выполнения фоновых задач и удаленного вызова процедур с использованием asyncio и Redis. Она помогает разработчикам просто создавать и управлять очередями заданий, обеспечивая при этом высокую производительность и возможность масштабирования.

🖥 Github
@Python_Community_ru
🔥3
🖥 Pyper (https://github.com/pyper-dev/pyper) — это универсальный фреймворк для организации конкурентной и параллельной обработки данных в Python, который опирается на принципы функционального программирования. Он предназначен для использования в ETL-системах, микросервисах для обработки данных и системах сбора информации.🔐 Лицензия: MIT🖥 Github (https://github.com/pyper-dev/pyper) (https://t.iss.one/pythonl)
@Python_Community_ru