Search
Write a publication
Pull to refresh
4
0
Send message

Пишем персонального AI-ассистента на Python

Level of difficultyMedium
Reading time7 min
Views18K

Современные голосовые помощники это мощные приложения, сочетающие обработку речи, машинное обучение и интеграцию с внешними API. В этой статье мы разберём, как создать базовый проект персонального ассистента на Python, используя библиотеки whisper, webrtcvad, gTTS и другие. Наш ассистент будет: слушать микрофон; определять начало и конец речи с помощью VAD (Voice Activity Detection); преобразовывать речь в текст через модель Whisper; отправлять запросы на локальный LLM для генерации ответа; читать ответ вслух с помощью gTTS; начинать/останавливать запись по нажатию клавиши.
Проект может служить как началом для экспериментов, так и для прототипирования реальных решений.

Читать далее

Даже не влезайте в Kubernetes без этого

Reading time20 min
Views49K
image

Главный прикол с k8s: поднять базовый кластер займёт всего 15 минут. А вот чтобы он реально заработал, ответить на все вопросы перед установкой, всё спланировать — на это нужны дни, реально дни мозгового штурма и планирования. Ну или потом придётся разбирать и делать ещё раз. Несколько раз.

Кубер унижает человеческое достоинство разными способами и на разных этапах. Это часть опыта от пользования продуктом. Так задумано.

И вот про эти самые вопросы мы сейчас и поговорим, потому что там целое волшебное поле грабель.

Начнём с простых вещей, например, выбора дистрибутива, выбора способа хранения данных (и динамического выделения места), а также того, куда складывать пароли к критичным ресурсам. На этих трёх выборах ломается примерно 50 % админов.

Поехали в ад!
Читать дальше →

Prometheus Alert Hints

Level of difficultyHard
Reading time17 min
Views25K

Привет! Меня зовут Александр Голиков, я работаю в компании Bercut. Наша компания разрабатывает и развивает IT-решения для операторов цифровых услуг и мобильных сервисов. Коротко говоря, мы помогаем цифровизации бизнеса. В компании я занимаюсь виртуализацией, СХД, мониторингом, разработкой и интеграцией продуктов Bercut c операционными системами. Для агрегации данных и анализа мы используем Prometheus.

В этой статье рассмотрю одну из конфигураций Prometheus в отказоустойчивом режиме, познакомлю вас с Karma alert dashboard и продемонстрирую написание алертов. Напишу несколько простых включений Go Template и рассмотрю ситуацию, где такие включения противопоказаны. Продемонстрирую, как на основе меток можно сделать исключения из общих правил и обучу Prometheus самостоятельно чинить поломки.

Погнали!

Полное руководство по модулю asyncio в Python. Часть 5

Reading time19 min
Views39K

Привет, Хабр! Публикуем пятую часть (перваявтораятретьячетвёртая) перевода руководства по модулю asyncio в Python. Здесь представлены разделы оригинала с №10 по №13.

Читать далее

Вы не знаете CSS. Мои вопросы о CSS с ответами

Level of difficultyMedium
Reading time7 min
Views14K


Хабр, привет! Я стабильно пишу здесь о CSS. Мне радостно, что моя работа вам полезна. Но хочется чего-то нового. Вызывающего споры. В общем я возвращаюсь к формату статей в виде вопрос-ответ. Вопросы будут те, которые я спрашиваю на интервью. Так что у вас будет повод сказать: «А зачем это надо?».


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


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


Так, вы готовы? Давайте посмотрим, что я вам подготовил.

Читать дальше →

Perforator: новая система непрерывного профилирования теперь в опенсорсе

Level of difficultyMedium
Reading time21 min
Views39K

Привет! Сегодня мы выложили в опенсорс Perforator — систему непрерывного профилирования (continuous profiling), которую используем внутри Яндекса для анализа производительности большинства сервисов.

В Github-репозитории доступен исходный код системы и инфраструктура для развёртывания своей инсталляции Perforator на кластере Kubernetes. Кроме того, Perforator можно использовать на своём компьютере как более простую замену perf record: профили получаются точнее, а оверхед меньше. Исходный код доступен под лицензией MIT (и GPL для eBPF-программ) и запускается под x86-64 Linux.

При помощи Perforator и прошлых подходов к задаче профилирования мы регулярно оптимизируем самые крупные сервисы в Яндексе, например Баннерную крутилку или Поиск, на десятки процентов. Кроме того, Perforator реализует недостающий в опенсорсе компонент профилирования для простой автоматической оптимизации программ с использованием profile-guided optimization. Наши тесты показывают, что использование PGO даёт ускорение около 10% в разных сценариях.

Под катом поговорим про профилирование под Linux, опишем вызовы и сложности, возникающие при профилировании, изучим, как устроен Perforator внутри, и обсудим, как можно использовать полученную систему.

Читать далее

«Я — робот Вертер» или Нулевой закон робототехники

Level of difficultyEasy
Reading time8 min
Views11K


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

Разберём подробно, как правильно должны представляться роботы и почему это важно.

А также обсудим пути к созданию цивилизованной среды, в которой взаимодействие с роботами будет приносить больше пользы.
Почему же роботы ВСЕГДА должны говорить о том, что они роботы?

Keycloak. Админский фактор и запрет аутентификации

Level of difficultyMedium
Reading time4 min
Views11K
Привет, Хабр и его жители! Я, Максим Санджиев, представляю отдел, занимающийся развитием, поддержкой и безопасностью инфраструктуры в департаменте Security Services компании «Лаборатории Касперского». У нас в отделе накопилась «нестандартная» экспертиза по работе с vault, IAM (keycloak), rook-ceph, minio s3, prometheus, k8s и многими другими инструментами OPS/SecOps/SRE. Хотели бы с вами поделиться нашими ресерчами, идеями, самописными разработками и получить фидбэк на наши реализации. Начнем с кейсов по работе с IAM.



Эта статья рассчитана на людей, которые ранее были знакомы с IAM и, в частности, с keycloak-ом. Поэтому в этой части не будет «базы» по SAML2, OAuth2/OIDC и в целом по IAM (на Хабре есть хорошие статьи на эту тему).

Рассмотрим два кейса:
  • Есть учетная запись (УЗ) в keycloak с правами админа на какой-то веб-ресурс. Как, используя keycloak, сделать так, чтобы для входа админу требовался дополнительный фактор аутентификации?
  • Есть веб-ресурс (client в терминологии keycloak). Как дать доступ к этому веб-ресурсу средствами keycloak на этапе аутентификации определенной группе пользователей (в ситуации, когда это не реализовано самим приложением)?

Читать дальше →

[Конспект админа] Как подружиться с DHCP и не бояться APIPA

Reading time10 min
Views118K


Сервис, выдающий IP-адреса устройствам в локальной сети, кажется одним из самых простых и всем знакомых. Тем не менее у моих младших коллег до сих пор временами всплывают вопросы вроде «компьютер что-то получает какой-то странный адрес», а появление второго DHCP-сервера в одном сетевом сегменте вызывает некоторый трепет или проблемы в работе сети.


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


Немного теории и решения интересных и не очень практических задач — под катом.

Читать дальше →

Монтируем шары для юзеров

Level of difficultyMedium
Reading time9 min
Views30K

Всем привет. Монтируете ли вы шары, как их монтирую я? Вероятно, нет, т. к. очень крутой опции multiuser на просторах интернета уделено слишком мало внимания, а man mount.cifs в её отношении весьма немногословен и скуп на наглядные примеры. Именно это и сподвигло меня поделиться с вами парой «рецептов», которые могут облегчить вам и вашим пользователям движение в сторону отечественных десктопов и ИТ-инфраструктур.
Читать дальше →

far2l в Ubuntu 24.04 LTS готов для повседневного использования

Level of difficultyEasy
Reading time6 min
Views29K

Несколько дней назад вышло обновление, устраняющее последние шероховатости UX, и мы рады представить вам долгожданный полноценно работающий Far Manager в составе LTS-версии Ubuntu 24.04! В этой статье я расскажу, как получить максимум удовольствия от его использования. Поехали!

sudo apt update

sudo apt install far2l

Читать далее

Как настроить автодополнение для команды ssh с хостами из .ssh/config

Level of difficultyMedium
Reading time5 min
Views8K

Я администрирую много серверов и параметры подключения к ним занесены в ~/.ssh/config файл. В этой статье я расскажу, как настроить автодополнение для команды ssh, чтобы Bash подсказывал хосты, указанные в файле ~/.ssh/config.

Читать далее

$1697 за выключатель кондиционера: DIY ремонт управляющего планшета

Level of difficultyMedium
Reading time10 min
Views15K

Примечание переводчика: Представьте себе ситуацию, когда ваша система кондиционирования воздуха полностью исправна, но перестает работать из-за отказа простого планшета, который служит обычным выключателем. Вам предлагают решить проблему, заменив всю систему за $1697. Эта история — не просто рассказ о возмутительной ценовой политике, а о том, как инженерный подход и немного упорства могут сэкономить вам кучу денег. В этой статье автор делится своим опытом DIY-ремонта, который позволил ему обойтись без ненужных затрат и вернуть контроль над системой кондиционирования.

Заставлять клиентов менять всю систему из-за поломки самого дешевого компонента — возможно, и выгодно, но меня это так взбесило, что я решил разобраться сам. Я понимаю, что мои действия могут оказаться сложными для большинства пользователей Advantage Air, но в ходе моего исследования я выяснил, что причина несовместимости современных планшетов с более старыми системами управления кроется только в программном обеспечении. Если бы они просто добавили в свои приложения функцию выбора "системы", это решило бы проблему для всех, а их кастомный POE-разъем все равно бы заставлял использовать их оборудование.

Читать далее

React и жизнь после сборки

Level of difficultyMedium
Reading time27 min
Views3.5K

Бывает что на руках есть лишь «бинарная» сборка сайта на модном фреймворке вроде Angular или React, в которой «срочно надо что‑то поправить». А исходного кода нет. Есть лишь вы, «бандл» с обфрусцированным JavaScript‑кодом внутри и горящие сроки. Рассказываю что с этим можно cделать кроме увольнения.

Оживить

IPv6 или противостояние занижению скорости Youtube

Level of difficultyMedium
Reading time5 min
Views79K

Если Вы являетесь счастливым обладателем маршрутизатора Mikrotik и у Вас белый IP адрес, а также надоело занижение скорости Youtube, то статья для Вас. Добро пожаловать!

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

Читать далее

Как анонимно продать или купить крипту

Reading time5 min
Views71K

Сервис по мониторингу обменников Exnode

Как известно, анонимность — одно из базовых прав человека. В мае 2015 года Совет по правам человека ООН опубликовала доклад, который прямо называет анонимное использование интернета частью базовых прав человека:

«Шифрование и анонимность позволяют людям осуществлять свои права на свободу мнений и их свободное выражение в цифровой век и ввиду этого должны заслуженно пользоваться надёжной защитой», — из доклада ООН, 22.05.2015 г.

Особенно актуальна эта задача при обращении с финансами. Фиат и биткоин изначально задумывались как анонимные и приватные деньги, но на практике в 21 веке государство стремится отслеживать все транзакции, а личность пользователя можно вычислить, если он не принял меры безопасности.
Читать дальше →

Как загрузить, установить Office 2024 LTSC с сайта Microsoft и активировать навсегда?

Level of difficultyMedium
Reading time8 min
Views469K

Десять лет назад я писал пару статей - Как загрузить последний Office с сайта Microsoft без всякого App-V / Хабр (habr.com) и Как загрузить Microsoft Office 16 с сайта Microsoft / Хабр (habr.com), при помощи на тот момент еще мало кому известным Office Deployment Tool.

Время бежит стремительно, за Office 2016 выходит Office 2019, Office 2021, и вот сейчас подошло время для Office 2024. Что ж, посмотрим, что поменялось в плане загрузки, установки и активации продукта за десять лет.

Для начала о версиях и изданиях Microsoft Office. Чтобы не быть слишком дотошным в описании, скажу коротко самое главное, - с годами линейка Office развивается, существуют разные подписки и планы обновления, - новые функции появляются в новых версиях, для старых версий выходят исправления ошибок и заплатки к найденным уязвимостям.

Microsoft давно перешел на систему распространения продуктов семейства Office по разным, так называемым, "каналам" (channels), в зависимости от того как часто вы хотите получать нововведения и обновления.

Ключевым отличием в текущей загрузке и установке Office от того, что было актуально во времена Office 2016, является то, что вы должны определить, каким каналом распространения вы собираетесь пользоваться, - то есть с какого канала собираетесь устанвливать сам продукт. Тем, кто хотел бы подробно изучить разные каналы распространения я предложу почитать первоисточник - Обновления Office - Office release notes | Microsoft Learn. Остальным кратко резюмирую - Microsoft сейчас предпочитает всем продать подписку на Microsoft 365 (то, что ранее называлось Office 365), с регулярно обновляемыми возможностями в течении так называемой Современной политики жизненного цикла. По этой же современной политике распространяется пользовательские (коробочные, ретейл) версии Office 2021. Office 2021, например, поддерживается лишь до 13 октября 2026. А более старые версии следуют, так называемой политике фиксированного жизненного цикла, в рамках которой Office 2016 и Office 2019 поддерживаются лишь до 14 октября 2025. В целом, они не перестанут работать после, однако, перестанут обновляться. И у тех из вас, кто пользуется почтовыми сервисами на базе Microsoft Outlook.com или Office365, а возможно и пользователям Microsoft Exchange, с обновлениями выпущенными после 14 октября 2025 уже пора призадуматься об обновлении.

Читать далее об установке Office 2024

Telegram Боты на Aiogram 3.x: Магия фильтров

Level of difficultyMedium
Reading time12 min
Views26K

Привет, друзья!

Благодарю вас за позитивный отклик на мои статьи и за подписки — это бесценно. Продолжим.

К этому моменту мы с вами уже научились многому:

- Запустили своего бота на aiogram 3

- Поговорили про магические и встроенные фильтры

- Научились профессионально писать текстовые клавиатуры и узнали все про специальные текстовые кнопки (статья про текстовые клавиатуры)

- Разобрались с инлайн кнопками и CallData (статья про инлайн кнопки)

- Научились создавать инлайн кнопки-ссылки и инлайн кнопки с CallData

- Рассмотрели тему командного меню

- Познакомились с моим видением каркаса бота

- Научились писать хендлеры для текстовых сообщений и обработки CallData

- Даже сделали так, чтобы наш бот имитировал набор текста, и многое другое

Казалось бы, что еще может быть интересного в aiogram 3? Но поверьте, интересного еще на множество статей. Здесь, на Хабре, я планирую научить каждого писать телеграмм-ботов на уровне профессионалов, чтобы вас не пугала никакая задача от заказчика.

Как вы уже поняли из названия статьи, сегодня мы поговорим о фильтрах в aiogram 3. В этой статье мы обсудим:

Читать далее

Обзор OpenTofu 1.7.0: установка, миграция с Terraform, ключевые особенности

Level of difficultyEasy
Reading time11 min
Views7.9K

30 апреля из бета-тестирования вышел OpenTofu 1.7.0. Это Open Source-форк Terraform, который развивается под управлением Linux Foundation. Ранее мы уже писали о причинах разработки OpenTofu, связанных с изменением лицензионной политики HashiCorp в отношении своих продуктов. В этой же статье мы сделаем обзор версии 1.7.0: установим OpenTofu, выполним миграцию инфраструктуры с Terraform, а также рассмотрим ключевые особенности данного релиза.

Читать далее

Пайплайны в GitLab для микросервисов

Reading time10 min
Views19K

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

Начнем с основ на примере монолитного приложения, а потом усложним их микросервисами и постараемся избавиться от однотипного кода. А еще…
Читать дальше →
1
23 ...

Information

Rating
Does not participate
Registered
Activity