reload_flag=""
if [[ -n "${DEBUG}" ]]; then
reload_flag="--reload"
fi
if [[ -n "${WORKER_COUNT}" ]]; then
workers=${WORKER_COUNT}
else
workers=2
fi
gunicorn --workers ${workers} \
--bind 0.0.0.0:8000 \
${reload_flag} main.wsgi
Писали такие конструкции чтобы проверить наличие флага и сформировать команду правильно?
На самом деле можно сделать тоже самое проще. Для этого используются операторы условной подстановки, доступные в оболочках семейства POSIX.
:- для установки значений по умолчанию
${WORKER_COUNT:-2}
Если переменная не объявлена, то будет дефолтное значение 2.
:+ подставляет указанный текст, если переменная не пуста
${DEBUG:+--reload}
Если что-то есть в переменной то распечатается текст после символа +, в противном случае - ничего. Удобно для опциональных флагов, как в нашем примере.
Итого наш скрипт может выглядеть так:
gunicorn --workers ${WORKER_COUNT:-2} \
--bind 0.0.0.0:8000 \
${DEBUG:+--reload} main.wsgi
Есть еще два оператора.
:= не только подставить дефолтное значение, но и присвоить его переменной, если она пуста
# никаких переменных еще нет
VAL1=${VAL2:=hello}
# теперь доступны обе
echo $VAL1 $VAL2
# hello hello
:? остановить выполнение с ошибкой, если переменной нет.
echo ${MISS:?is required}
bash: MISS: is required
Код выхода будет 1.
#tricks#linux
Обзор соревнований по ML за 2025 год
Есть такая платформа - https://mlcontests.com/, там можно увидеть список актуальных идущих соревнований по ML. Автор выускает ежегодный обзор по соревнованиям. Вот ссылка на мой пост про обзор 2023. 2024 я как-то пропустил, но вот сейчас увидел обзор за 2025: https://mlcontests.com/state-of-machine-learning-competitions-2025/?ref=mlcr25
Из интересного:
• В табличных соревнованиях всё ещё царят бустинги, но нейронки всё активнее используют в блендинге/стакинге
• Некоторые компании (не будем тыкать пальцами, но мы-то знаем) дают своим людям резиновое железо для соревнований. Например, победители одной соревы поделились, поделились тем, что тренировали 48 hours на 512 H100.
• Эпоха BERT в основном прошла, теперь люди активно используют Qwen2.5 и 3
• В соревнованиях по Computer Vision впервые доля решений с транмформерами превзошла долю решений с CNN
• В соревнованиях по аудио в основном используют затюненый Whisper
В отчёте ещё много всего интересного, рекомендую почитать.
#kaggle#datascience
#python#pandas#kaggle
😎
Machine Learning & Data Science with Python, Kaggle & Pandas
Machine Learning A-Z course from zero with Python, Kaggle, Pandas and Numpy for data analysis with hands-on examples
Machine learning is a branch of artificial intelligence (AI) and computer science which focuses on the use of data and algorithms to imitate the way that humans learn, gradually improving its accuracy.
🔗Link
-----
Main channel:@repo_science
Coupons:@freecoupons_reposcience
-----
🎮 Google и Kaggle запустили открытую Game Arena — платформу, где ИИ-системы соревнуются в стратегических играх, чтобы измерить интеллект.
🤖 Зачем это нужно? Старые бенчмарки уже не работают — LLM просто запоминают ответы. Идея в том, что игры — лучший бенчмарк для проверки интеллекта. Они проверяют не факты, а стратегическое мышление, адаптацию и память.
♟️ Первый турнир: шахматы пройдет сегодня. 8 передовых моделей, включая GPT‑4, Claude Opus и Gemini, сразятся друг с другом без использования внешних инструментов.
📊 По итогам матчей формируется открытый рейтинг моделей — кто реально умеет думать, а не просто угадывать.
🧠 Главное отличие от других арен:
✅ Круговая система «каждый играет с каждым».
✅ Позиции меняются каждую секунду
✅ Ошибки наказываются немедленно
✅ Побеждает не та, что знает ответ, а та, что думает
Kaggle собирает рейтинг моделей, который будет обновляться по итогам матчей. В будущем добавят Го, покер и видеоигры.
Стримы первых соревнований пройдут: 5–7 августа на YouTube с Хикару, Леви и Магнусом Карлсеном.
🟠 Подробнее об Арене: https://blog.google/technology/ai/kaggle-game-arena
@ai_machinelearning_big_data
#google#kaggle#arena