yet another dev
381 subscribers
253 photos
2 videos
168 links
Пишу про работу в IT, жизнь в Сербии и всё, что кажется важным.

Telegram: @alexeyfv
Сайт: alexeyfv.xyz/ru
LinkedIn: linkedin.com/in/alexeyfv
GitHub: github.com/alexeyfv
Habr: habr.com/ru/users/alexeyfv
Download Telegram
Хотите короткую шутку? Microsoft Linux.
😁112🖕1🙈1
Пообщался на днях с журналистом канала Hi, AI по поводу ИИ-музыки.

Уже второе издание просит дать комментарии. Тема явно злободневная.

Также сегодня был принят в первом чтении законопроект о «регулировании ИИ».

Не будем заострять внимание на том, что по законопроекту ИИ должен соответствовать «традиционным духовно-нравственным ценностям».

Интересно в нём ещё вот это:

«Не будет считаться нарушением авторских прав обработка информации, содержащейся в объектах авторского права, для обучения суверенных и национальных моделей. При условии, что разработчик правомерно получил экземпляр произведения или оно находилось в открытом доступе.»

Помните, я писал про пользовательское соглашение Яндекс Музыки? Что-то мне подсказывает, что если законопроект примут, то это сильно развяжет руки бигтехам.

Получится классическая приватизация прибыли: трудились и создавали контент все, но прибыль от ИИ достанется 🤴

Про маркировку ИИ-контента, кстати, там тоже есть. Она будет добровольной и определяться «пользовательским соглашением». Что из этого получится – посмотрим. Мне почему-то кажется, что стримингов это не коснется.

В законе говорится о предоставлении пользователям возможности маркировать сгенерированный контент. А не о выявлении ИИ-контента в соцсетях и сервисах.

Иначе говоря, генерируешь картинку в Гигачате и по твоей просьбе на картинку добавится водяной знак. Тоже маркировка ведь?
Please open Telegram to view this post
VIEW IN TELEGRAM
👍52🤬1🖕1
Спасибо за поддержку 😸
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17
Увидел забавную штуку в репозитории Meta*

Для защиты от вайбкодеров, они прописали в AGENTS[.]md несколько инструкций.

Мейнтейнеры опен-сорс проектов, берите на заметку.

* Meta Platforms Inc., признана экстремистской организацией, деятельность которой запрещена на территории РФ.
👍4😁3👏1
yet another dev
Я в последнее время много рассказываю про ИИ в музыке. Думаю разбавлять контент чем-то другим пару раз в месяц. Вот вам на выбор.
Аудитория высказалась, что интересно читать про программирование и жизнь в Сербии. Поэтому я буду выделять посты на разную тематику тегами после заголовка. Пока будет 3 тега:

#программирование@yet_another_dev
#сербия@yet_another_dev
#нейромузыка@yet_another_dev

Буду стараться уделять время всему.
👍5🔥2
Закон о развитии ИИ и маркировке ИИ-контента

Музыкальное сообщество воодушевилось после принятия закона «О поддержке развития ИИ» и, в частности, о маркировке ИИ-контента (статья 9).

На мой взгляд, радоваться рано, потому что маркировка из законопроекта – это не то, что просили пользователи и музыканты.

TL;DR Маркировка ИИ-музыки – это не то же самое, что выявление ИИ-музыки. Никто не собирается выявлять ИИ-музыку. Авторам музыки дадут возможность указывать, использовался ли ИИ при создании трека. Но никто не обязывает это делать, как и не обязывают указывать достоверные данные.

Разберём статью 9 законопроекта по частям:

Часть 1. Провайдеры ИИ (такие как Сбер с Гигачатом) должны дать пользователям возможность промаркировать сгенерированный контент. Например, сгенерировали вы картинку и, если вы попросите, Гигачат может добавить вотермарку на неё.

В случае с музыкой это может быть, к примеру, трёхсекундное предупреждение в начале сгенерированного трека. Но, как вы понимаете, в России пока нет таких компаний, как Suno. А западным компаниям плевать на российские законы.

Часть 2. Закон не устанавливает технические требования к маркировке. Способ маркировки устанавливается пользовательским соглашением между провайдером и пользователем. Поэтому маркировка может быть какой угодно. Она не обязана быть криптографически проверяемой.

Часть 3. Социальные сети и UGC-платформы с количеством пользователей в сутки >500 тысяч человек обязаны дать возможность пометить контент как созданный с помощью ИИ. То есть, загружаете вы свой ИИ-трек в Яндекс Музыку, и Яндекс должен вам дать возможность поставить галочку «Создано с помощью ИИ». Но вы вправе не ставить – закон вас не обязывает. А Яндекс не обязан проверять достоверность указанных вами данных.

#нейромузыка@yet_another_dev
👍2🤣1🤨1
Представьте, сколько ресурсов было потрачено на этот слоп, который в итоге был удалён. Воистину, капитализм - самый эффективный общественно-экономический строй.

#нейромузыка@yet_another_dev
👏7💯5🌚21👍1😢1
Discriminated Unions в C#

#программирование@yet_another_dev

Сегодня про Discriminated Unions (DU) в C#, который вроде как должен появиться в .NET 11. Этот функционал уже доступен в Preview-версии SDK – можете установить и попробовать сами. Я попробовал и вот что я вам скажу.

1. Выглядит прикольно. Можно объединять типы.

var value = Random.Shared.Next() % 2 == 0 ?
new IsNumberOrString(int.MaxValue) :
new IsNumberOrString("Hello, World!");

var result = value switch
{
int x => $"Number: {x}",
string y => $"String: {y}",
};

Console.WriteLine(result);

public union IsNumberOrString(int, string);


2. Это синтаксический сахар. Под капотом у DU находятся структуры со всеми их типичными свойствами.

3. При компиляции структура реализует интерфейс IUnion.

public struct IsNumberOrString : IUnion
{
private readonly object <Value>k__BackingField;

public readonly object Value => this.<Value>k__BackingField;

public IsNumberOrString(int value)
{
this.<Value>k__BackingField = (object) value;
}

public IsNumberOrString(string value)
{
this.<Value>k__BackingField = (object) value;
}
}


4. Поскольку это обычная структура, то можно делать объединения объединений.

public union SmallNumbers(short, ushort);
public union BigNumbers(long, ulong);
public union Numbers(SmallNumbers, BigNumbers);


5. Я пока не знаю зачем этот функционал нужен и где бы лично я смог его применить. Возможно, он улучшит читаемость кода там, где разработчики применяют функциональный подход к написанию кода и Railway Oriented Programming. Плюс можно будет выкинуть на свалку все 3rd-party библиотеки, которые пытались реализовать тип Option/Maybe.

6. Ждите теперь больше дурацких вопросов на собеседованиях про типы и полиморфизм.

Пишите свои мысли в комментариях об этом синтаксисе.
👍21
Новая версия Slopless

#нейромузыка@yet_another_dev

Я закончил работу над новой версией расширения. Было проделано много работы:

1. Купил домен. Теперь у проекта есть свой сайт: slopless.art. Надеюсь, что он открывается в России. Документация для расширения тут: extension.slopless.art.

2. На этом сайте отображается свежая аналитика. База данных обновляется регулярно и автоматически. Зайдите на сайт, посмотрите, напишите что ещё было бы интересно там смотреть.

3. Расширение будет использовать свежие данные из БД. Для этого я сделал API. Авторизации для его использования не требуется, поэтому API может использовать кто угодно.

4. Базу данных и код API постарался максимально оптимизировать. Для 1.5К текущих пользователей должно хватить. Но дудосить всё равно не надо.

Обратную совместимость API не гарантирую. Всё будет меняться так, как нужно будет расширению.

---

Новое расширение в Firefox уже доступно. Google как всегда долго проверяет перед публикацией. Ждём.
🔥21👍2👏21🤮1
Скоро все будем слушать только Яндекс Музыку. По доходам они уже занимают 55% рынка. В прошлом году было 50%.

#нейромузыка@yet_another_dev
💔4💩2😢1
Как взламывают VPS

#программирование@yet_another_dev

Попался сегодня пост на Reddit про безопасное использование ssh при администрировании VPS. У меня тоже есть несколько серверов для разных целей и недавно я прикупил ещё один для проекта slopless. Я решил проверить лог ssh этого сервера и оказалось, что его пытались взломать.

У взломщиков конечно же ничего не получилось, т.к. я не использую пароли типа qwerty, но в логах было много интересной информации.

Хронология событий

- 18 июля, 19:07. Провайдер отправляет мне email о том, что мой сервер успешно создан и я могу им пользоваться.

- 18 июля, 21:36. Замечаю уведомление, захожу на VPS и начинаю его настраивать. Провайдер у меня относительно дешёвый. И видимо поэтому там серверы абсолютно "голые" – там не было даже ssh. У меня ушло какое-то время, чтобы донастроить всё через VNC.

- 18 июля, 21:55. Заканчиваю настройку, проверяю что ssh работает, меняю пароль от root и иду спать. Сразу отключать root и менять порт с 22 на другой не стал.

- 18 июля, 22:20. В логах появляются первые записи о сканировании портов.

- 19 июля, 00:18. Первая попытка залогиниться с юзером admin.

- 19 июля, 01:10. Три попытки залогиниться под admin с разными паролями.

- 19 июля, 02:41 - 12:27. Почти 10 часов непрерывного брутфорса отдельными волнами по 30 - 60 минут. Хакеры использовали несколько десятков разных IP-адресов. Пытались залогнититься через root, admin, user, ubuntu, debian и так далее - всего около 500 разных имён.

После этого атаки прекращаются, потому что примерно в это же время у меня появилось свободное время и я расчехлил Ansible для донастройки VPS. Я сменил порт, отключил вход по паролю, сменил пользователя, установил fail2ban и т.д. Если интересно как это делать, можете загуглить ssh hardening.

Понятно, что это всё автоматизированные атаки. И защититься от них очень просто. Тем не менее, для этого требуется сделать определенные действия. Не забывайте про это и берегите свои сервера :)
👍7💯2🖕1
Как взламывают VPS. Дополнение к предыдущему посту.

#программирование@yet_another_dev

Я решил проверить, а что происходит на других VPS. Взял один из самых старых моих серверов на Hetzner. Он настроен «по всем правилам» с самого начала: нестандартный порт, root отключён, вход только по ключам и только под отдельным пользователем, установлен fail2ban.

Хронология событий

- 9 января. Купил сервер.

- 10 января. Первые попытки скнировать открытые порты. Нестандартный порт был обнаружен практически сразу.

Около месяца боты в основном сканировали порты. Были единичные попытки входа в феврале.

- Март и апрель. Начались брутфорс атаки. Всего ~15К и ~29К попыток соответственно. Естественно, все неуспешные.

- Май. Было полное затишье (майские праздники?)

- Июнь. Новая волна. Было совершено ~4К попыток.

- В середине июля была последняя попытка. С тех пор наступила тишина.

Какие можно сделать выводы

- Нестандартный порт использовать можно, но сканеры обнаружат его очень быстро. Но всё же думаю, что количества "шума" это уменьшает.
- Самое основное - это отключить root и вход по паролю.
- fail2ban помогает банить. На сервере было забанено 56 IP-адресов (сейчас баны истекли).
👍2👏1
Мой опыт использования reg[.]ru

#программирование@yet_another_dev

На прошлой неделе перевёз свой домен alexeyfv.xyz из рег ру в porkbun. Жалею, что не сделал это раньше — сэкономил бы деньги.

Почему я бы никому не советовал пользоваться рег ру:

1. Цены. В рег-ру я продлевал домен в январе 25 года. Тогда стоимость была ~5000 рублей за 2 года. В porkbun сейчас продление моего домена на 2 года стоит ~2000 рублей ($25.96). Разница примерно в 2 раза.

2. Скрытие информации из WHOIS — это платная услуга в рег ру. И меня всегда это бесило. Эта контора прекрасных людей и так собирает все возможные данные о вас. А потом ещё попросит заплатить денег, чтобы не публиковать их в открытый досутп. В porkbun достаточно просто оплатить домен. Скрытие данных автоматическое.
👍81
Тут в стриминге «КИОН Музыка» aka «МТС Музыка» заявили, что сделали чарт без ИИ-музыки на основе моего проекта Slopless.

Как пишут CNews:

Техническая проверка каталога реализована с помощью детектора Slopless – расширения для браузера, анализирующего треки на предмет ИИ-генераций. Распознавание проводится с точностью в 83%.


Мне, правда, не понятно, как у них точность получилась 83%. Но не просмотрев их датасет, код, пайплайн обучения, сказать трудно. На тестовых датасетах, напомню, точность достигает 98.5%.

Вообще, это не первая компания, которая связывалась со мной по поводу использования Slopless.

Причин этого я вижу несколько:

1. Принятый закон о развитии ИИ. Согласно этому закону, маркировка - это дело конечно добровольное. Но, видимо, лейблам и стримингам хочется знать точно кто и как делал музыку. Тем более, я замечал, что среди некоторых создателей нейромузыки возникает желание «замести следы» использования ИИ.

2. Наличие спроса у слушателей, которые устали от ИИ. Отдельный чарт, конечно, эту проблему не решит. Детекторы ИИ нужно теснее интегрировать в стриминги, чтобы такая музыка исключалась из алгоритмов пользователя, если он этого хочет.

#нейромузыка@yet_another_dev
10🔥5🎉5👍1🖕1
Практика мёртвого интернета

Боты теперь пул реквесты делают. Изменения, кстати, вообще не в тему.

#программирование@yet_another_dev
🤮5😱1
OpenAPI спецификация для Slopless

Вчера задеплоил Scalar:

https://slopless.art/api/

Пользуйтесь.

#нейромузыка@yet_another_dev
#программирование@yet_another_dev
👍4🔥1
Какие-то люди от «агенства Holi Agency» бегают по небольшим каналам и предлагают разместить рекламу. Мне тоже сегодня утром писали.

Судя по всему мошенники. Домен зарегистрирован неделю назад. Cloudflare показывает предупреждение о фишинга при попытке зайти на их сайт.

Будьте бдительны.
8