Pull to refresh
2
0
Денис @denilenko

Пользователь

Send message

Учим ламу говорить на руcском

Level of difficultyEasy
Reading time5 min
Views7.1K

Тут я рассказывал как можно использовать магию низкорангового разложения (Low Rank Adaption) матриц для того что бы легко дообучать большие текстовые модели. Сейчас же я напишу свою реализацию LoRA используя PyTorch, переведу весь датасет alpaca-cleaned (на котором училась альпака - языковая модель родом из стенфорда) на русский язык, используя взломаный яндекс переводчик, и наконец "скормлю" его языковой модели, что бы она наконец смогла понимать русский язык.

Советую ознакомится с кратким теоретическим описанием происходящего (хотя вроде как такие просьбы не работют()

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

Работа с большими файлами в Python

Level of difficultyMedium
Reading time13 min
Views4.7K

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

Читать далее
Total votes 8: ↑7 and ↓1+7
Comments3

Автоматический перезапуск службы 1С на Windows Server с очисткой кеша-сеансов

Level of difficultyMedium
Reading time6 min
Views3.1K

Доброго дня, коллеги. Рубрика — администрирование серверов 1С: Предприятие.

Свою статью я хотел бы начать с видов тестирования, применяемых в продукте «1С:Предприятие» для проверки информационной системы (ИС) на технологическое качество и масштабируемость.

Читать далее
Total votes 4: ↑3 and ↓1+4
Comments20

Функциональные опции в Go

Level of difficultyEasy
Reading time5 min
Views7K

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

Читать далее
Total votes 20: ↑19 and ↓1+19
Comments45

Разбираемся, что такое S3 и делаем простое объектное хранилище на Go

Reading time11 min
Views20K

Привет, Хабр! С вами снова Матвей Мочалов из cdnnow!, и в этом посте мы не будем разбираться с FFmpeg - в этот раз наша рубрика «Эээээксперименты!» будет затрагивать объектные хранилища. Разберёмся, чем S3 отличается от S3, а также почему не всё то S3, что называется S3. А заодно эксперимента ради сделаем своё собственное простенькое объектное хранилище на любимом языке всех DevOps и SRE-инженеров – Go.

Читать далее
Total votes 27: ↑24 and ↓3+24
Comments6

Погружение в параллелизм в Go

Reading time10 min
Views5.9K

Привет, Хабр!

Эта статья является неким сборником многих статей про все, что связано с параллелизмом в Go, например: горутины, каналы, select и многое другое.

Я хотел углубиться в тему горутин с параллелизмом и, слушая на фоне "The Doors", поглощал информацию и выделял интересные мысли из статей

Надеюсь, Вы найдете для себя то, что искали.

Погрузиться в параллелизм
Total votes 11: ↑10 and ↓1+13
Comments3

Новый терминал ВКС Yealink MeetingEye 500

Level of difficultyMedium
Reading time9 min
Views2.5K

Снятие с продаж флагманского терминала Yealink M800 компенсируется вендором за счет появления на рынке нового терминала Yealink M500. На первый взгляд, учитывая идентичный форм-фактор и схожий функционал, это выглядит как замена в модельном ряду. Но, при изучении характеристик и индекса модели становится очевидно, что M500 больше соответствует статусу младшей модели, и в течение года, вероятно, стоит ожидать реальную замену флагмана Yealink MeetingEye 800 — нового мультикамерного, универсального решения для конференц-залов. Есть шанс, что это будет M900, но в данной статье мы рассмотрим именно MeetingEye 500, который построен на новой аппаратной платформе.

Читать далее
Total votes 12: ↑10 and ↓2+10
Comments1

Справочник элементной базы в формате телеграм бота

Reading time6 min
Views2.3K

Формат интерфейса между справочными данными и пользователем в виде телеграм бота кажется очень привлекательным в современном мире. Допустим вы хотите обеспечить своих сотрудников справочными данными, которые будут всегда под рукой. При этом хорошо бы предусмотреть возможность добавления данных в зависимости от потребностей сотрудников. Как это сделать?

Именно такую задачу предлагаю сегодня рассмотреть.

Стандартно поставим Python и PyCharm. С использованием BotFather создадим бот и получим токен. Для обеспечения защиты токена я храню его в отдельной файле secrets.py и импортирую.

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

В закладки: 23+ полезные ссылки для 1С-разработчика

Level of difficultyEasy
Reading time3 min
Views18K

Хабр, привет! Меня зовут Андрей Толмачёв, я 1С-разработчик, консультант, архитектор и руководитель проектов 1С, а ещё автор курсов по разработке 1С в Яндекс Практикуме.

Без лишних слов — делюсь полезными ссылками на видео, чаты, каналы и форумы, которые помогут начинающим и опытным 1С-разработчикам найти ответы на вопросы и почувствовать себя частью комьюнити.

Читать далее
Total votes 9: ↑9 and ↓0+11
Comments25

Индексирование баз данных в PostgreSQL: погружение в тему

Level of difficultyEasy
Reading time9 min
Views9.1K

В продолжение серии статей об устройстве системы управления базами данных PostgreSQL (раз, два) смотрим, как ускорить выполнение запросов к базе данных с помощью индексов.

Привет, Хабр! Меня зовут Артур Титаев, я аналитик департамента проектирования и разработки IBS. Недавно наша команда занималась масштабным импортозамещением компонентов системы поддержки принятия решений для крупного российского заказчика. После переезда с Oracle и MySQL на PostgreSQL мы определили, что время выполнения SQL-запросов для показателей хозяйственно-экономической деятельности клиента в PostgreSQL заметно больше, чем время выполнения тех же запросов для тех же показателей в Oracle. Для «тяжелых» показателей разница во времени выполнения запроса могла достигать 20–30 минут. И это несмотря на то, что база данных Oracle не была проиндексированной!

Вопрос о применении индексов в PostgreSQL — особой структуры данных, которая ускоряет выборку из таблицы, — встал ребром, и я принялся за его изучение. Раньше мне доводилось сталкиваться только с простейшими индексами, так что на полноценное погружение в тему у меня ушло немало часов. Чтобы сэкономить вам время, я собрал ключевую теорию про индексирование в этой статье.

Читать далее
Total votes 9: ↑6 and ↓3+5
Comments13

Устраняем уязвимости в Active Directory Windows. Часть 1

Level of difficultyMedium
Reading time12 min
Views13K


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

В нашей статье основным инструментом позволяющим провести проверку безопасности AD будет PingCastle.
Читать дальше →
Total votes 27: ↑24 and ↓3+30
Comments20

Большое руководство по сетям и шифрованию трафика в Linux (часть 1)

Level of difficultyMedium
Reading time23 min
Views19K

Приветствую вас, читатели Хабра! В этой статье я бы хотел уделить внимание такой вещи как шифрование трафика на Linux системах. Наверно каждый из нас прекрасно понимает, насколько важна защита нашей приватности. Ведь в эпоху когда многие компании собирают данные, а иногда хакеры могут перехватить наш трафик, это становится особенно важно. Просто необходимо позаботиться о безопасности своих данных. Например, быть уверенным, что какая-либо корпоративная сеть не прослушивается злоумышленниками. Информационная безопасность сегодня — это не просто мода, а насущная необходимость. Постоянно растет киберпреступность, и защита трафика от перехвата — это основной аспект цифровой жизни человека или бизнеса.

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

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

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

Telegram Боты на Aiogram 3.x: Простой бот на вебхуках с локальным запуском и деплоем

Level of difficultyEasy
Reading time12 min
Views6.9K

Друзья, приветствую!

Если вы следите за моими статьями, то знаете, что на Хабре у меня опубликовано более 10 объемных публикаций на тему разработки телеграмм ботов через замечательный Python-фреймворк Aiogram 3.

Так получилось, что всю разработку я описывал в формате поллинга и, если для учебных и небольших проектов это подходит, то для крупных проектов нет, так как такой метод не оптимальный, медленный и требует больших ресурсов.

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

Из необычного, я продемонстрирую как без трудна запускать бота на вебхуках с локального компютера и как, в пару команд, развернуть такого бота на удаленном хостинге, не заморачиваясь с NGINX, протоколами, настройками серверов и прочее.

В общем, будет интересно и позновательно!

Читать далее
Total votes 16: ↑15 and ↓1+14
Comments7

Защита от брутфорса и эксплоитов OpenSSH

Reading time4 min
Views12K


В последних версиях OpenSSH появилась защита от брутфорса (перебора) паролей, а также от попыток эксплоита. Это очень ценные настройки, которыми разработчики рекомендуют воспользоваться всем.

Нужно отметить, что новая функция OpenSSH фундаментально отличается от fail2ban, sshguard и подобных инструментов, поскольку она не парсит логи и не изменяет правила файрвола, а применяет опции только внутри одной программы, не обращаясь никуда через ядро, что делает её гораздо безопаснее вышеупомянутых утилит.
Читать дальше →
Total votes 15: ↑15 and ↓0+22
Comments11

Как использовать defer в Go

Level of difficultyEasy
Reading time5 min
Views5K

Привет, Хабр!

Defer — это ключевое слово в Go, которое позволяет отложить выполнение функции до момента завершения выполнения текущей функции. Это относительно простой способ управлять ресурсами.

В этой статье мы и рассмотрим как использовать defer в Golang.

Читать далее
Total votes 11: ↑10 and ↓1+11
Comments0

Простая автоматизация с Bash для новичков

Level of difficultyEasy
Reading time8 min
Views26K

Приветствую, это Денис из команды BagrovChibirev, и в статье я на простом примере расскажу об автоматизации процессов в Linux с помощью bash скриптов (сценариев командной строки).

Этот материал для тех, кто только рассматривает для себя инструменты автоматизации рутинных процессов. Я не буду вдаваться в подробности работы оболочки или терминологию (на знания чего и не претендую), но я пошагово пройдусь по написанному скрипту и расскажу своё мнение почему вообще их стоит использовать. Приятного чтения :)

Рассматривать я буду свой минималистичный скрипт для разворачивания простого python Django проекта при помощи системных юнитов (демонов) на удалённом сервере. Для тех, кто не в курсе: демоны - это специальные системные сервисы, которые следят за состоянием сторонних процессов и поддерживают их работоспособность. В современном мире для таких целей на микросервисах применяется Docker, но когда проект небольшой и состоит из пары-тройки процессов, их намного легче, проще и дешевле для системы (в разы), развернуть при помощи встроенных в линукс демонов.

Читать далее
Total votes 12: ↑11 and ↓1+14
Comments10

RSS-агрегатор и RSS-мост на виртуальном сервере

Level of difficultyMedium
Reading time6 min
Views3.9K


Формат RSS (Really Simple Syndication) хотя и довольно старая технология, но до сих пор очень популярная. Можно сказать, что сейчас она словно переживает второе рождение, особенно в условиях затруднённого доступа ко многим сайтам.

Это действительно самый удобный способ читать весь контент в одном месте, без рекламы и лишних отвлечений. Конечно, есть внешние RSS-агрегаторы и ридеры, но можно выбрать и другой вариант: запустить агрегатор на своём сервере и не зависеть от внешних факторов. Это даёт бóльшую свободу, потому что его функциональность в некоторых случаях даже шире, чем у специализированных сервисов.
Читать дальше →
Total votes 33: ↑33 and ↓0+53
Comments5

Как протестировать и обезопасить почтовый сервер в Debian и Ubuntu с ispmanager

Level of difficultyMedium
Reading time11 min
Views2.7K

Это вторая часть статьи о настройке почтового сервера. Расскажу о тестировании настроек почтового сервера и настройке его безопасности с помощью AppArmor, iptables и Fail2ban. Инструкция применима для Debian Linux и дистрибутива Ubuntu.

В этой статье:

Тестирование настроек почтового сервера

Настройка Firewall iptables

Настройка Fail2ban

Безопасность RoundCube

Создание профилей AppArmor

Процесс установки и настройки почтового сервера описал в первой части статьи — «Как настроить почтовый сервер в Debian и Ubuntu с ispmanager, чтобы защититься от спама»

Читать
Total votes 6: ↑5 and ↓1+6
Comments0

От носителей до регламентов: как построить безопасную архитектуру бэкапов

Level of difficultyMedium
Reading time14 min
Views12K

Серьезные инциденты случаются со всеми, даже с глобальными игроками. Чего стоил один только прошлогодний сбой у Toyota! Тогда переполнение дискового пространства и сбой в СУБД стали причиной остановки всех заводов компании в Японии. А недавно произошла хакерская атака на СДЭК. В таких ситуациях остается надеяться только на бэкапы.

Не удивительно, что мы часто получаем запросы от клиентов о том, как организовать корпоративное резервное копирование. Их интересует, что именно бэкапить, как часто это делать, где хранить резервные копии, какие регламенты нужны и как лучше организовать резервное копирование на предприятии. Особенно много таких запросов стало поступать в последнее время. Поэтому я решил написать серию статей о том, как устроено резервное копирование, как его организовать и защитить. Моя цель — рассказать о best practice и структурировать эти знания. Бэкапы — обширная тема, которая включает множество нюансов, так что я начну с архитектуры и буду постепенно углубляться в детали. 

Читать далее
Total votes 31: ↑31 and ↓0+40
Comments7

Как работает Python Asyncio: воссоздаем с нуля

Level of difficultyMedium
Reading time10 min
Views9.4K

Автор оригинала: Jacob Padilla

Сейчас asyncio — одна из самых модных тем в Python, и это справедливо — это отличный способ обработки программ, связанных с вводом-выводом! Когда я изучал asyncio, мне потребовалось некоторое время, чтобы понять, как это на самом деле работает. Но позже я узнал, что это по сути просто очень хороший слой поверх генераторов Python. В этой статье я собираюсь создать упрощенную версию asyncio, используя только генераторы Python. Затем я собираюсь реорганизовать пример, чтобы использовать ключевые слова async и await с помощью dunder-метода __await__, прежде чем замкнуть круг и заменить свою версию на настоящий asyncio. Надеюсь, создав простую версию asyncio в конце этой статьи, вы сможете лучше понять, как он творит свою магию!

Читать далее
Total votes 11: ↑10 and ↓1+12
Comments1

Information

Rating
4,511-th
Location
Смоленск, Смоленская обл., Россия
Registered
Activity