Python вопросы с собеседований
25.1K subscribers
539 photos
22 videos
17 files
426 links
Вопросы с собеседований по Python

@workakkk - админ

@machinelearning_interview - вопросы с собесдований по Ml

@pro_python_code - Python

@data_analysis_ml - анализ данных на Python

@itchannels_telegram - 🔥 главное в ит

РКН: clck.ru/3FmrFd
Download Telegram
🧠 Почему asyncio вызывает боль? Потому что даже простая ошибка может сломать всю цепочку задач.

🐍 tinyio — это минималистичный event loop для Python (всего ~200 строк), который работает через yield, а не await, и делает асинхронность прозрачной.

Что умеет:
yield вместо await: проще отлаживать и понимать
• Параллельный запуск: yield [task1(), task2()]
• Фоновые задачи: yield {task1(), task2()}
• Прерывание всех задач при одной ошибке
• Встроенные Lock, Semaphore, Event, timeout

Пример:

def slow_add(x):
yield tinyio.sleep(1)
return x + 1

def main():
a, b = yield [slow_add(1), slow_add(2)]
return a + b

Loop().run(main()) # → 5


Когда нужно просто и понятно — tinyio делает то, что должен. Никакой магии.

🔗 https://github.com/patrick-kidger/tinyio

@python_job_interview
👎93👍3🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
🖥 Нужно временно отключить все принты — например, в проде или при юнит-тестах?

Этот трюк нужен, чтобы временно отключить принты не удаляя и не комментируя строки вручную.

На экране простой способ сделать это через контекстный менеджер — без сторонних библиотек и без комментирования строк.


import sys, os
from contextlib import contextmanager

@contextmanager
def suppress_print():
saved = sys.stdout
sys.stdout = open(os.devnull, 'w')
yield
sys.stdout.close()
sys.stdout = saved

Пример:

print("Это видно")
with suppress_print():
print("А это — нет")
print("Снова видно")
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11🥰32
NVIDIA показала 7 простых «приемов» на Python, которые мгновенно ускоряют Data Science-пайплайны — без переписывания кода.

🔹 В чём идея?

Многие привычные библиотеки (pandas, NumPy, scikit-learn) можно заменить их GPU-версией, сохранив API.

Это даёт прирост скорости в десятки раз.

🟠 Drop-in замены в коде:
- pandas%load_ext cudf.pandas
- polars.collect(engine="gpu")
- scikit-learn%load_ext cuml.accel
- xgboostdevice="cuda"
- umap%load_ext cuml.accel
- hdbscan%load_ext cuml.accel
- networkx%env NX_CUGRAPH_AUTOCONFIG=True

🚀 Плюсы:
- Минимальные изменения кода (API почти идентичен).
- GPU-ускорение: от 10х до 100х быстрее на больших данных.
- Отлично подходит для ETL, ML и обработки сигналов.

Если ты работаешь с большими данными в Python, достаточно «заменить импорт» и получить колоссальный прирост скорости без боли и переписывания кода.

🚀 Подробнее: developer.nvidia.com/blog/7-drop-in-replacements-to-instantly-speed-up-your-python-data-science-workflows

@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍2🔥2
Как сделать помощника, который помнит контекст?

Голосовые ассистенты и LLM-сервисы — это круто, но... они часто не знают контекста. Или забывают, что вы им сказали полминуты назад.

Что, если помощник действительно помнил бы:

— кто вы
— что вы уже спрашивали
— и какие у вас были кейсы в прошлом?

На вебинаре Яндекса расскажут, как это реализовать через RAG + YDB:

🧠 память с помощью эмбеддингов
🔍 векторный поиск с фильтрацией
⚙️ масштабируемое и быстрое решение на SQL

Подходит как для внутренних ИИ-сервисов, так и для клиентских продуктов.
3
🔑 Сложная задача для собеседования по Python

Условие:
Рассмотрим следующий фрагмент кода с использованием asyncio и декораторов:

import asyncio

def cache(func):
cache = {}

async def wrapper(*args):
if args not in cache:
cache[args] = await func(*args)
return cache[args]

return wrapper

@cache
async def expensive_operation(x):
await asyncio.sleep(1)
return x * 2

async def main():
tasks = [expensive_operation(i) for i in range(3)]
results = await asyncio.gather(*tasks)
print(results)

asyncio.run(main())


Вопрос:
Что будет выведено в консоль и почему?

Варианты ответов:
1) [0, 2, 4] — вывод корректный, кеширование работает
2) RuntimeError — возникает из-за неправильного использования await в декораторе
3) [0, 0, 0] — возникает ошибка кеширования
4) [2, 2, 2] — декоратор мешает асинхронности

Правильный ответ: 3)

Пояснение:
1️⃣ Проблема в декораторе: обычный
def-декоратор не совместим с асинхронными функциями. При вызове await func(args) внутри wrapper, декоратор не дожидается выполнения корутины, возвращая None.
2️⃣ Почему
[0, 0, 0]:
cache[args] сохраняет не результат, а корутину (<coroutine object...>).
— При повторном обращении к кешу возвращается эта корутина, но
await вне декоратора не применяется.
— Фактически, все задачи получают первую сохраненную корутину (для x=0), которая всегда возвращает 0.
3️⃣ Чтобы исправить код нужно использовать
functools.wraps и сделать декоратор асинхронным.

Пишите свои варианты решения в комментариях 🔽

@python_job_interview
5👍3🔥1👌1
Forwarded from Machinelearning
Agent Lightning — ускоритель обучения для ИИ-агентов от Microsoft

Agent Lightning — это фреймворк для обучения и оптимизации LLM-агентов с помощью Reinforcement Learning без изменения их кода.

🧠 Поддерживает:
• LangChain
• AutoGen
• OpenAI Agents SDK
• и другие фреймворки на Python

🔧 Как он работает:
• Агент не нужно переписывать — он подключается как есть
• Вся его работа разбивается на отдельные шаги (эпизоды), которые можно анализировать
• Специальный алгоритм LightningRL оценивает, какие действия были полезны, а какие — нет
• Система может учитывать не только финальный результат, но и промежуточные сигналы (награды)
• Эти данные автоматически собираются и используются для дообучения агента

🔥 Преимущества:

• Не требует модификации логики агента
• Можно легко подключить к существующим пайплайнам
• Улучшает точность и устойчивость в сложных задачах: от генерации кода до Text-to-SQL

Отличный инструмент для всех, кто хочет сделать своих LLM-агентов.

🟠Проект: https://microsoft.com/en-us/research/project/agent-lightning/
🟠Статья: https://arxiv.org/abs/2508.03680
🟠Github: https://github.com/microsoft/agent-lightning

@ai_machinelearning_big_data


#agent #reinforcementlearning #mlops #llm #Microsoft
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍2🥰2
120 ключевых вопросов по SQL за 2025 год

Статья содержит 120 ключевых вопросов по SQL для собеседований, разделённых по темам и уровням сложности, с краткими пояснениями.

Основываясь на актуальных требованиях 2025 года, вопросы охватывают базу данных, оптимизацию, практические задачи и нюансы СУБД (MySQL, PostgreSQL, SQL Server).

🔜 Подробности
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍1🔥1🥰1