Как стать автором
Обновить

Все потоки

Сначала показывать
Порог рейтинга
Уровень сложности

Извлечение текста из файлов PDF при помощи Python

Уровень сложности Средний
Время на прочтение 15 мин
Количество просмотров 361
Туториал
Перевод

▍ Введение


В эпоху больших языковых моделей (Large Language Model, LLM) и постоянно расширяющейся сферы их применений непрерывно растёт и важность текстовых данных.

Существует множество типов документов, содержащих подобные виды неструктурированной информации, от веб-статей и постов в блогах до рукописных писем и стихов. Однако существенная часть этих данных хранится и передаётся в формате PDF. В частности, выяснилось, что за каждый год в Outlook открывают более двух миллиардов PDF, а в Google Drive и электронной почте ежедневно сохраняют 73 миллионов новых файлов PDF (2).

Поэтому разработка более систематического способа обработки этих документов и извлечения из них информации позволит нам автоматизировать процесс и лучше понять этот обширный объём текстовых данных. И в выполнении этой задачи, разумеется, нашим лучшим другом будет Python.
Читать дальше →
Всего голосов 5: ↑5 и ↓0 +5
Комментарии 2

Новости

Управление процессами КИСМ Норникеля выходит на новый уровень

Уровень сложности Простой
Время на прочтение 4 мин
Количество просмотров 133
Кейс

Проект выбивали более трех долгих лет, одних только поездок, встреч и презентаций было более десятка. В ходе проекта возник интересный случай. Одной из унаследованных систем, из которой надо было подтянуть данные оказалась наша же система, поставленная заказчику в далеком 2001 году. Это был электронный архив нормативно-технической документации Кольской ГМК.

Какие цели проекта ставились и что было достигнуто:

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Комментарии 0

Книги по Linux для начинающих и профессионалов: выбираем лучшее

Время на прочтение 4 мин
Количество просмотров 373

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

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Комментарии 0

Как мы внедряли Sentry. Часть 1 — установка и настройка

Уровень сложности Средний
Время на прочтение 12 мин
Количество просмотров 288

Привет! Я Виталий, DevOps в LEADS.STUDIO, в этой статье хочу рассказать как мы внедряли Sentry self-hosted и приводили к продакшен состоянию, которое должно отвечать требованиям высокодоступности - нельзя терять события ошибок. При этом не хотелось заморачиваться с кластеризацией для разных инструментов (вроде redis, postgresql, clickhouse, kafka и прочее). И тут мы вспомнили про распределенную сеть доставки логов из нескольких узлов td-agent и решили попробовать.

Читать далее
Рейтинг 0
Комментарии 0

Истории

Golang: как найти мёртвый код в проекте, а заодно оценить покрытие тестами живого кода

Время на прочтение 3 мин
Количество просмотров 667

В Go 1.20 сделали возможность сбилдить приложение с флагом cover


go build -cover

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


Это, конечно, было сделано для интеграционных тестов, когда приложение запускается целиком в каких-то сценариях (а не через go test), но, вероятно, это можно попробовать использовать и по-другому:


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


Так можно найти недовыпиленный легаси-код, старые эндпоинты API, которые давно никому не нужны, малозначимые проверки if err != nil и прочее. Как минимум, на это интересно посмотреть, можно найти что-нибудь удивительное.


Disclaimer: разумеется, сбор статистики создает какой-то оверхед, поэтому подойдёт точно не всем. Как вариант, можно пустить туда небольшую часть трафика.

Читать дальше →
Всего голосов 4: ↑4 и ↓0 +4
Комментарии 0

Организация GPU-вычислений для машинного обучения в компании: проблемы и трудности

Уровень сложности Простой
Время на прочтение 8 мин
Количество просмотров 402

По мере того как компании стремятся использовать возможности искусственного интеллекта, резко возрос спрос на специализированные вычислительные ресурсы, в частности, на графические процессоры (GPU). Графические процессоры раньше ассоциировались в основном с играми и графикой, но теперь стали основой многих операций машинного обучения. 

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

Читать далее
Всего голосов 10: ↑10 и ↓0 +10
Комментарии 0

Необычные животные на суше

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 756

Всем привет! На связи снова Олег Шилов, фронтенд-разработчик команды Леруа Мерлен. И сегодня я вернулся с продолжением своего рассказа про необычных животных нашей планеты. (Первую часть можно прочитать здесь.) Повторюсь, я не биолог и не специалист по флоре и фауне, а просто увлеченный этой темой обыватель. И задача этого текста — просто поведать вам об удивительных тварях, с которыми мы можем столкнуться в самых разных уголках Земли. Что называется, предупрежден — значит вооружен. Так что всем заинтересовавшимся — приятного прочтения.

Читать далее
Всего голосов 4: ↑3 и ↓1 +2
Комментарии 0

Magnet для Алисы

Уровень сложности Простой
Время на прочтение 5 мин
Количество просмотров 846

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

О Magnet
Всего голосов 3: ↑3 и ↓0 +3
Комментарии 12

Подписываем образы контейнеров с помощью cosign, garantir и skopeo

Время на прочтение 6 мин
Количество просмотров 168

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

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

Читать далее
Рейтинг 0
Комментарии 0

Cloud, Big Data, Security: чего ждать от первой дискуссионной конференции Deep cloud dive

Время на прочтение 6 мин
Количество просмотров 101

12 октября состоится первая дискуссионная конференция Deep cloud dive от beeline cloud. Регистрируйтесь здесь и мы пришлем вам ссылку на онлайн-трансляцию.

Далее расскажем, чем наше мероприятие отличается от любой другой ИТ-конференции, что будет на повестке и почему вам стоит принять участие. Также подробно разберем блок Security — мы, как Secure cloud provider, уделяем теме ИБ отдельное внимание. Взяли интервью у Егора Бигуна, директора по информационной безопасности beeline cloud. Ниже расскажем, чем секция Security будет особо примечательной.

Участие в Deep cloud dive бесплатное. Разыгрываем мерч. Обсуждаем горячие темы. При этом вы не будете «просто сидеть и слушать чужие презентации».

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Комментарии 0

Как прошёл Selectel Day Off 2023

Время на прочтение 4 мин
Количество просмотров 150
Репортаж

В этом году компания Selectel решила продлить летние каникулы и в первое воскресенье сентября провела бесплатный IT-фестиваль с соответствующей атмосферой.

В статье описывается, что было на фестивале и какие впечатления он оставил у меня и моей подруги. Я также сделал 3х-минутный видео-recap фестиваля, с помощью которого можно «понарошку» побывать на фестивале :)

Recap приведён в конце статьи.

Читать далее
Рейтинг 0
Комментарии 0

Фундаментальные подходы при работе с Git

Время на прочтение 5 мин
Количество просмотров 1.4K

Git - одна из наиболее популярных систем контроля версий, используемых разработчиками по всему миру. Однако, существует множество различных подходов к организации рабочего процесса с использованием Git. В этой статье мы рассмотрим некоторые из наиболее популярных методов, такие как Git Flow, Trunk-Based Development (TBD), на их основе бизируются остальные:

Читать далее
Всего голосов 4: ↑3 и ↓1 +2
Комментарии 4

Как коридорное исследование помогло обновить каунтеры тредов в мессенджере

Время на прочтение 4 мин
Количество просмотров 234
Кейс

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

Читать далее
Всего голосов 4: ↑3 и ↓1 +2
Комментарии 2

Ближайшие события

Битва пет-проектов
Дата 25 сентября – 30 ноября
Место Онлайн
PG Boot Camp Russia 2023
Дата 5 октября
Время 10:00 – 17:00
Место Москва Онлайн
Joker
Дата 9 – 14 октября
Время 16:00 – 19:30
Место Санкт-Петербург Онлайн
Открытый урок «Kafka Streams»
Дата 16 октября
Время 10:00
Место Онлайн
Питч-сессия pravo (tech) impulse
Дата 19 октября
Время 15:45 – 17:30
Место Москва
Russia Risk Conference 2023 — 19-я конференция по риск-менеджменту
Дата 25 – 26 октября
Время 10:00 – 19:00
Место Москва Онлайн
IT Recruiting – HR Forum 2023
Дата 8 – 10 ноября
Время 9:00 – 18:00
Место Москва
Онлайн IT HR-конференция HR42
Дата 17 – 18 ноября
Время 10:00 – 14:00
Место Онлайн
HighLoad++ 2023
Дата 27 – 28 ноября
Время 9:00 – 20:00
Место Москва Онлайн

Как типизировать Vuex Store

Уровень сложности Средний
Время на прочтение 6 мин
Количество просмотров 282
Туториал

Всем привет!

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

You are welcome!

Хочу типизировать Vuex
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 0

Аналог Tableau LOD в FineBI: 15 типичных кейсов

Уровень сложности Средний
Время на прочтение 18 мин
Количество просмотров 230
Аналитика
Перевод

Хабр, привет! На связи команда Business Intelligence GlowByte. Хотим поделиться статьей китайского автора и бизнес-аналитика, активного пользователя FineBI. Он рассмотрел решение 15 типичных кейсов в Tableau и FineBI, провел сравнение инструментов, а также сделал вывод относительно их преимуществ и недостатков. Для интересующихся темой этот материал – находка. Если вы ищете больше информации и ответов на вопросы, смело приходите к нам в комьюнити FineBI в России, созданное Business Intelligence GlowByte.

15 типичных кейсов в Tableau и FineBI
Всего голосов 11: ↑11 и ↓0 +11
Комментарии 0

Истории из жизни вредоносов: прячемся в автозагрузку ОС Windows

Уровень сложности Средний
Время на прочтение 6 мин
Количество просмотров 1.3K
Обзор

Основной задачей, которую необходимо решить вредоносному файлу сразу после запуска является закрепление в системе, то есть обеспечение возможно постоянной работы данного процесса в системе. То есть, злоумышленнику необходимо, чтобы процесс, с помощью которого он может получить доступ в систему (троян, бэкдор и т. д.) запускался бы автоматически при загрузке системы и работал во время всего сеанса работы системы. Существует несколько методов закрепиться в системе. В этой статье мы рассмотрим наиболее распространенные способы закрепления в ОС Windows, а также посмотрим, как некоторые из этих техник выглядят в отладчике. Будем считать, что для запуска нужного процесса злоумышленнику так или иначе необходимо запустить выполнимый файл.

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Комментарии 4

Запуск потенциально опасного кода в изолированном окружении. Как мы сохраняем безопасность на macOS

Время на прочтение 7 мин
Количество просмотров 417

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

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Комментарии 0

Создание почтовых правил в Carbonio

Уровень сложности Простой
Время на прочтение 4 мин
Количество просмотров 130
Туториал

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

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 0

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

Уровень сложности Средний
Время на прочтение 8 мин
Количество просмотров 911

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

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

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

Читать далее
Всего голосов 5: ↑4 и ↓1 +3
Комментарии 6

SiteAnalyzer 3.0: переход на платную версию, фильтр по ТОПу доменов, график распределения анкоров

Уровень сложности Простой
Время на прочтение 3 мин
Количество просмотров 197
Обзор

Всем привет! Меня зовут Симагин Андрей и сегодня я рад представить новую версию программы SiteAnalyzer. Для тех, кто слышит о программе впервые - SiteAnalyzer это десктопный краулер, предназначенный для технического аудита сайтов.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 4