Мы недавно объявили, что WunderGraph теперь полностью открыт в исходном коде. Сегодня мы хотели бы объяснить, как вы можете использовать нашу платформу для разработчиков API, чтобы добавить кэширование на уровне Edge в ваши GraphQL API, не привязывая себя к конкретному поставщику.
Пользователь
Сам себе экосистема. Часть 4: как я реализовал клиент Telegram на Android-смартфоне 14-летней давности?
С момента выхода первой части статьи из рубрики «сам себе экосистема» прошёл уже практически год! За это время, мы успели с вами реализовать клиенты VK и YouTube, которые работают на Android 2.2+, а также на Windows Phone 8, написать небольшую 2D-игру с нуля весом менее 1Мб, которая работает практически везде и довести существующее приложение до ума, дабы оно работало даже на смартфоне с дисплеем 240x320! Но на дворе 2024 год, люди стремительно переходят из соц. сетей в продвинутые мессенджеры и уже сложно себе представить современного человека, который не пользовался бы «телегой» или даже «вайбером» в качестве основного средства общения. Поэтому я решил реализовать клиент Telegram на смартфоне 14-летней давности на базе официальной реализации MTProto от команды Telegram — TDLib. Сегодня мы с вами: узнаем новые причины мотивации вернуть в строй смартфоны прошлых лет, напишем на C# реле-сервер, который обрабатывает пакеты MTProto и кодирует их в простой текстовый формат датасетов, который можно моментально обработать даже при нестабильном GPRS-соединении на 21-летнем Siemens C60, а также узнаем о разработке миниатюрных Android-приложений на базе «голого» API-системы, которые не тянут за собой никаких зависимостей, в том числе и AppCompat/androidx. Интересно? Тогда жду вас под катом!
Пишем чат-бот для работы с PDF
Популярность языковых моделей, в частности ChatGPT, растет в геометрической прогрессии, но многие из нас все еще сталкивается с определенными ограничениями, такими как устаревшая информация, которые OpenAI пока что не смогла преодолеть.
Но задумывались вы над тем, чтобы задавать вопросы непосредственно из своих документов, хранящихся в облаке? Сохраните своё время, которое уходило бы на поиски и ручной мониторинг сайтов, и задействуйте автоматизацию при работе с PDF-документами. Если вас занимает такая перспектива, эта статья окажется для вас ценным ресурсом.
Мы можем избежать риска недостоверных данных в ChatGPT, внедрив работу модели через RAG. В нашем материале мы подробно объясним, как создать чат-бота для взаимодействия с документами из вашего хранилища с помощью LangChain.
Приступим (:
Wubuntu: Linux с интерфейсом Windows 11 и возможностью запускать «виндовый» софт. А ещё и Windows 95
Дистрибутивов Linux достаточно много — на любой запрос, вероятно, можно найти подходящий вариант. Не так давно появился ещё один дистрибутив, который внешне является почти полной копией Windows 11. Также он способен запускать Windows-программы и работает на относительно старых компьютерах и ноутбуках. Называется он Wubuntu, и подробности о нём — под катом.
Оранжевый k8s кластер на ладони
Сначала у меня появилась Orange Pi Zero 2 W, на пробу. Под планируемые задачи она не подошла, но 4 ядра и 4G памяти и размеры понравилось. Так же понравился Type-C и WiFi из коробки. Потом я вспомнил что давно хотелось just for fun попробовать собрать кубер на одноплатниках, а такой объём памяти и ядер уже даже позволяет идее иметь некоторый смысл. При этом wifi позволяет сделать кластер максимально без проводным, а размер позволяет соорудить кубический куб на ладони. И сегодня идея материализовалась.
Total.js и интеграция с ИИ
Динамика приложений с искусственным интеллектом продолжает сеять вопросы по выбору “удачного” фреймворка, который мы могли бы использовать при создании. Поскольку именно от нашего выбора в принципе и зависит продолжительность жизни нашего детища.
В этой статье я бы хотела обратиться к одному старенькому фрейморку, рассмотреть его особенности и фичи, которые способные выделить его на фоне другого софта. Так ли он хорош? А если хорош, то почему?
Не буду затягивать с буквами во вступлении и предлагаю перейти сразу к делу!
Приятного прочтения(:
Orange Pi Zero 2W: конкурент «малинки» из Китая. На что он способен?
«Убийц» Raspberry Pi создают едва ли не каждый месяц. В итоге «малинка» все равно остается одним из наиболее популярных в мире одноплатников, причем практически любая модель. Но в некоторых случаях сторонние производители выпускают действительно удачных конкурентов. Одним из них является и Orange Pi Zero 2W, появившиеся совсем недавно. О нем и его возможностях сегодня и поговорим.
Как создать shader в Flutter для эффектной анимации в приложении?
Hola, Amigos! Меня зовут Сергей Климович, я Mobile Team Lead агентства заказной разработки Amiga. В мире мобильной разработки Flutter выделяется своей гибкостью и простотой в создании красивых пользовательских интерфейсов. Однако, чтобы добавить дополнительные визуальные эффекты и повысить уровень графической привлекательности приложения, иногда необходимо выходить за рамки стандартных возможностей. И здесь на сцену выходят шейдеры.
Краткий обзор TinyML
TinyML сам по себе означает внедрение ml в маломощные микроконтроллеры и встроенные системы. Это устройствам IoT выполнять задачи обработки данных и машинного обучения непосредственно на самом устройстве, минимизируя таким образом необходимость в постоянном подключении к интернету или внешним вычислительным ресурсам. Основная цель TinyML - сделать ии или простые модельки доступным для самых маленьких устройств
Разбираем самый маленький JPEG в мире
Недавно на Хабре была опубликована статья Разбираем самый маленький PNG в мире. Интересно, а какой самый маленький файл JPEG? В ответах на StackOverflow и Reddit можно встретить размеры 107, 119, 125, 134, 141, 160 байтов. Все они представляют серый прямоугольник 1 на 1. И кто прав? Все правы, просто такая разница объясняется различными режимами кодирования и степенью строгости соответствия стандарту. Описание всех нюансов разрослось до целой статьи cо всеми необходимыми подробностями для более-менее хорошего знакомства с самыми маленькими jpeg-ами. После краткой теории разберем 159-байтный файл на КДПВ, а затем рассмотрим способы его уменьшения.
Реализация чата на Flutter при помощи вебсокетов
Всем привет, на связи PurplePlane! В этой статья мы хотели бы рассмотреть реализацию простого чата на языке Dart, используя пртокол websocket.
Рассмотрим пример использования вебсокета при реализации простого чата с помощью библиотеки web_socket_channel.
Бесплатные курсы по большим языковым моделям для дата-сайентистов
Большие языковые модели предоставляют широкий спектр возможностей для различных задач и приложений. Они могут быть использованы для создания чат-ботов, голосовых помощников, автоматического редактирования текста, генерации субтитров и многое другое. Обучение этих моделей в 2024 году позволит расширить их функциональность и применимость.
В этой статье мы рассмотрим лучшие бесплатные курсы по большим языковым моделям в 2024 году, которые помогут вам освоить эту увлекательную область и раскрыть свой потенциал в мире искусственного интеллекта.
Способы монетизации телеграм-бота: как зарабатывать с помощью своего бота
Телеграм-боты стали неотъемлемой частью мессенджера Telegram, предоставляя пользователем широкий спектр услуг и развлечений. Однако, помимо удовлетворения потребностей пользователей, телеграм-боты могут стать источником дохода для их создателей.
В этой статье я предлагаю обсудить различные варианты монетизации и определить варианты наиболее приемлемы для сторон.
Я все это примеряю на своего бота World_for_life_bot, который набрал уже несколько тысяч подписчиков и при этом является полностью бесплатным. Но мне будет очень интересен ваш опыт в старте монетизации.
Учимся создавать простых ботов или туториал по библиотеке TeleBot
Начнем с того, что библиотек для разработки телегам-ботов на Python несколько, я упомяну основные три. В первой части статьи будет небольшой обзор этих библиотек (примеры кода тут будут для красоты, не пугайтесь, ниже будет пошаговый Гайд по одной конкретной библиотеке), потом комментарий о том, какую стоит выбрать для разработки конкретно своего бота и подробное руководство для новичков по разработке бота с разбором каждой строчки кода.
Разбираем самый маленький PNG в мире
Самый миниатюрный PNG в мире весит 67 байт и представляет собой один чёрный пиксель. Выше вы видите его в 200-кратном увеличении.
Красота, не так ли?
Состоит этот файл из четырёх частей:
- Сигнатура PNG, одинаковая во всех файлах этого формата: 8 байт.
- Метаданные изображения, включая его размеры: 25 байт.
- Данные пикселя: 22 байта.
- Маркер «конец изображения»: 12 байт.
Далее я опишу этот файл подробнее и постараюсь объяснить принцип работы формата PNG.
В качестве небольшой затравки скажу, что в конце предстоит неожиданный поворот. Хотя, надеюсь, вам и без того интересно побольше узнать о PNG.
ASSA ABLOY ушла из России, чем заменить?
Массовый исход западных брендов из России затронул и индустрию технических систем безопасности. Это породило массу вопросов, от вопросов ремонта и обслуживания до целесообразности использования оборудования после ухода компании с российского рынка.
ASSA ABLOY пример иллюстративный, компания один из явных мировых лидеров рынка систем контроля и управления доступом, c гигантским ассортиментом. Тем интереснее будет рассмотреть этот кейс. В том смысле, что есть ли замены на российском рынке, насколько они полноценны.
Статический сайт на AWS с редиректом http→https, www.site→site
Задача
Есть AWS аккаунт, на котором требуется поднять статический сайт (html, js, css, png, jpg) на своём домене example.com.
Ссылки: http://example.com, http://www.example.com, https://www.example.com должны перенаправлять на основной сайт https://example.com.
План действий
Покупка домена.
Выпуск SSL сертификата.
Заливка файлов html, js, css в S3.
Создание двух CloudFront distributions (основного и для редиректа с www).
Привязка CloudFront функции редиректа к CloudFront distribution.
Создание A-записей в DNS.
Торговый бот на Python с нуля (с использованием Binance API), часть 2
Продолжение первой части статьи о создании торгового бота на python
с нуля с использованием Binance API!
В данной статье мы напишем полностью рабочую реальную стратегию с использованием биржевых данных. Я расскажу что такое линии Боллинджера, а также о других популярных стратегиях. Мы подробно разберем реализацию стратегии Боллинджера на python
, и напишем production-ready код!
Знакомство с WebTransport API
Hello world!
На днях я прочитал статью о WebTransport API как будущей альтернативе или даже замене WebSockets. Мне стало интересно, что это такое и с чем его едят. Давайте разбираться вместе.
Современный С++ в разработке девайсов
Привет, Хабр.
Меня зовут Андрей Белобров. Я тимлид одной из команд, разрабатывающих приложения для умных девайсов Сбера.
На прошедшей недавно конференции Салют, OS DevConf! я выступил с докладом, в котором рассказал, как мы с командой разрабатываем приложения на С++ для умных устройств с виртуальным ассистентом. А также о том, как инструменты статического и динамического анализа помогают поддерживать единый стиль и высокое качество кода в проекте.
Во время доклада меня попросили подробнее описать детали нашего подхода в статье, поэтому рад поделиться с вами расширенной текстовой версией.
Все наши устройства должны уметь взаимодействовать c виртуальным ассистентом, проигрывать музыку, обновлять прошивку, выполнять аутентификацию пользователя и т.д.. Такая функциональность реализована в едином для всех платформ приложении, работающем в пользовательском режиме на каждом из наших устройств, будь то умная колонка, ТВ-приставка или умный телевизор.
Язык С++ позволяет писать эффективный и переносимый между различными платформами код, поэтому выбор языка программирования для нашего приложения был очевиден. При этом язык известен своей сложностью и возможностью выполнить одну и ту же задачу несколькими способами.
Чтобы успешно разрабатывать большой проект на языке C++, необходимо хорошо настроить процесс разработки в команде (а это несколько десятков инженеров). Также можно значительно осовременить разработку на C++ за счет использования подходящих инструментов статического и динамического анализа, и правильной интеграции их в процесс разработки.
Информация
- В рейтинге
- Не участвует
- Зарегистрирован
- Активность