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

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

Отправить сообщение

Генератор текста на основе триграмм (python)

Время на прочтение10 мин
Количество просмотров36K
В данной статье описывается как сгенерировать псевдотекст на основе триграммной модели. Полученный текст вряд ли возможно где-либо использовать, тем не менее это неплохая иллюстрация использования статистических методов обработки естественного языка. Пример работы генератора можно посмотреть здесь.

Сухая теория


И так, наша задача сгенерировать текст. Это значит, нам нужно взять слова и выстроить их в определенном порядке. Как определить этот порядок? Мы можем пойти следующим образом: построить фразы, наиболее вероятные для русского языка. Но что значит вероятность фразы языка? С точки зрения здравого смысла это бред. Тем не менее, эту вероятность можно задать формально как вероятность возникновения последовательности слов в неком корпусе (наборе текстов).
Читать дальше →
Всего голосов 46: ↑38 и ↓8+30
Комментарии35

Микросервисы Rust в серверном WebAssembly

Уровень сложностиСложный
Время на прочтение8 мин
Количество просмотров5.2K
image

Язык программирования Rust за последние несколько лет значительно распространился. Он несколько лет подряд считается самым любимым языком программирования среди разработчиков и включён в состав ядра Linux. Rust позволяет разработчикам писать корректные программы, обеспечивающие безопасность при работе с памятью, а также такие же компактные и быстрые, как на языке C. Он идеально подходит для создания инфраструктурного программного обеспечения, включая серверные приложения, от которых требуется высокая надёжность и производительность.
Читать дальше →
Всего голосов 29: ↑26 и ↓3+23
Комментарии10

Gab — AI бот без цензуры и предвзятости, отвечающий почти на любые вопросы

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

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

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

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

Погрузиться во что-то новое
Всего голосов 9: ↑7 и ↓2+5
Комментарии12

Большая шпаргалка по Rust. 2/2

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



Hello world!


Представляю вашему вниманию вторую часть большой шпаргалки по Rust.


Первая часть.


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


Обратите внимание: шпаргалка рассчитана на людей, которые хорошо знают любой современный язык программирования, а не на тех, кто только начинает кодить 😉


Также настоятельно рекомендуется хотя бы по диагонали прочитать замечательный Учебник по Rust (на русском языке).

Читать дальше →
Всего голосов 28: ↑27 и ↓1+26
Комментарии2

Как работает управление памятью в Rust без сборщика мусора

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

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

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

Сжатие css классов. Как сделать веб Ещё быстрее. next.js

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

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

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

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

Как создать эффективную посадочную страницу в 2023: всего 3 фактора, от которых зависит конверсионность лендинга

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

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

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

Как подключить Yandex GPT к своему проекту на Python

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

6 декабря Яндекс открыл доступ к своим диалоговым моделям (моделям генерации) и векторного представления текста через API. API уже доступно в Yandex Cloud.

Вчера мне потребовалось применить его в приложении, однако, не удалось найти руководства, как сделать это быстро. Документация Яндекса хороша, но предполагает, что опыт работы с Yandex Cloud уже имеется. В отсутствие такого опыта документация выглядит фрагментированной.

Предлагаю пошаговый гайд, который, надеюсь, сэкономит читателю, не знакомому с Yandex Cloud, часик-другой.

Для того, чтобы использовать Yandex GPT в Вашем Python-проекте, нужно выполнить 4 шага:

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

Искусственный интеллект на Python с использованием TensorFlow и Keras

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

Искусственный интеллект и машинное обучение становятся все более востребованными в современном мире. Многие компании и стартапы активно внедряют технологии искусственного интеллекта для решения бизнес-задач и оптимизации процессов.

Одним из ключевых инструментов для реализации нейро-сетевых архитектур и алгоритмов глубокого обучения является язык программирования Python. Благодаря наличию мощных библиотек, таких как TensorFlow и Keras, создание и обучение нейронных сетей на Python стало достаточно простым.

TensorFlow - это библиотека для машинного обучения, разработанная компанией Google. Она позволяет определять, тренировать и запускать нейронные сети различных архитектур. Keras - библиотека глубокого обучения высокого уровня, может использовать TensorFlow в качестве бэкенда. Keras упрощает создание моделей нейросетей благодаря удобному API.

Цель этой статьи - познакомить читателей с основными принципами глубокого обучения, а также возможностями библиотек TensorFlow и Keras для создания и обучения нейронных сетей на Python. Мы рассмотрим базовые концепции, этапы обучения моделей, а также практические кейсы использования TensorFlow и Keras для решения задач классификации, распознавания и анализа данных.

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

Читать далее
Всего голосов 14: ↑7 и ↓70
Комментарии13

Самый маленький Docker образ Rust приложения

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

Привет %username%, эта статья про то, как поместить Rust приложение в Docker и получить образ размером с бинарный файл (6 Мб). А также про причины, которые привели к переходу с NodeJS на Rust. Отдельная пара слов о проблемах вначале, переходе на Go, и том, как команда Rust устранила эти проблемы за пол года.

TL;DR Dockerfile в конце статьи и ссылка на example репозиторий

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

Разбираем TLS по байтам. Где собаки зарыты?

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


Подключение к сайту бывает защищённым, а бывает нет — это надо знать всем детям. Только не все дети знают, что это значит и как работает. Кажется я это уже писал? Ах да, это же вторая часть статьи с разбором TLS.

В первой мы увидели, что такое «защищённое соединение», сколько и каких ключей для него нужно, кто кого шифрует и подписывает, и что такое «сертификат». Сейчас разберёмся, как всё это дело реализуется в протоколе TLS: как выглядит рукопожатие, как сделать ключ шифрования своими руками, в каком виде данные передаются по сети.
Читать дальше →
Всего голосов 39: ↑39 и ↓0+39
Комментарии1

React Fiber & Concurrency Part 1 (2)

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

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

Тема разделена на две статьи. Первая статья расскажет о процессе обновления и внесения изменений в DOM. Вторая статья посвящена реализации не блокирующего рендеринга - Concurrent React. Данная статья является первой из двух.

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

Пробиваем дыры в NAT

Уровень сложностиСложный
Время на прочтение14 мин
Количество просмотров24K

NAT - механизм, создающий множество проблем для P2P коммуникации, в силу того, что нередко адрес пира может не иметь доступного из любой точки мира, "белого" адреса. Существует ряд способов обхода NAT, но их документация, равно как и данные об их надежности, достоинствах и недостатках оставляет желать лучшего, а потому мы рассмотрим наиболее простой, и в то же время надежный метод - "hole punching".

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

Vite плагин для удобной работы с Web Workers

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

Привет, Хабр! Я участвую в разработке крупного Web приложения и мы с коллегами на этапе проработки и планирования архитектуры пришли к выводу о необходимости выносить всю логику приложения в отдельный поток Web Worker, т.к. предполагается большое число фоновых операций и вычислений. К чему это привело? Сложности? Пути их решения? Обо всем попорядку.

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

Туториал: Todo веб-приложение на Internet Computer используя Rust и Create React App

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

В этом туториале мы подробно разберём, как именно происходит процесс разработки канистеров на Internet Computer. Мы пройдём полный путь от hello-world проекта, сгенерированного dfx автоматически до полноценного Todo-app с бекендом и фронтендом. Разберём какие файлы для чего нужны, какие команды использовать, как тестировать и дебажить приложение. Туториал расчитан на новичков в Internet Computer и блокчейн-сетях в целом, но мы ожидаем, что небольшой опыт Rust и React у читателя уже имеется. Полный код проекта из этого туториала можно найти здесь.

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

После GPT-4

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

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

Далее
Всего голосов 244: ↑230 и ↓14+216
Комментарии346

Примеры использования asyncio: HTTPServer?!

Время на прочтение8 мин
Количество просмотров50K
Не так давно зарелизилась новая версия Python 3.4 в changelog которой вошло много «вкусностей». Одна из таких — модуль asyncio, содержащий инфраструктуру пригодную для написания асинхронных сетевых приложений. Благодаря концепции сопрограмм (coroutines), код асинхронного приложения прост для понимания и поддержки.

В статье на примере простого TCP (Echo) сервера я постараюсь показать с чем едят asyncio, и рискну устранить «фатальный недостаток» этого модуля, а именно отсутствие реализации асинхронного HTTP сервера.
Читать дальше →
Всего голосов 33: ↑31 и ↓2+29
Комментарии9

Основы работы с zmq в python, создание простого key/value хранилища

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

Введение


Разберем пример простого key/value хранилища, например такого как memcache. Устроен он просто — данные хранятся в памяти, в структуре hashmap. Доступ к ним осуществлятся через tcp-сокет. В питоне hashmap — это обычный dict. Для доступа будем использовать zeromq.
Читать дальше →
Всего голосов 9: ↑6 и ↓3+3
Комментарии4

Технологии фронтенд-разработки, на которые вы, возможно, не обратили внимания

Время на прочтение13 мин
Количество просмотров30K
«Хочешь жить — умей вертеться». Это — про работу фронтенд-программиста. Для того чтобы успешно справляться со своими обязанностями, такому специалисту приходится решать массу задач и необходимо обладать множеством способностей. Очень важно, кроме того, не забывать о главной цели, ради которой разрабатывают сайты. А именно, о том, что сайты должны помогать людям упрощать решение их повседневных задач.



В этом материале я собираюсь рассказать о различных аспектах веб-разработки, о которых стоит знать любому программисту соответствующего профиля. Я, если это возможно, буду приводить ссылки на материалы, демонстрирующие примеры применения соответствующих возможностей и рекомендации по их правильному использованию. Здесь я буду ориентироваться на реализацию тех или иных механизмов в Angular, React и Vue.
Читать дальше →
Всего голосов 43: ↑35 и ↓8+27
Комментарии12

Как управлять состоянием React приложения без сторонних библиотек

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

image


Реакт это все что вам нужно для управления состоянием вашего приложения.


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


Существует метод управления состоянием который лично я пытаюсь применять еще с тех пор как я начал использовать Реакт. И теперь, после релиза хуков (hooks) и улучшения контекстов (context), этот метод управления состояниями стало очень просто использовать.

Читать дальше →
Всего голосов 9: ↑7 и ↓2+5
Комментарии23

Информация

В рейтинге
Не участвует
Откуда
Москва и Московская обл., Россия
Зарегистрирован
Активность