Три способа выполнить множество задач с asyncio
Функция для примера:
async def do_it(n):
await asyncio.sleep(random.uniform(0.5, 1))
return n
1. Последовательный вызов
async def main():
for i in range(100):
result = await do_it(i)
Такой вызов имеет смысл только тогда, когда результат одной задачи требуется для вызова следующей.
Если они независимы, то это антипаттерн, так как аналогичен простому синхронному вызову по очереди.
2. Упорядоченный результат
async def main():
tasks = [do_it(i) for i in range(100)]
results = await asyncio.gather(*tasks)
Выполняет корутины конкурентно и возвращает результат в виде списка.
Полезен когда требуется получить результаты в том же порядке в котором задачи отправлены.
3. Результат по мере готовности
tasks = [asyncio.create_task(do_it(i)) for i in range(100)]
for cor in asyncio.as_completed(tasks):
result = await cor
Так же выполняет корутины конкурентно, но не гарантирует порядок. Результат возвращается по мере готовности, каждый отдельно.
Полезен когда нужно обработать любой ответ как можно скорее.
#async
🎉 Нашу статью приняли на EMNLP 2025 в Main Track.
💪 Выводим распознавание жестовых языков на новый качественный уровень. В статье достигаем state-of-the-art🌿 на жестовых языках разных стран, включая в первую очередь русский жестовый язык (РЖЯ). Показываем, что качественный претрейн и предобработка — залог успеха.
Спасибо авторам: @your_petros@ilyaovodov@nagadit@hukenovs@karinakvanchiani
📝Жестовый язык: похожее в непохожем и наоборот
📖Logos as a Well-Tempered Pre-train for Sign Language Recognition
До встречи на конференции!
#research#rsl#emnlp
BORSch покорил наши сердца
Сегодня русскоязычное сообщество на EMNLP обсуждает работу BORSch, в которой авторы исследуют особенности знания мультимодальных моделей кухни постсоветского пространства. С этой целью они собрали мультимодальный датасет BORSch, включающий 1147 русскоязычных и 823 украиноязычных блюда, относящихся к странам постсоветского региона.
Например:
Откуда блюдо кывырма? + фото кывырмы
Gold answer: Gagauzia (🇲🇩 Moldova)
На примере BORSch авторы показывают, что даже передовые модели испытывают трудности при определении происхождения блюд из постсоветских стран — как в текстовой, так и в мультимодальной задаче Question Answering (QA): вместо правильного ответа они чаще отдают предпочтение стране, на языке которой был написан промпт.
Вывод (ИМХО): когда используете LLM для личных целей, не забывайте включать функцию Search (искать в сети). Не мучайте моделей кывырмой и эчпочмаками, Гугл — наше всё. Хотя, подозреваю, что с происхождением блюд на разных языках тоже может возникать диссонанс.
А работа и правда стоящая, особенно здорово, что с акцентом на постсовесткие языки.
@mashkka_ds
#llm#emnlp#новостисполей#трудовыебудни