Сопоставление с образцом (pattern matching) — сильный механизм языков программирования, который, к сожалению, встречается не так часто. Причём, как в коде разработчиков, так и в поддержке со стороны самого языка.
Разработчики на функциональных языках используют этот механизм довольно часто, потому что у них вообще многое определяется статически через правильный подход к системе типов. Разработчики же на императивных языках очень любят огромные многоуровневые ветвления. Есть даже такое понятие «Спагетти-код» — раньше его применяли к коду, перегруженному операторами перехода, но в современном виде это скорее об избытке операторов условия.
Pattern matching позволяет накладывать на объекты некоторый трафарет и смотреть, попадают ли они под него. Это не только выглядит лаконичнее и короче, чем дерево условий, но ещё и понятнее с точки зрения восприятия человеком: вот у нас заказ содержит более 10 элементов и при этом стоит более 1000 долларов, значит делаем на него скидку 10 центов. При этом трафарет работает как сортировщик монеток: самая маленькая проваливается в первый паз, следующая по размеру в следующий итд, применение условий идёт сверху вниз. Есть и неявный плюс: такой подход автоматически провоцирует разработчиков проводить проверку на null. Ведь null не может подходить под трафарет «содержит более 10 товаров».
К счастью, в C# этот механизм в последних версиях активно развивают и совершенствуют. И это одно из многочисленных преимуществ C# над Java.
#dev
Rerender a video теперь можно запустить в колабе. Работает пока не очень, можно ожидать что в официальном релизе будет лучше.
Много красивых примеров на официальной страничке
colab
@тоже_моушн
#text2video#video2video
Wan стал условно бесплатным
Китайская модель для генерации картинок и видео Wan.Video стала условно бесплатной.
Теперь сама генерация бесплатна, а кредиты (которые, как и раньше, дают немного бесплатно) тратятся на приоритезацию в очереди. Т.е. плата только за время выдачи результата.
Соответственно, если можете подождать, то бесплатно).
Качество генерации вполне на высоте, как картинки, так и видео.
Можно подкладывать свой аватар (лицо), на примере:
Educational Content with a Cozy Cafe Ambiance: A young man, dressed in a stylish dark polo shirt, stands against a warm, wooden cafe backdrop. His short, neatly-groomed hair frames his face as he passionately discusses recent advancements in neural networks. Holding a smoking ceramic cup of cappuccino, his eyes meet the camera with engaging confidence. The ambient lighting from table lamps softly illuminates his features, enhancing the intimate educational atmosphere. In the background, cozy cafe tables and a hint of bustling activity create a lively yet focused setting. The camera smoothly moves in for a mid-shot, capturing the essence of trustworthy knowledge-sharing.
А главное, доступен в России без VPN, общаться можно на русском.
Из минусов:
1. Время ожидания в очереди не указывает, невозможно понять, секунды остались до выдачи или часы. Это прям огромный минус, надеюсь скоро исправят.
2. Текст на картинке пытается выдать на китайском. Тут просто это надо знать, тем более не многие модели вообще могут нормально текст на картинке сделать, и особенно на русском.
https://t.me/semasci
#wan#text2image#text2video#image2video
#python#deep_learning#diffusion#flax#flux#hacktoberfest#image_generation#image2image#image2video#jax#latent_diffusion_models#pytorch#score_based_generative_modeling#stable_diffusion#stable_diffusion_diffusers#text2image#text2video#video2video
The Hugging Face Diffusers library is a powerful and easy-to-use tool for generating images, audio, and 3D molecular structures using advanced diffusion models. It offers ready-to-use pretrained models and flexible components like pipelines, schedulers, and model building blocks, allowing you to quickly create or customize your own diffusion-based projects. Installation is simple via pip or conda, and you can generate high-quality outputs with just a few lines of code. This library benefits you by making cutting-edge AI generation accessible, customizable, and efficient, whether you want to run models or train your own[1][2][5].
https://github.com/huggingface/diffusers