Pull to refresh
0
0

User

Send message

Надежный обход блокировок в 2024: протоколы, клиенты и настройка сервера от простого к сложному

Level of difficultyMedium
Reading time46 min
Views214K

Поскольку блокировки интернета в РФ в последние недели и месяцы многократно активизировались, а маразм все крепчает и крепчает, стоит еще раз поднять тему обхода этих самых блокировок (и делаем ставки, через сколько дней на эту статью доброжелатели напишут донос в РКН чтобы ограничить к ней доступ на территории страны).

Вы, наверняка, помните отличный цикл статей на Хабре в прошлом году от пользователя MiraclePtr, который рассказывал о разных методах блокировок, о разных методах обхода блокировок, о разных клиентах и серверах для обходов блокировок, и о разных способах их настройки (раз, два, три, четыре, пять, шесть, семь, восемь, десять, десять, и вроде были еще другие), и можете спросить, а зачем еще одна? Есть две основные причины для этого.

Читать далее
Total votes 445: ↑437 and ↓8+489
Comments364

Самое понятное объяснение Специальной теории относительности

Level of difficultyMedium
Reading time13 min
Views117K

Специальная теория относительности - удивительная теория, которая опровергла многие представления о мире, в которых человечество не сомневалось всю историю своего существования.

Многие слышали про волшебства вроде замедления времени, сокращения длины, относительности одновременности, парадокса близнецов и т.д., но мало кто понимает почему так происходит. 

В этой статье я хочу наглядно показать, что все это проще, чем кажется на первый взгляд.

Для иллюстраций я написал интерактивный визуализатор СТО, работающий в браузере. Ссылка на него и исходники проекта в конце статьи.

Читать далее
Total votes 385: ↑385 and ↓0+383
Comments391

Брифинг по дженерикам Go 1.18

Reading time9 min
Views4.5K

Добавление дженериков (generics) в Go (ранее Golang) — самое значительное изменение, которое он претерпел, с момента его релиза. Сообщество Go просило добавить дженерики с самых первых дней языка, и мы, наконец, дождались.

Реализация дженериков в Go сильно отличается от традиционных реализаций, которые можно найти в C++, но все-таки имеет некоторое сходство с реализацией дженериков в Rust. В этой статье вашему вниманию представлен обзор, нацеленный помочь вам сформировать понимание дженериков Go и продемонстрировать, как с ними работать.

Читать далее
Total votes 13: ↑8 and ↓5+4
Comments7

Путеводитель по гравитационным волнам

Level of difficultyMedium
Reading time18 min
Views16K

Согласно Эйнштейну, гравитация не является силой в пространстве, а проявлением кривизны пространства-времени. Массивные тела, такие как звезды, планеты и черные дыры, изгибают пространство-время по-разному, притягивая друг друга – и это взаимодействие мы называем гравитацией. Известная цитата Джона Уилера кратко это подводит: “Пространство-время говорит материи, как двигаться, материя говорит пространству-времени, как изгибаться.”

Пространству-времени разрешается растягиваться, сжиматься и крутиться. Гравитационные волны – это волны в пространстве-времени, которые, как предсказывает общая теория относительности, излучаются, когда массивные тела двигаются ассиметричным образом.

В этом путеводители мы разберемся, что такое гравитационные волны, откуда они берутся и как их регистрировать.

Прим. пер. Обложка из видео https://www.youtube.com/watch?v=4GbWfNHtHRg, тоже советую!

Читать далее
Total votes 44: ↑43 and ↓1+56
Comments84

Эрозия принципа фальсифицируемости, или невидимые единороги атакуют

Level of difficultyMedium
Reading time7 min
Views8.6K

Критерий фальсифицируемости Поппера долго верой и правдой служил физикам (он служил физике задолго до того, как был явно сформулирован в 1934 году). Этот принцип избавлял физику от невидимых розовых единорогов, которые летают повсюду, но никак не наблюдаемы. Однако по мере развития науки и движения в сторону общей теории всего приходится поступаться принципами. Или нет? Давайте рассмотрим случаи, когда этот принцип ставится под вопрос.

Читать далее
Total votes 28: ↑26 and ↓2+32
Comments108

Вкатываемся в Machine Learning с нуля за ноль рублей: что, где, в какой последовательности изучить

Level of difficultyEasy
Reading time26 min
Views210K

Всем доброго времени суток. Я давно обещала выложить сюда подробный гайд на тему того, как можно изучать Machine Learning самостоятельно, не тратя деньги на платные курсы, и, наконец, выполняю свое обещание. Надеюсь, этот гайд станет подсказкой, которая поможет найти правильное направление новичкам, которые хотят погрузиться в нашу область.

Читать далее
Total votes 129: ↑127 and ↓2+155
Comments49

Самый быстрый поиск пути на Go без аллокаций и СМС

Reading time10 min
Views9.8K

Алгоритмы важны. Но реализовать их можно очень по-разному.


При одном и том же алгоритме, оптимизированная библиотека будет в тысячу раз быстрее наивной.


Любите оптимизации, специализированные структуры данных и трюки с битами? Тогда скорее под кат!


Читать дальше →
Total votes 31: ↑30 and ↓1+37
Comments41

Дообучение ruGPT-3.5 13B с LoRA

Level of difficultyMedium
Reading time10 min
Views19K

Добрый день, уважаемые читатели и авторы Хабра!

Сегодня я рад представить вам подробное руководство по обучению модели ruGPT-3.5 13B с использованием датасетов модели Saiga-2/GigaSaiga, технологии Peft/LoRA и технологии GGML. Эта статья призвана стать полезным и практичным ресурсом для всех, кто интересуется машинным обучением, искусственным интеллектом и глубоким обучением, а также для тех, кто стремится глубже понять и освоить процесс обучения одной из самых мощных и перспективных русскоязычных моделей.

В данной публикации мы разберем каждый этап обучения модели, начиная от подготовки данных и заканчивая конвертацией в формат GGML. Буду рад, если мой опыт и знания помогут вам в вашем исследовании и экспериментах в этой захватывающей области!

Читать далее
Total votes 30: ↑30 and ↓0+30
Comments27

Битва за производительность: SparseMap vs GenerationsMap

Level of difficultyMedium
Reading time7 min
Views5.3K

Есть такая занимательная структура данных, описанная в статье Russ Cox — sparse map.


Она используется, например, в недрах компилятора Go. А ещё в некоторых пакетах его стандартной библиотеки.


У неё есть много интересных свойств и, чем больше я о ней думаю, тем больше применений нахожу в своих задачах. Казалось бы, всё так хорошо, что лучше быть просто не может. Однако сегодня я расскажу вам о секретной штуке, которая будет экономить ещё больше бесценных наносекунд!


Читать дальше →
Total votes 26: ↑25 and ↓1+31
Comments8

Как мы оптимизировали наш DNS-сервер с помощью инструментов GO

Reading time19 min
Views8.8K
В преддверии старта нового потока по курсу «Разработчик Golang» подготовили перевод интересного материала.




Наш авторитативный DNS-сервер используют десятки тысяч веб-сайтов. Мы ежедневно отвечаем на миллионы запросов. В наши дни DNS-атаки становятся все более и более распространенными, DNS является важной частью нашей системы, и мы должны убедиться, что мы можем хорошо работать под высокой нагрузкой.

dnsflood — это небольшой инструмент, способный генерировать огромное количество udp запросов.

# timeout 20s ./dnsflood example.com 127.0.0.1 -p 2053

Мониторинг систем показал, что использование памяти нашим сервисом росло так быстро, что нам пришлось остановить его, иначе мы столкнулись бы с OOM ошибками. Это было похоже на проблему утечки памяти; существуют различные причины «похожих на» и «реальных» утечек памяти в go:
Читать дальше →
Total votes 26: ↑25 and ↓1+29
Comments10

Go To Memory

Reading time9 min
Views39K

Как и многие языки, Go часто использует магию под названием хип (heap). Обычно, когда мы пишем наши джейсоно-гонятели, мы просто не задумываемся об этом, хоть и знаем, что это «где-то есть». Давайте попробуем заглянуть в кроличью нору поглубже и увидеть не только то, какими методами аллокатор Go старается облегчить программисту жизнь, но и то, из чего он состоит в целом.

Меня зовут Антон Киреев, я бэкенд-разработчик с опытом работы больше 11 лет. В настоящее время работаю техлидом в Авито. В жизни мне нравятся две вещи: приносить пользу своей работой и проводить свободное время с семьёй. Именно поэтому я люблю делать что-то быстро, но качественно, а потом отдыхать. Для этого я постоянно учусь и пытаюсь докапываться до сути вещей. Сегодня поговорим, как наша любимая Гошечка работает с памятью.

Читать далее
Total votes 44: ↑31 and ↓13+25
Comments13

Made at Intel. Architecture and religion

Reading time6 min
Views46K

Я подустал от мрачных текстов и вспомнил о своей давней мечте. За 20 с хвостиком лет работы в Интел у меня развеселых историй накопилось на целую книгу. Хотелось в ретроспективе посмотреть на некоторые события, участником которых мне довелось быть. И еще хотелось отдать дань уважения компании и людям, с которыми мне посчастливилось работать. Я уже даже название придумал – Made at Intel. Понятно, что пока я был внутри конторы, речь о публикации этих баек идти не могла. Я сам подшучивал, что для публикации нужно правильно выбрать время. В смысле сначала уволиться, а потом публиковать, а не быть уволенным вследствие публикации. :) Однако примерно 2 года назад я Интел покинул, и казалось бы меня уже ничего не сдерживало. Но тут, как всегда – то перо поломается, то струна порвется, то еще какая бяда приключится. К тому же на то чтобы писать книжку – это же рeшимости набраться надо... И вот – вчера я решил, что большое надо начинать с малого. Буду писать по главке и выкладывать сюда - собирать фидбек. Так мало –помалу и наберется.

Итак, сегодня вашему вниманию представляется первая глава, в которой эволюция архитектур Intel рассматривается с точки зрения ... истории религиозных течений. Да –да, не удивляйтесь, архитектура вычислительных устройств –это одна из самых религиозных вещей. Не думайте, что все решения по Instruction Set Architecture принимаются исключительно на основе анализа данных – это совсем не так. Скорее похоже на средневековое государство – тут есть немного бизнеса, побольше политики и очень много религии. Все просто – почти любой эксперимент в этой области растягивается на годы и обходится в миллиарды долларов. Хуже всего, что в процессе дизайна можно давать лишь приблизительные оценки ключевых характеристик – частоты, производительности, энергопотребления, температурной карты. То, как все оно будет на самом деле становится понятным уже только тогда, когда чип выходит из печки. Да сейчас в этой области уже накоплен определенный опыт и наши оценки становятся несколько точнее, но и только. А 20 лет назад этих знаний было куда меньше. И пионеры, подобные Интел двигались в темноте на собственный страх и риск. Разумеется, в таких условиях на первый план выходит кто во что ВЕРИТ. Ну да – еще кто лучше говорить умеет. Поэтому лучшие архитекторы приходят из школ с углубленным изучением богословия. :)

Читать далее
Total votes 118: ↑117 and ↓1+154
Comments49

На наших глазах ИИ убивает старый интернет. Но новый обещает быть хуже

Reading time12 min
Views69K

Если вы сидели в Интернете в последний год, то могли заметить, что он быстро меняется. И этот снежный ком летит с горы с возрастающей скоростью.

Google хочет убить свои стандартные 10 синих ссылок (заменив их выдачей данных из чатбота Bard). Твиттер умирает под давлением ботов и синих галочек. Amazon захламляется ИИ-книгами, которые сейчас доминируют в списке бестселлеров, а также фальшивыми отзывами и прочим мусором. Большие проблемы с контентом и рекламодателями испытывает TikTok.

Массовые увольнения захватывают интернет-СМИ. В вакансии от «ИИ-редактора» ожидается «выпуск от 200 до 250 статей в неделю». ChatGPT используется для создания целых сотен спам-сайтов, на которых, ничего не подозревая, через Google Ads рекламируются бренды. Etsy наводнен «мусором, созданным искусственным интеллектом».

Чатботы цитируют друг друга в каком-то дезинформационном уроборосе. LinkedIn использует искусственный интеллект для симуляции сообщений рекрутеров (чтобы создать персонализированное сообщение теперь не нужно тратить ни секунды времени — привет, официально одобренный спам!). Но и это ещё не предел. Snapchat и Instagram рассчитывают, что боты скоро будут разговаривать с вами, когда этого не делают ваши друзья. Реддиторы устраивают забастовки. Бастуют моды Stack Overflow. Интернет-архив борется со считывателями данных, выдающих десятки тысяч запросов в секунду. А еще «ИИ разрывает Википедию на части».

В общем, старая сеть умирает, а новая сеть изо всех сил пытается родиться. И мы уже видим её общие очертания.

Читать далее
Total votes 122: ↑116 and ↓6+145
Comments717

Приборы и материалы для чистки зубов (какая щётка лучше, например)

Level of difficultyEasy
Reading time14 min
Views35K
Вот это южнокорейская зубная щётка. Она в два раза длиннее обычной, потому что корейцы привыкли получать максимум эффекта на каждую потраченную вону. Теперь простой вопрос: может, стоит тоже купить такую, раз она больше? Можно будет чистить зубы быстрее или эффективнее?

image

Нет, не стоит. Лучше купить щётку с большим количеством щетинок, хотя бы 5 тысячами штук.

Такие щётки стоят в Москве 500–900 рублей в аптеках. Вот с ними реально одно движение может быть эквивалентно по эффекту 4–5 движениям обычной щёткой.

Следующий вопрос: а, может, купить электрическую или ультразвуковую? Возможно, но вместе с налётом вы будете счищать часть эмали или греть зубы.

А, может, взять ионную, которая имеет заряд и лучше притягивает всякий мусор? Тоже есть пара исследований.

Давайте разбираться, как лучше чистить зубы с позиции девайсов и здравого смысла.
Читать дальше →
Total votes 70: ↑65 and ↓5+71
Comments65

StackLLaMA: практическое руководство по обучению LLaMA с помощью RLHF

Level of difficultyHard
Reading time15 min
Views13K

ChatGPTGPT-4 и Claude — это мощные языковые модели, которые дообучают, используя метод, который называется «обучение с подкреплением на основе отзывов людей» (Reinforcement Learning from Human Feedback, RLHF). Благодаря этому такие модели лучше отражают наши ожидания в плане их поведения, они лучше соответствуют тому, как мы собираемся их использовать.

В этом материале мы рассмотрим процесс обучения модели LLaMa c использованием RLHF. Модель будет учиться отвечать на вопросы с сайта Stack Exchange.

Читать далее
Total votes 24: ↑24 and ↓0+24
Comments0

Лю Цысинь и малая форма

Reading time4 min
Views7.6K

Почти всем поклонникам современной фантастики так или иначе известно имя Лю Цысиня, китайского писателя, автора трилогии «Воспоминания о прошлом Земли» (которую еще иногда по названию первой книги именуют «Задача трех тел»). Но сегодня речь пойдет не о том, чем примечательна та самая трилогия и какую популярность она принесла автору. Вместо хотелось бы поговорить о двух сборниках малой формы Лю Цысиня, вышедших на русском языке: «Блуждающая Земля» и «Удержать небо». Есть впечатление, что в свои рассказы и повести Лю Цысинь закладывает идеи, которых другим авторам хватило бы на целый роман (как минимум). При этом в них есть все необходимые элементы структуры, взлеты и падения, тот самый поворот, после которого ничего не будет прежним. И, разумеется, большой интерес к точным наукам, философии и поиску с помощью этих инструментов места человека во Вселенной.

Читать далее
Total votes 9: ↑7 and ↓2+8
Comments27

Библиотека конца света

Level of difficultyEasy
Reading time12 min
Views11K

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

Читать далее
Total votes 30: ↑20 and ↓10+17
Comments72

Пишем на Go как в Google. Лучшие практики — часть первая

Level of difficultyEasy
Reading time12 min
Views23K

Рекомендации по стилю для проектов Google с открытым исходным кодом


Лучшие практики Go


Этот документ — часть документации по стилю Go в Google. Он не является ни нормативным, ни каноничным, это дополнение к «Руководству по стилю». Подробности смотрите в Обзоре.


О документе


Здесь приведены рекомендации по лучшим практикам применения требований «Руководства по стилю» для Go. Это руководство охватывает общие и распространенные случаи, но не может применяться к каждому частному случаю. Обсуждение альтернатив, по возможности, включено в текст руководства вместе с указаниями о том, когда они применимы, а когда — нет.


Полная документация руководства по стилю описывается в обзоре.

Читать дальше →
Total votes 8: ↑4 and ↓4+3
Comments8

Что такое трейдинг, и как начать торговать в плюс в 2023? Да, опять про трейдинг. Но…

Reading time20 min
Views102K

Очередная статья про трейдинг. Все по-честному. И максимально простым языком. С мемами. С объяснением почему твой брокер «кухня». С домашним заданием и описанием всего, что нужно на старт.

А ещё здесь ссылки… Много ссылок. На книги. На те, книги, которые в отличие от твоего знакомого «Гуру-трейдинга на крипте в позиционке» реально раскидывают по полочкам. Как торговать. Где торговать. Чем торговать. И почему тебе вообще лучше не торговать.

Много терминов. Много мемов. Немного сумбурная структура. Но, а как вы хотели? Если в одной статье есть и волновой анализ Элиота, и пару слов о превышении ликвидности криптовалют, да все это ещё и приправлено помесью Мартингейла, теории игр, мат-ожидания, Фиксированных фракций, и куче других непонятных слов. 

В общем, если ты всегда хотел, чтобы кто-то без рекламы «трейдер х, иди к нам и получи приветственный бездепозитный» рассказал тебе, как оно работает на самом деле, да ещё и комплексно (а не отрывочно по секретным методикам, которые сегодня работают, завтра нет). Тебе сюда!

Читать далее 📖
Total votes 34: ↑25 and ↓9+24
Comments36

Начинаем работу с PyTorch 2.0 и Hugging Face Transformers

Reading time6 min
Views13K

В этом посте разберем работу с PyTorch 2.0 и Hugging Face Transformers на примере fine‑tune модели BERT для классификации текста.

PyTorch 2.0 лучше по производительности, скорости работы, более удобный для Python, но при этом остается таким же динамическим, как и ранее.

1. Настройка окружения и установка PyTorch 2.0.

2. Загрузка и подготовка датасета.

3. Fine‑tune и оценка модели BERT с помощью Hugging Face Trainer.

4. Запуск инференса и тестирование модели.

Читать далее
Total votes 13: ↑13 and ↓0+13
Comments4
1

Information

Rating
Does not participate
Registered
Activity