12637
Все для python разработчиков админ - @notxxx1 @python_job_interview - Python собеседования @ai_machinelearning_big_data - машинное обучение @itchannels_telegram - 🔥лучшие ит-каналы @programming_books_it - it книги @pythonl РКН: clck.ru/3Fmy2j
🖥 SQL-квест: фэнтезийное приключение для аналитиков данных
Представь фэнтези-мир, где заклинания - это SQL-запросы, а древние артефакты спрятаны в таблицах и JSON-документах.
🧙Ты - боевой дата-аналитик, который с помощью SQL, Python, ETL и визуализаций охотится за харизматичным злодеем Архивариусом Пакостусом, что ломает индексы, крадёт данные и готовит “шторм данных” на столицу.🔮
В каждом эпизоде тебя ждут: выборы с последствиями, хитрые задачи от простых SELECT до рекурсивных CTE и BigQuery, юмор, эпик и неожиданные повороты.
Хочешь проверить, сможешь ли ты спасти королевство не мечом, а запросами? Тогда добро пожаловать в SQL-квест.
🪄 Начать квест: https://uproger.com/sql-kvest-fentezijnoe-priklyuchenie-dlya-analitikov-dannyh/
🎮🚀 NitroGen: Модель для игровых агентов
NitroGen — это открытая модель для создания универсальных игровых агентов, способная предсказывать действия на основе пиксельного ввода. Обученная на крупнейшем наборе данных игрового видео, модель может адаптироваться к новым играм.
🚀Основные моменты:
- Многофункциональная модель для различных игр.
- Обучение на данных из интернет-видео.
- Поддержка адаптации к новым играм после обучения.
- Работает на Windows с Python ≥ 3.12.
📌 GitHub: https://github.com/MineDojo/NitroGen
#python
Командная разработка нового уровня
SourceCraft обновился, чтобы команда писала быстрее, безопаснее и спокойнее.
🤖 Специальная ИИ-система для проверки безопасности кода и оформления найденных уязвимостей в карточки, генерация описаний к изменениям для экономии времени при коммитах.
🔧 Поддержка Gitlab CI/CD YAML, обновлённая логика релизов и управление командами.
💻 Конфликты в PR решаются прямо через web-интерфейс SourceCraft.
🔒 Безопасный кодинг: дашборд уязвимостей по всем репозиториям, страница Code Scanning с результатами SAST, rescan и список библиотек с уязвимостями в SCA.
Обновлён UI для CI/CD и добавлены Telegram-нотификации. SourceCraft — единая точка для умного кода. Расскажем в подробностях и ответим на вопросы в канале
🧠 Инструмент для решения математических задач
Nomos - это интеллектуальная платформа для решения математических задач и написания доказательств на естественном языке. Она использует параллельные рабочие процессы для генерации и оценки решений, обеспечивая высокую эффективность и точность.
🚀Основные моменты:
- Решение задач с помощью модели Nomos-1.
- Параллельная работа для ускорения процесса.
- Финализация результатов через турниры и консолидацию.
- Оценка решений по 7-балльной шкале.
📌 GitHub: https://github.com/NousResearch/nomos
#python
⚡️ Совет по чистому Python-коду:
Избегайте вложенности и длинных функций - разбивайте логику на маленькие, понятные шаги.
Плохо:
def process(data):
if data:
for x in data:
if x > 10:
print("ok")
def is_valid(x):
return x > 10
def process(data):
for x in data:
if is_valid(x):
print("ok")
🧩 Утилиты для C++ и Python
cpp-pyutils предлагает набор инструментов для упрощения взаимодействия между C++ и Python. Библиотека включает функции для работы с данными, что позволяет легко интегрировать оба языка в одном проекте.
🚀 Основные моменты:
- Интеграция C++ и Python
- Удобные функции для работы с данными
- Поддержка кросс-языковых вызовов
📌 GitHub: https://github.com/xZepyx/cpp-pyutils
#cpp
🕵️♂️ Spyder: OSINT Research Tool
Spyder — это универсальный инструмент для открытой разведки (OSINT), который позволяет выполнять поиск информации по крупным глобальным базам данных. Он предоставляет доступ к данным о номерах телефонов, IP-адресах, социальных сетях и многом другом.
🚀Основные моменты:
- Поиск информации о номерах телефонов и IP-адресах
- Доступ к данным социальных сетей (Facebook, Instagram и др.)
- Поиск по именам и физическим адресам
- Проверка доменов и номерных знаков
- Утилита для бомбардировки электронной почты
📌 GitHub: https://github.com/portrret/spyder-osint
Вопрос с собеседования
Что выведет этот код и почему?
a = [1, 2, 3]
b = a
a += [4, 5]
print(a)
print(b)
a = (1, 2, 3)
b = a
a += (4, 5)
print(a)
print(b)
Часть 1. Списки
a = [1, 2, 3]
b = a
a += [4, 5]
print(a)
print(b)
a = [1, 2, 3]
print(a) # [1, 2, 3, 4, 5]
print(b) # [1, 2, 3, 4, 5]
# Часть со списком:
[1, 2, 3, 4, 5]
[1, 2, 3, 4, 5]
# Часть с кортежем:
(1, 2, 3, 4, 5)
(1, 2, 3)
🔥КАК УСТАНОВИТЬ PYTHON: Самый простой способ
Самый быстрый и эффективный способ поставить Python без лишних настроек это использовать пакетный менеджер системы. Он сам подтянет зависимости, поставит актуальную версию и настроит доступ к python и pip. Это надёжнее чем скачивать вручную и проще чем возиться с окружениями. Подходит и новичкам и разработчикам.
# Windows через winget
winget install Python.Python
# macOS через Homebrew
brew install python
# Ubuntu и Debian
sudo apt install python3 python3-pip
# Проверка установленной версии
python3 --version
pip3 --version
⚡️ Полное руководство по Bash: от основ к продвинутым темам
Bash (Bourne Again SHell) — это одна из самых популярных Unix-оболочек, широко используемая для запуска команд и написания скриптов в Linux и macOS.
Скрипты Bash позволяют автоматизировать рутинные задачи, объединять команды в программы и управлять системой через командную строку.
Данное руководство последовательно познакомит вас с основами Bash (синтаксис, переменные, условия, циклы и т.д.), а затем перейдет к продвинутым возможностям (таким как настройка strict mode, использование trap-обработчиков, планирование задач через cron и др.). Мы рассмотрим практические примеры скриптов, сопровождая их поясняющими комментариями, чтобы у вас сложилось цельное понимание создания надежных Bash-скриптов.
https://uproger.com/polnoe-rukovodstvo-po-bash-ot-osnov-k-prodvinutym-temam/
Видео: https://www.youtube.com/watch?v=ei0a1TT4ukU
🖥 ПОДКЛЮЧАЕМ CHATGPT К ТЕЛЕГРАМ-БОТУ НА PYTHON
Самый простой способ сделать Telegram-бота с ChatGPT - использовать API OpenAI.
Ты создаёшь хендлер сообщений, прокидываешь текст в openai.ChatCompletion.create и возвращаешь ответ.
⚡ Важно:
- Используй context user data для хранения диалога (если нужен контекст)
- Храни ключи через переменные окружения
- Не забудь выставить webhook или polling
Читать полностью…
import openai
from telegram import Update
from telegram.ext import ApplicationBuilder, MessageHandler, filters, ContextTypes
openai.api_key = "sk-..."
async def chatgpt_handler(update: Update, context: ContextTypes.DEFAULT_TYPE):
user_input = update.message.text
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[{"role": "user", "content": user_input}]
)
await update.message.reply_text(response.choices[0].message.content)
app = ApplicationBuilder().token("TELEGRAM_BOT_TOKEN").build()
app.add_handler(MessageHandler(filters.TEXT & ~filters.COMMAND, chatgpt_handler))
app.run_polling()
📊 Подробный практический гайд по статистике на Python
Этот практический гайд по статистике на Python - ваш надёжный проводник в мир анализа, визуализации и интерпретации данных.
От простых описательных показателей до регрессий и временных рядов — с примерами, кодом и реальными задачами. Всё, что нужно, чтобы уверенно применять статистику на практике.
🟠Гайд
✔️ Эффективность локального ИИ выросла в 5.3 раза за два года.
Группа Hazy Research провела исследование, доказывающее рост жизнеспособности локального ИИ-инференса. Для оценки взяли унифицированный показатель «интеллект на ватт» (intelligence per watt, IPW) - это соотношение точности выполнения задачи к потребляемой мощности.
Результаты показали, что локальные LLM до 20 млрд. параметров уже способны обрабатывать 88.7% типичных одноэтапных запросов в чатах и задачах на логику. Общая эффективность локального ИИ показала рост в 5.3 раза за период с 2023 по 2025 год. Этот скачок обусловлен как улучшением самих моделей (в 3.1 раза), так и развитием аппаратных ускорителей (в 1.7 раза).
stanford.edu
✔️ LeJEPA: self-supervised learning без сложных эвристик.
Ян Лекун предложил простой метод ля self-supervised обучения - LeJEPA. Традиционные подходы требовали сложных трюков чтобы избежать коллапса признаков: stop-gradient и сетей учитель-студент. LeJEPA отказывается от этих эвристик в пользу одного регуляризатора, SIGReg (Sketched Isotropic Gaussian Regularization).
Задача SIGReg - заставить векторы признаков равномерно распределяться в пространстве, формируя изотропное сферическое облако. В своей работе, Ян доказывает, что такая форма математически оптимальна для минимизации ошибок на будущих задачах.
На практике это делает обучение более стабильным, упрощает его масштабирование и оценку качества модели. Тестовая модель на 1.8 млрд. параметров и показала 79% точности на ImageNet-1K. Код LeJEPA доступен на GitHub.
arxiv.org
✔️ Lumine от ByteDance: ИИ-агент, способный часами проходить 3D-игры.
ByteDance разработал ИИ-агента, который может самостоятельно выполнять многочасовые миссии в сложных открытых 3D-мирах, например в Genshin Impact, Honkai: Star Rail и Wuthering Waves. В отличие от своих конкурентов, Lumine обрабатывает видеопоток с экрана и генерирует команды для клавиатуры и мыши в реальном времени.
Агент построен на базе Qwen2-VL-7B и обучен на 1700 часах человеческого геймплея. Сначала он осваивал базовые действия, а затем учился следовать инструкциям и, наконец, развил способность к адаптивному мышлению на небольшом ризонинг-датасете.
В тестах Lumine показал способности сражаться с боссами, используя тактику, решать головоломки и взаимодействовать с NPC. Что важно, агент может переносить навыки, справляясь с задачами в незнакомых локациях и в совершенно новых играх без дополнительного обучения.
lumine-ai.org
✔️ IBM представила квантовые процессоры Nighthawk и Loon.
IBM анонсировала 2 новых квантовых процессора и объявила о переносе всего производства на 300-мм пластины на мощностях Albany NanoTech. Этот переход позволяет снизить стоимость чипов и, по заявлению компании, уже удвоил скорость НИОКР.
Nighthawk на 30% увеличивает сложность схем при прежнем уровне ошибок и ориентирован на задачи с 5000 двухкубитных гейтов. Он станет доступен пользователям IBM к концу 2025 года. Чип Loon, в свою очередь, сфокусирован на отказоустойчивости, он использует эффективные коды коррекции ошибок (qLDPC), реализованные на год раньше, чем планировалось.
Опираясь на эти инновации, IBM подтвердила свои планы по достижению квантового превосходства к 2026 году и созданию полноценной отказоустойчивой системы к 2029.
ibm.com
✔️ Chad IDE: среда разработки со встроенными TikTok и Tinder.
Стартап Clad Labs, выпустился из Y Combinator с продуктом «Chad: The Brainrot IDE». Это среда разработки со встроенными развлечениями. Идея в том, что пока разработчик ждет завершения задачи от ИИ-ассистента, он может полистать TikTok, Tinder или поиграть в мини-игры прямо в окне IDE.
По мнению основателей, это решает проблему «переключения контекста». Вместо того чтобы брать в руки телефон и полностью выпадать из рабочего процесса, разработчик остается в среде разработки и может мгновенно вернуться к коду, как только ИИ закончит свою работу.
Сейчас Chad IDE находится в стадии закрытого бета-тестирования, доступ можно получить только по приглашению.
techcrunch.com
@ai_machinelearning_big_data
#news #ai #ml
LoRA-модель от autoweeb, которая превращает обычные фотографии в аниме-стиль ☺️
Основана на Qwen-Image-Edit-2509.
Работает просто: загружаете фото, пишете что-то вроде «transform into anime» - и получаете аниме-версию исходного снимка. Настроек минимум, результат отличный.
Ссылка: https://huggingface.co/autoweeb/Qwen-Image-Edit-2509-Photo-to-Anime
@data_analysis_ml
AIJ Deep Dive: специальный очный трек для AI-профи в рамках международной конференции AI Journey!
Среда для профессионального роста, общение с экспертами мировой AI-индустрии и другими AI-профи — всё это ждёт вас на треке AIJ Deep Dive. В программе — только главные аспекты работы с AI:
Это событие точно нельзя пропустить
1️⃣20 ноября — день Бизнеса: разберём успешные кейсы внедрения, оценим эффективность и практические результаты.
2️⃣ 21 ноября — день Науки: проведём глубокий анализ IT-решений, прорывных научных исследований, R&D-разработок и передовых методик.
☠️ Один Python-скрипт - убивает потребность в Excel #python #Excel
CSV в папке - и через секунды у тебя:
- быстрый анализ без ручных фильтров
- топ товаров и суммарная выручка
- график продаж по дням
- один повторяемый сценарий вместо 20 кликов
Фишка в том, что ты один раз написал скрипт - и дальше просто кидаешь новые CSV, получая одинаковый отчёт каждый раз.
Читать полностью…
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_csv("sales.csv", parse_dates=["date"])
print("Выручка:", df["revenue"].sum())
print(df.groupby("product")["revenue"].sum().sort_values(ascending=False).head(5))
daily = df.groupby(df["date"].dt.date)["revenue"].sum()
daily.plot(title="Выручка по дням")
plt.tight_layout(); plt.show()
✍️ python-course - структурированный и глубокий разбор Python от базовых принципов до продвинутых тем.
Это подробный текстовый курс для вдумчивого самостоятельного изучения. Материал выстроен последовательно: от основ синтаксиса и ключевых конструкций — к ООП, генераторам, итераторам, замыканиям и внутреннему устройству языка. Без воды, с акцентом на понимание того, как и почему Python работает именно так.
Подойдёт тем, кто хочет:
- выстроить прочный фундамент
- систематизировать разрозненные знания
- глубже разобраться во внутренних механизмах языка
https://python-course.eu/
⚡️ Большинство быстрых text-to-speech моделей звучат роботизировано.
Большинство качественных - слишком медленные.
И почти ни одна не решает вопрос аутентичности аудио на уровне архитектуры.
Resemble AI закрыли все три проблемы сразу.
Chatterbox Turbo 0 это:
🟢 <150 мс до первого звука
🟢 Качество уровня SOTA - превосходит более крупные проприетарные модели
🟢 Естественные, программируемые эмоции и интонации
🟢 Zero-shot клонирование голоса всего по 5 секундам аудио
🟢 PerTh watermarking - проверяемое и аутентифицированное аудио
🟢 Полностью open source, никакой «чёрной магии»
Редкий пример, когда скорость, качество и безопасность не идут на компромисс, а работают вместе.
HuggingFace: https://huggingface.co/spaces/ResembleAI/chatterbox-turbo-demo
🚀 Большое обновление Qwen Code v0.2.2–v0.3.0
✨ Два ключевых обновления:
🎯 Stream JSON
• --output-format stream-json — потоковый вывод
• --input-format stream-json — структурированный ввод
• 3-уровневая архитектура адаптеров + управление сессиями
• Идеально для SDK, автоматизации и CI/CD
🌍 Полная интернационализация
• Встроенные интерфейсы EN/CN + расширяемые языковые пакеты
• /language ui zh-EN - мгновенная смена языка
• /language output English - задаём язык ответов модели
• Сообщество может добавлять свои локализации 🌏
🛡️ Безопасность и стабильность выросли
• Защита от переполнения памяти
• Починили кодировки Windows
• Улучшена кроссплатформенность и определение ripgrep
• Переработана авторизация и управление authType
• Стабильный CI/CD и исправленные интеграционные тесты
• Поддержка провайдера ModelScope и stream_options
• Улучшены подсказки, уведомления в терминале и логика завершения промптов
• Множество внутренних фиксов - заметно более стабильная работа 💪
https://github.com/QwenLM/qwen-code
🔥 На stepik вышел курс, который учит Создавать настоящие AI-сервисы, а не просто запускать скрипты?
Этот практический курс по Python и FastAPI покажет, как собрать полноценное приложение с ИИ, базой данных, автогенерацией контента и Telegram-ботом.
Ты пройдёшь путь от первого HTTP-запроса до рабочего сервиса, который сам генерирует текст через ИИ, сохраняет данные, отправляет результаты по расписанию и отвечает пользователям.
Никакой теории ради теории - только практические шаги, из которых рождается реальный продукт.
🎁 48 часов действует скидка в 40% процентов
👉 Начать учиться на Stepik
🔥 Python: Эффективное использование контекстных менеджеров
Контекстные менеджеры в Python позволяют управлять ресурсами и предотвратить утечки, особенно при работе с файлами. Используя with, вы гарантируете, что файл будет закрыт автоматически, даже если произойдет ошибка.
from contextlib import contextmanager
@contextmanager
def open_file(filename):
try:
f = open(filename, 'r')
yield f
finally:
f.close()
with open_file('example.txt') as file:
data = file.read()
print(data)
✔️ Как организовать архитектуру большого Python-проекта?
Главная цель - чтобы через полгода было не стыдно открывать код: понятно где что лежит, как это тестировать и куда встраивать новые фичи.
Основные принципы:
- Разделяй по ответственности, а не по типу файла
- Минимизируй связь между слоями
- Явно отделяй ядро домена от инфраструктуры (БД, HTTP, очереди)
Пример базовой структуры:
- app/
- api/ - HTTP handlers, REST, gRPC, CLI
- services/ - бизнес-логика, сценарии use case
- domain/ - сущности, модели, value objects
- repositories/ - работа с БД, кэшами, внешними сервисами
- config/ - настройки, env, схемы конфигурации
- utils/ - вспомогательные функции, которые не завязаны на домен
- tests/ - тесты по тем же модулям, что и в app/
- scripts/ - миграции, разовые утилиты, maintenance
Рекомендации:
- Один входной файл (main.py или cli.py), вся логика - в app/*
- Конфигурацию не хардкодить, а прокидывать через env и config-объекты
- Внутри services работать с абстрактными интерфейсами репозиториев, а не с конкретным ORM
- С самого начала заводить тесты, пусть даже простые, и поддерживать схему tests/ в том же дереве, что и код
- Любой новый модуль должен отвечать на вопрос: к какому слою относится и от кого ему можно зависеть
Если проект растет, не бойся дробить:
- крупный модуль на подмодули
- общие зависимости в отдельный layer (shared, common)
- разные bounded context в отдельные пакеты внутри app/
Архитектура большого проекта - это не про идеальный паттерн, а про понятные границы и минимальный хаос.
https://uproger.com/kak-organizovat-arhitekturu-bolshogo-python-proekta/
Видео: https://www.youtube.com/watch?v=Dk7A8ElHcKE
🖥 Bash Академия: секреты командной строки, которые нигде не рассказывают
Олег Шелест - профессионал по информационной безопасности, раскрывает скрытые механики Linux, с помощью наглядных картинок и коротких, максимально понятных разборов у себя в тг канале.
- Без воды.
- Без лишней теории.
Только практические приёмы, которые реально используют профи.
Если хочешь уверенно владеть Bash - здесь ты получишь всё, что нужно: t.me/bashmastter
Боты — это не будущее, это уже норма для Python-разработчика 🐍
Вас спросят на собеседовании: "А вы ботов писали?" И если ответите "нет" — потеряете позицию тому, кто написал.
За 4 месяца вы писать ботов быстро и качественно.
Что будет в стеке:
✅ aiogram и pyrogram — библиотеки, что нужны в каждом проекте
✅ Асинхронность (asyncio/await) — напишешь быстрые боты
✅ FSM, middlewares, webhooks — архитектура, как в боевых условиях
✅ SQLAlchemy + Postgres — боты со своей БД
✅ Django админ-панель — управляешь ботом, как профессионал
✅ AI-интеграции — Hugging Face, локальные модели, бесплатные сервисы РФ
✅ Docker + облако — задеплоишь, как в real projects
✅ VK API + Telegram — мультиплатформенность в резюме
Это не курс "Hello Bot" — это боевая подготовка.
⏰ Старт 26 ноября — это последний шанс в этом году!
Сейчас скидка 10% на сайте, а по промокоду Chatbots5 скидка ещё 5%!
👉 Регистрация и подробности о курсе: https://tglink.io/8357e54e5f21?erid=2W5zFJaCkVv
#реклама
О рекламодателе
🚨 SQL Никогда НЕ ДЕЛАЙ ТАК #sql
НИКОГДА НЕ ЛОМАЙ ИНДЕКСЫ ФУНКЦИЯМИ: не оборачивай индексируемые поля в функции внутри WHERE.
Как только ты пишешь LOWER(), CAST(), COALESCE() или любые вычисления по колонке — индекс перестаёт работать, и запрос падает в полное сканирование таблицы.
Это одна из самых тихих причин, почему запросы внезапно превращаются в тормоза.
Вместо этого приводи значения заранее или используй функциональные индексы.
Читать полностью…
Плохо: индекс по email НЕ используется
SELECT *
FROM users
WHERE LOWER(email) = 'user@example.com';
-- Хорошо: нормализуем значение заранее
SELECT *
FROM users
WHERE email = 'user@example.com';
-- Или создаём функциональный индекс (PostgreSQL)
CREATE INDEX idx_users_email_lower ON users (LOWER(email));
📊 Калькулятор налогов на криптовалюту 🚀
Crypto Tax Calculator — это открытое решение для расчета налогов на криптовалюту и личные доходы. Подходит для индивидуальных пользователей и организаций, обеспечивая прозрачность и соответствие требованиям разных налоговых юрисдикций. Инструмент объединяет все криптоактивы в понятный отчет.
🚀 Основные моменты:
- Поддержка множества криптовалют и фиатных валют
- Автоматическое извлечение данных из популярных бирж
- Генерация отчетов в PDF и CSV
- Конфигурация параметров для точных расчетов
- Интерактивный режим для удобного использования
📌 GitHub: https://github.com/xhyata/crypto-tax-calculator
#python
Ты пилишь бэкенд на Python. Заказчик спрашивает: "А можем добавить AI-поиск?"
Ты: "Эээ... ну наверное... дорого..."
Курс «LangChain: с нуля до продакшн» — за 7 недель научишься:
→ RAG-поиск по документам (FAQ-бот, поиск по базе знаний)
→ API на FastAPI с LLM под капотом
→ Агенты для анализа CSV/JSON
Не нужно становиться ML-инженером. Просто интегрируешь LLM как ещё один сервис.
Скидка 25% — 72 часа.
Начать со скидкой
📝 NoteDiscovery: Ваши заметки под контролем
NoteDiscovery — это легкое, саморазворачиваемое приложение для ведения заметок, которое обеспечивает полный контроль над вашей базой знаний. С современным интерфейсом вы можете писать, организовывать и находить свои заметки на собственном сервере.
🚀Основные моменты:
- 🔒 Полная конфиденциальность — ваши заметки остаются на вашем сервере
- 💰 Бесплатно — никаких подписок или скрытых платежей
- 🚀 Быстрая и легкая навигация — мгновенный поиск
- 🎨 Настраиваемые темы — множество вариантов оформления
- 🔌 Расширяемость — система плагинов для дополнительных функций
📌 GitHub: https://github.com/gamosoft/NoteDiscovery
#python
Основные команды Docker, которые нужно помнить в работе:
- docker ps – показывает запущенные контейнеры
- docker ps -a – показывает все контейнеры, включая остановленные
- docker images – список локальных образов
- docker pull nginx – скачать образ
- docker run nginx – запустить контейнер
- docker run -d nginx – запустить в фоне
- docker run -p 8080:80 nginx – проброс порта
- docker exec -it <id> sh – зайти внутрь контейнера
- docker logs <id> – посмотреть логи
- docker stop <id> – остановить контейнер
- docker rm <id> – удалить контейнер
- docker rmi <image> – удалить образ
- docker build -t myapp . – собрать образ
- docker compose up -d – поднять сервисы
- docker compose down – остановить и удалить их
🖼️🛠️ Удаление водяных знаков из изображений с Sora2
Sora2 Watermark Remover — это инструмент для автоматического удаления водяных знаков с изображений, использующий современные алгоритмы обработки. Он подходит для работы с различными типами изображений и может быть полезен как для разработчиков, так и для дизайнеров.
🚀Основные моменты:
- Эффективное удаление водяных знаков
- Поддержка различных форматов изображений
- Легкая интеграция в проекты
- Открытый исходный код для доработки
- Простой интерфейс для пользователей
📌 GitHub: https://github.com/ammiehax/sora2-watermark-remover
#python