All streams
Search
Write a publication
Pull to refresh
60
0

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

Send message

Визуальное RPG с долговременной памятью, генерируемое из 3 нейросетей и LLamы

Level of difficultyEasy
Reading time17 min
Views19K

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

Важно только понимать, что движущей силой сюжета в их сессиях является лишь один из игроков, называемый Dungeon Master. Когда только начали появляться первые GPT-модели, одной из первых хотелок гиков оказалось желание сварить из нейросетей автоматического Dungeon Masterа.

Так и появился AIDungeon — уникальная для своего времени (2019 год) вещь, которая не сильно потеряла в популярности и по сей день. Однако, если вы любите смотреть глубже, то играть в него вам быстро надоест. Я же в своей серии из нескольких статей (посвящённых GPT) стараюсь показать простому обывателю механизм безболезненного использования нейросетевых моделей в простых проектах при помощи Python и Hugging Face Transformers.
Приступим

Как я разбирал нестандартный формат 3D-моделей, чтобы показывать Лего у себя на сайте

Level of difficultyMedium
Reading time7 min
Views8.4K

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

Я перепробовал несколько редакторов 3D-моделей Лего (моим главным условием была работа на Linux, либо в вебе), и остановился на онлайн-редакторе Mecabricks. Но, уже перенеся туда несколько из моих творений, понял, что с задачей «показывать всем друзьям» всё будет сложнее: у Mecabricks довольно скудные возможности экспорта, а его собственный формат с расширением .zmbx понимает только он и его плагин для Blender.

Поэтому я решил посмотреть, как этот формат устроен, и написать свой конвертер во что-то более общепринятое. В качестве целевого формата я выбрал glTF, а инструмент незатейливо назвал zmbx2gltf.

В этой статье я расскажу, как постепенно разбирал этот непонятный .zmbx, про устройство и преимущества glTF как формата передачи 3D-ассетов между разными инструментами, и про то, какие проблемы я решал, конвертируя одно в другое.
Читать дальше →

ИИ-агенты с саморефлексией. LLM на своём сервере

Level of difficultyMedium
Reading time8 min
Views11K


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

Один из интересных аспектов обучения ИИ-агентов — внедрение любопытства и саморефлексии, самоанализа. Это позволяет лучше адаптироваться к изменениям среды, обращая внимание на новые и потенциально важные явления вокруг. Примерно тем же занимается человеческий мозг (гиппокамп) во время сна, прокручивая воспоминания за день и оценивая их важность/новизну для долговременного хранения или удаления из памяти.
Читать дальше →

Не усложняйте свои приложения

Level of difficultyEasy
Reading time6 min
Views14K

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

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

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

Графика древности: от текста к видеоиграм

Level of difficultyMedium
Reading time32 min
Views19K

Вот уже много лет в игровой индустрии вместе с самыми последними графическими технологиями успешно сосуществует пиксельная графика практически в том же самом виде, в каком она существовала в играх для домашних компьютеров и игровых приставок 80-х и 90-х годов. Её возвращение на игровые мониторы в конце 2000-х годов казалось кратковременной модой на ретро, но однажды вернувшись, пиксели остались с нами надолго.

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

Разработка индивидуальных средств передвижения?

Level of difficultyEasy
Reading time9 min
Views6.3K
Картинка Benzoix, Freepik

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

На руку этой тенденции играет всё увеличивающаяся урбанизация (по некоторым оценкам, к середине этого века около 70-80% населения Земли будет жить в городах). Большая скученность людей, невозможность или проблемы с поиском свободной парковки для авто заставляют присмотреться к таким средствам передвижения внутри городов более пристально.
Читать дальше →

Google Workspace и Office 365 постепенно закрывают для РФ. Ставим офисный софт на своём сервере

Level of difficultyEasy
Reading time6 min
Views20K

Nextсloud Office

В последнее время появляется всё больше новостей про блокировку офисных сервисов Google Workspace и Office 365 для российских клиентов. По слухам, отключают некоторые компании, попавшие в санкционные списки. Но скоро блокировка может распространиться на остальных, всё к этому идёт.

К счастью, есть много опенсорсных альтернатив на замену Google Workspace и Office 365. Это бесплатные открытые решения, которые можно установить на своём сервере.
Читать дальше →

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

Level of difficultyMedium
Reading time7 min
Views12K

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


Я затрону не все аспекты. Их очень много, поэтому поговорю о: интерактивных элементах, доступности текста, анимации и изображениях. В статье буду использовать опыт моего незрячего знакомого (привет, Илья). Он внёс бесценный вклад. Уверен, что вам будет интересно. Поехали!

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

Как WhatsApp справлялся с 50 миллиардами сообщений в день, имея всего 32 инженера

Level of difficultyEasy
Reading time4 min
Views28K

Январь 2008 года — Калифорния, США.

Инженер Ян Кум нанимается на работу в Facebook* — получает отказ.

Это был не конец — он продолжил двигаться дальше.

В следующем году он покупает iPhone и сразу же понимает огромный потенциал нового App Store.

С несколькими бывшими коллегами из Yahoo он решает создать программу мгновенного обмена сообщениями. Программе дают имя WhatsApp. Предназначение WhatsApp — стать заменой дорогостоящим SMS.

Рост популярности WhatsApp поражает воображение — каждый день в него заходит один миллион людей.

WhatsApp мог справляться с 50 миллиардами сообщений в день от 450 миллионов активных пользователей, имея в штате всего 32 инженера.

Хотя взрывной рост продукта — это приятная проблема, для её решения Яну Куму и команде разработчиков WhatsApp пришлось применить самые передовые технологии проектирования.
Читать дальше →

«Поиск» истины. История ПЭВМ «Поиск» от его создателей

Level of difficultyEasy
Reading time8 min
Views11K


Первый компьютер — как первая любовь или первый поцелуй: память о нём остаётся с тобой на всю жизнь. Со «Спектрумом» у меня вышло лишь мимолётное романтическое знакомство, а вот настоящее чувство, переросшее в долгие и крепкие отношения, возникло к персоналке по имени «Поиск». Недавно я совершенно случайно наткнулся на интервью с Юрием Васильевичем Ролем, создателем этой замечательной машины, в котором он поделился многими интересными подробностями об истории появления ПЭВМ «Поиск» на свет.
Читать дальше →

Автоматизация бурления: ChipArp

Level of difficultyMedium
Reading time12 min
Views4K

Наиболее знаковым атрибутом видеоигровой музыки 1980-х, несомненно, является арпеджио — технический приём, служащий обогащению гармонии в условиях крайне ограниченной полифонии. Получающееся в результате специфическое «булькающее», «бурлящее» звучание стало в сознании масс своего рода визитной карточкой 8-битной музыки, вызывающей мгновенное узнавание.

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

Как iMac спас компанию Apple

Level of difficultyEasy
Reading time7 min
Views9.3K

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

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

После бурных дней революции персонального компьютера в середине 1990-х возник застой. Apple десяток лет транжирила преимущества Mac и, наконец, после громкого появления Windows 95 от них почти ничего не осталось. Это была эпоха бежевых десктопных компьютеров, подключённых к большим ЭЛТ-дисплеям и другой периферии.

В 1997 году Стив Джобс вернулся в Apple, находившуюся на пороге смерти, и быстро оценил пассивы и активы компании. У Apple не было ни волшебной палочки, ни курицы, несущей золотые яйца, зато имелся молодой промышленный дизайнер, который экспериментировал с цветами и прозрачным пластиком.

Мозг Джобса, дизайны Джони Айва и новый чип PowerPC G3 компании Motorola позволили компании начать придумывать план. По сути, Джобс вернулся к своей исходной концепции «компьютер для всех остальных», к продаже простоты. Графический интерфейс Mac с управлением мышью, возможно, и изменил направление движения мира PC, но его дизайн «всё в одном» не сработал. Джобс решил, что настало время повторной попытки.
Читать дальше →

Что происходит, когда запускаешь «Hello World» в Linux

Level of difficultyMedium
Reading time15 min
Views30K

Сегодня я задумалась о том, что происходит, когда запускаешь в Linux простую программу «Hello World» на Python.

print("hello world")

Вот как это выглядит в командной строке:

$ python3 hello.py
hello world

Но внутри происходит гораздо больше. Я объясню, что там творится, и, что гораздо важнее, расскажу об инструментах, при помощи которых вы сами сможете исследовать происходящее. Мы воспользуемся readelf, strace, ldd, debugfs, /proc, ltrace, dd и stat. Я не буду рассматривать относящиеся к Python части, только объясню, что происходит при выполнении динамически компонуемых исполняемых файлов.
Читать дальше →

Экосистема Hyper. Полный пиринг и шифрование

Level of difficultyMedium
Reading time7 min
Views7K


В настоящее время резко выросла потребность людей в защищённых коммуникациях. А с ней и популярность сервисов для защиты связи и шифрования. Это VPN, mesh-сети и пиринговые приложения для прямого обмена зашифрованными сообщениями, файлами и т. д. Один из самых продвинутых наборов такого рода — экосистема Hyper. Есть и другие (о них ниже).
Читать дальше →

Маленький поисковик, который не смог

Level of difficultyEasy
Reading time14 min
Views28K
Пара бывших сотрудников Google решила создать поисковый движок будущего. Они собрали нечто более быстрое, простое и без рекламы. Почему же так вышло, что большинство людей ничего не слышало о Neeva?


Сридхар Рамасвами ушёл из Google не для того, чтобы создать другой поисковый движок. По крайней мере, изначально. В завершение своей 15-летней карьеры в Google Рамасвами управлял целым рекламным отделом компании, руководя более чем десятью тысячами людей, и лучше других знал, какой объём работы необходим, чтобы реализовать поиск правильно.

Нельзя переоценить степень доминирования Google в мире поиска. По данным большинства исследований, Google владеет примерно девяноста процентами мирового рынка поисковиков, и это число стабильно росло в течение двадцати лет. Google — поисковый движок, используемый по умолчанию почти в каждом браузере, почти на каждом устройстве. Мы не выполняем поиск в Интернете, мы гуглим. Вторым и третьим в списке идут Bing и Yahoo, но когда вы в последний раз искали что-нибудь в Bing или Yahoo? Для поддержания своего доминирования Google тратит огромные политические, инженерные и финансовые капиталы.

Но больше остальных Рамасвами знал и то, что Google не может или не хочет сделать со своим движком. Имея миллиарды пользователей и сотни миллиардов долларов, Google не будет рисковать, исследуя существенные изменения в своей странице результатов, новые бизнес-модели или любые продукты, которые заставят пользователей меньше заниматься поиском (Рамасвами тестировал функцию Google Contributor, позволявшую людям платить за отсутствие рекламы на некоторых сайтах, но система не взлетела). Возникла возможность, которой Google просто не могла и не хотела бы пользоваться. Поэтому когда Рамасвами ушёл из компании в 2018 году, они с Вивеком Рагхунатаном (давним руководителем высшего звена Google и YouTube) основали компанию Neeva для создания поискового движка будущего.
Читать дальше →

OpenSSH против SSH

Level of difficultyMedium
Reading time6 min
Views11K

Рис. 1. Разные реализации SSH, источник: Shodan

Формально протокол SSH определён в ряде стандартов RFC (список ниже). В то же время есть много реализаций этого протокола. OpenSSH — самая популярная из них, хотя не единственная. Например, вот альтернативная реализация SSH на Goнесколько примеров кастомных серверов на её основе). По статистике Shodan, вторым по популярности демоном SSH является Dropbear SSH (рис. 1). Все остальные далеко позади, если судить по количеству адресов на порту 22.

На практике спецификации OpenSSH содержат в себе все стандарты RFC для SSH, включая черновики, а также немножко сверх этого.
Читать дальше →

Сисадмин 2023: когда будущее наступило прямо на тебя

Level of difficultyEasy
Reading time6 min
Views30K
С Днём системного администратора!

Мне недавно удалось побывать на детской технологической лекции, в середине которой лектор стал спрашивать у подростков, кем они хотят быть. Среди геймдизайнеров, программистов, врачей (всегда в топе!) девочка гордо и почти грозно сказала, что хочет быть сисадмином. На удивлённый вопрос: «почему?», она выдала микролекцию о том, насколько волшебны…сетевые протоколы. Понятно, что она ещё проживает период романтизации профессии и ей важно «сообщать людей», но сам факт внимания к профессии весьма показателен. И он точно не мог случиться каких-то 7-10 лет назад.


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

Вам нужно увеличить RAM и перейти на SSD…

Level of difficultyEasy
Reading time6 min
Views32K
…если вы всё ещё не сделали это.


Задумывались ли вы, хватает ли вашему компьютеру, локальному или удалённому серверу оперативной памяти? Задумывались, но не знаете, как это определить? А накопители какого типа вы предпочитаете? Надеемся, данная статья поможет вам в этом разобраться.
Читать дальше →

Новая жизнь советского джойстика

Level of difficultyEasy
Reading time16 min
Views8.6K

Так получилось, что уже долгое время в моей рабочей зоне лежал отечественный джойстик типа «джойстик», а точнее даже целый «игровой манипулятор», Веста ИМ-01. Маленький и симпатичный, подозрительно напоминающий джойстик ProLine для Atari 7800, он достался мне в комплекте с одним из приобретённых в начале года Спектрумов, и с тех пор периодически мозолил глаза, вызывая вопрос — что бы с ним сделать? У меня уже есть такой же в коллекционном состоянии, этот же немного повидал виды, и его не особо жалко перепрофилировать под какие-нибудь интересные нужды. Можно было бы приспособить его для клонов Atari 2600, которых у меня чуть больше, чем джойстиков к ним, но это же скучно.

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

Суть проекта: простейшая самодельная игровая приставка для телевизора, встроенная в корпус классического джойстика.
Читать дальше →

От Ericsson к WhatsApp: история Erlang

Level of difficultyEasy
Reading time12 min
Views10K

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

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

Речь идёт о языке программирования Erlang.
Читать дальше →

Information

Rating
Does not participate
Location
Россия
Works in
Registered
Activity