Задать вопрос
  • Что более надежное VNC и RDP?

    @rPman
    VNC и RDP кардинально разные технологи, первая предназначена для трансляции консоли машины (буквально, то что подключено к монитору и клавиатуре с мышкой) а вторая - для множественных подключений к серверу, с симуляцией консоли (т.е. не настоящий монитор, клавиатура и мышка). В десктопных ревизиях windows rdp кастрирован и лимитирован только физической консолью.

    Второе различие качестве реализации, vnc (и всякие anydesk/teamviewer/steam remote/.., основанные фактически на том же) транслируют содержимое экрана без привязки к его обновлениям (с оговорками), когда как rdp в основе своей работает с фактическими обновлениями win32 gdi (правда там наплодили версий и последние серверные могут гораздо больше чем просто их трансляция), в результате на слабых линиях связи и не графических приложений (перерисовывающих весь экран постоянно) rdp может оказаться отзывчивее чем vnc... с другой стороны какой-нибудь steam remote при хорошей ширине канала и низким пингом даст будет эффективнее и менее лагучий для сложных приложений.

    Теперь по поводу надежности - очень важно, настраивать инфраструктуру максимально защищенной и отделенной от интернета какой-нибудь специализированной прослойкой, типа VPN или ssh (например в linux x2go из коробки работает с ssh), любой сервис, открытый в интернет без защиты - это +1 к уязвимости, еще одна вероятность появиться багу и дополнительное время на ожидание его закрытия.

    p.s. rdp в windows очень лакомный кусочек для хакеров, а зная как майкрософт лажает из года в год, ставить на то что это будет надежно я бы не рекомендовал.
    С другой стороны у vnc тьма реализаций (приложений клиент и сервер), и скорость исправления багов (и ответственность за это) в них значительно ниже чем у майкрософта.

    поэтому поставь vpn по надежнее
    Ответ написан
    1 комментарий
  • Разделение ответственности или производительность?

    @rPman
    Дублируй, это не недостаток, а прямое следствие оптимизации
    Ответ написан
    Комментировать
  • Какими из этих трех искробезопасных реле (преобразователь сигналов) можно закрывать и открывать задвижку?

    @rPman
    один из вариантов - реле внутри герметичного корпуса, да еще и газ какой-нибудь типа аргона (но это оверкил, дешевле полупроводниковый использовать)
    Ответ написан
    Комментировать
  • Как ввести логин в окно входа в Steam?

    @rPman
    Потому что твой xpath явно неверный (ты не указал весь код)
    <input type="text" class="newlogindialog_TextInput_2eKVn" value="">
    ...
    <input type="password" class="newlogindialog_TextInput_2eKVn" value="">

    Правильно - ищешь все input без фильтра и каждый проверяешь на подстроку в названии класса и значение type, еще можно искать по координатам, запрашивая у каждого getBoundingClientRect, пропуская заодно с нулевым размером
    Ответ написан
  • Возможно ли эмулировать данные о компьютере отдельно для определённой программы?

    @rPman
    процессор, в принципе железо, ОС, и так далее
    без использования виртуальных машин это будет невозможно, это и есть основное их назначение.

    еще такой софт называют гипервизор, и специалисты могут запилить специализированный (на одну маленькую функцию типа подмена id) очень маленький, влезающий к примеру в биос материнской платы (так пилят трояны, заражающие биос и ничем больше не вычищаемые кроме выпаивания микросхемы)
    Ответ написан
    Комментировать
  • Возможно ли получать сообщения из телеграм канала в другое приложение?

    @rPman
    Свое приложение, некоторые довольствуются сырыми http запросами api telegram.

    Нужно различать разные типы сущностей в телеграм:
    1. бот
    2. канал - это поток сообщений от имени аккаунта канала
    3. группа - это чат, в котором могут общаться другие участники (возможны выверты когда забанены все кроме админа)
    4... есть еще приватные чаты, субгруппы, чаты сообщений канала, группы разного уровня объема (они по разному мониторятся, точнее так было раньше, возможно сейчас все свели к одному)

    У тебя 2 подхода:
    1. официальный, у тебя должен быть бот, который ты добавляешь на группу (только туда и как админа) как участника и он мониторит сообщения пользователей
    2. неофициальный, используя библиотеки (их десятки) симулирующие работу полноценного клиента

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

    Посмотри например python-telegram, примеры вполне понятные даже тем кто питон в первые в жизни видит

    p.s. ну на go еще есть, неожидал что есть активность в репозитории для php и т.п. ищи там по тегам telegram-api, mtproto-api или tglib
    Ответ написан
    Комментировать
  • Может ли слететь биос после переноса системы в другой корпус?

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

    Есть ещё один кандидат на проверку - это блок питания.

    Лучший способ это проверить, отнести в ремонт на диагностику, стоит обычно это пару сотен рублей.
    Ответ написан
  • Как из любой точки мира передать сообщение на ESP32 или любую ардуинку без установления подключения?

    @rPman
    в чем заключается вопрос то? указанной информации не хватит для ответа.

    Либо ты устанавливаешь посредника между твоим устройством и интернетом, чтобы физически между ними было какое то подключение (например компьютер, к которому устройство подключается например по usb/com/lpt/ir), либо снабжаешь свое устройство модулем ethernet/wifi/мобильные сети и, в зависимости от выбранного стандарта, реализуешь в прошивке необходимый фунукционал.

    Первое очевидно дороже но у тебя огромный простор в выборе форматов коммуникации, так как компьютер мощнее, позволяет настроить защиту от ddos и есть большое количество готового кода, второе сложнее (и занимает заметное количество ресурсов) и ограничивает общение самыми простыми протоколами, даже просто http запрос реализовывать заметно сложно.

    p.s. напоминаю, что выпускать в интернет порты, обслуживаемые слабым оборудованием, не способным противостоять минимальным ddos, глупо.
    Ответ написан
    Комментировать
  • Что будет, если включить ScrollLock?

    @rPman
    win32 api DeviceIoControl IOCTL_KEYBOARD_SET_INDICATORS

    нашел тут

    p.s. майкрософт лет 10 назад сломало документацию, я точно помню когда смотрел в похожих ситуациях, там на странице была информация о методах где используется константа, примеры использования и т.п., а теперь без вспомогательной информации понять как этим пользоваться невозможно.
    Ответ написан
    5 комментариев
  • Собственное поле для ввода на чистом JavaScript?

    @rPman
    Первый же запрос в гугл выдал
    Очевидно свой input потребует закодировать огромное количество ситуаций, выделение в т.ч. по дабл- и трипл-клику, вставка через буфер, работу с правосторонними шрифтами и вообще мультиязычная поддержка это ад (невидимые символы, меняющие поведение)
    Ответ написан
    Комментировать
  • Почему не открываются программы?

    @rPman
    Если проблема возникает сразу после установки из официального репозитария, то это уже повод бить тревогу (что то с железом? но слишком специфическая ошибка)

    Наибольшая вероятность - вирус, причем написанный с ошибкой (не все вирусы обнаруживаются антивирусами).

    И еще момент, даже если 'ничего левого не качать', вирус/троян может проникать из локальной сети 'провайдера' при использовании слабых паролей на машине (типа admin/12345678) и отключенном фаерволе. Вирус может быть запущен просто с флешки или соседнего диска (на сколько я помню действие по умолчанию все еще запуск приложения, прописанного в autorun.inf)

    ну и самое главное, 'левое' у каждого это разное, нужно понять, после установки какого приложения происходит поломка файлов, и исключить его из установки в следующий раз, выявить это сложно но реально, делать все в виртуальной машине, создавая снапшот перед установкой каждого следующего приложения
    Ответ написан
    Комментировать
  • Как показывать рекламу только для тех кто заходит через Wifi?

    @rPman
    Что такое 'заходит через Wifi'? если я расшарил свое мобильное соединение по wifi, то все кто его используют уже должны смотреть рекламу?

    Без установки специализированного по на устройстве раздачи интернета по wifi, определить этот факт будет очень сложно (но есть хаки, если не использовать https, то можно просканировать локальную сеть на javascipt, открывая что то типа http://192.168.0.1 и попытаться измерить скорость до роутера, в 99% случаев ip адрес которого известен).
    Ответ написан
    Комментировать
  • Где достать словарь с городами и регионами на русском и английском языках?

    @rPman
    Первый же из гугла не подходит?
    Ответ написан
    Комментировать
  • Как реализовать бэкап сайта/бд посредством PHP?

    @rPman
    Суточного бакапа тебе будет достаточно? Если в момент смерти сайта ты сможешь восстановить только 'вчерашнюю' копию, с потерей всех сегодняшних изменений и данных?

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

    Чтобы решить эти проблемы используют снапшоты, на выбор - либо на уровне виртуальной машины (если она используется либо у провайдера), либо разделов (например если используется lvm), либо файловой системы (если используется btrfs/zfs/ntfs, с оговорками).

    Перед резервным копированием делают снапшот файловой системы, замораживая ее состояние, делают копирование, после чего снапшот удаляют/отключают. Самые быстрые снапшоты на основе файловой системы и у виртуальной машины (правда некоторые делают это вместе с оперативной памятью, что медленнее).

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

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

    Ну и конечно есть механизмы онлайн резервирования целой виртуальной машины, когда за резервирование системы в целом отвечает вииртуализация (заранее построенный отказоустойчивый распределенный кластер), возможно создание такой системы, что в момент сбоя даже не перестанет работать приложение, оно прозрачно и оперативно переедет на другую ноду в крастере.
    Ответ написан
    Комментировать
  • Есть ли нейросеть, которая выявляет закономерность?

    @rPman
    Есть открытые сетки, созданные исследователями, для получения информации об изображении (в т.ч. обратное миджорней), выглядит это либо на вход подается изображение, на выход в каком то виде либо список наименований объектов (видел проект где прямо с координатами и даже контурами) либо можно делать запрос к изображению - есть ли на нем такой то объект соответствующий тексту (а там может быть к примеру - 'девушка плачет'). Очень много выкладывает в опенсорс фейсбук.

    Искать например на huggingface

    Так же есть сети, выявляющие очень качественно контур объектов, если все это соединить, можно неплохо разобрать изображение на составляющее, как угодно это все переставлять, а с помощью stable diffusion painting собирать из кусков изображение, дополнив его текстом.

    Вот например
    Ответ написан
    Комментировать
  • Какую базу данных выбрать для поисковой системы?

    @rPman
    Все зависит от планируемых размеров (пределы) базы данных, т.е. количества данных, которые необходимо индексировать. Если нужно считанные десятки тысяч сайтов отслеживать, хватит абсолютно любой sql базы данных, миллионы страниц и fulltext индексы хоть postgres хоть mysql хоть самописные на файлах (пока индексы влезают в оперативную память).

    Проблемы начинаются когда индексы не влезают в оперативную память, когда база данных расползается по кластеру или когда скоростей интернет провайдера уже не хватает для прохода обновления базы поисковой системы и данные в поиске становятся неактуальными. Начиная с какого то (большого) объема данных, простого поиска по ключевым словам уже будет недостаточно. А чего стоят алгоритмы ранжирования (сортировки результата), ведь на любой запрос у тебя будет больше чем десяток страниц результатов. Потом борьба с сеошниками, фейковыми зонами интернета (когда сайты генерируют терабайты мусорных данных, и узнаешь ты про них когда место на диске кончится или процент их содержания в индексе превысит половину), интеллектуальная интерпретация данных (с этого в принципе нужно начинать, когда страница должна восприниматься не как просто текстовый документ, а набор информационных зон, их важность (реклама, навигация или статья), разделение (несколько статей на странице), проблема динамического интернета (благодаря 15-летним инструкциям люди до сих пор делают сайты в виде ленты с постраничной навигацией с конца, когда 10-ая страница уже завтра будет показывать не те статьи что были вчера) и вообще javascript в частности и тьма тьмущая других проблем.

    Конечно, можно шикануть и использовать последние веяния ИИ, когда по информационным блокам на странице, генерируются вектора, определяющие сам смысл содержания, такие, что можно искать по ним, вычисляя расстояние между ними и запросом пользователя, только когда осознаешь стоимость бота, который будет стороить такой индекс по страницам и проблемы монетизации результата, сразу передумаешь.
    Ответ написан
    1 комментарий
  • Нейросеть для получения информации из документа?

    @rPman
    нейросеть распознающую смысл текста
    на текущий момент этим занимаются Large Language Models, из открытых лучшие универсальные это opt и bloomz и они слабее даже llama но как основу их можно брать.

    Языковые модели fine-tuning на примерах (буквально, размечаешь десятки-сотни пар данных: текст - ответ), и затем такую обученную сеть или комбаин (есть peft, который позволяет тюнить не веса модели а веса запроса, я слушал лекцию от яндекса, ребята там говорили что это очень выгодно по ресурсам и удобно, не трогать веса модели).

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

    p.s. я пробовал на процессоре крутить llama и основанные на ней модели типа open assistent (не бери llm меньше 30B) для похожей задачи (объем документа ограничен 2к токенов, примерно 1.5к слов, можно многоуровневыми запросами сначала отвечать на вопросы по абзацам, а затем итоговую выжимку собирать и обрабатывать отдельным запросом), с ней работать очень сложно, ответы нужно предварительно чистить от мусора и разрабатывать условия окончания генерации (со стоп токенами там проблема) и работает на процессоре медленно (минуты на запрос) но это самое дешевое решение на текущий момент, доступное оффлайн в принципе, само собой без разрешения facebook пользоваться этим нелегально (как минимум не для исследования)
    Ответ написан
    Комментировать
  • Fine-tuning опенсорсного LLM новому языку?

    @rPman
    Опенсорс llm-ки из более менее нормальных это opt и bloomz, доступны на huggingface. По качеству они хуже llama, которая чуть чуть не дотягивает до chatgpt3.5. (по ссылкам информация как обучать, тюнить и использовать с примерами кода и датасеты)

    Fine-tuning не добавляет знаний llm-кам, а.в лучшем случае позволяет качественно научить ее пользоваться уже имеющимся (читай про reinforcement learning human feedback, это кстати не одна модель а несколько вспомогательных).

    Требования тут к железу относительно просты - объем видеопамяти суммарно должен вмещать всю модель плюс небольшой запас, без квантизации и 16битных float (сама модель часть весов может так хранить). Увеличивая объем видеопамяти можно значительно увеличить скорость обучения (так как это уменьшает объем передаваемых через cpu и pci-e данных), к сожалению я не нашел бенчмарков для конкретных цифр, а платить сотни баксов как то не охото, плюс бесконечно это не масштабируется (точнее скорее всего понадобится править код, т.е. нужны еще и редкие специалисты, которых как пылесосом за последние 10 лет высосали крупные компании и уже выращивают их самостоятельно, как это делает facebook)

    Есть ещё peft, позволяет тюнинг весов запроса, не трогая модель. Оно умеет работать с 8бит квантизацией (а значит 3х-4х кратно ниже требования к ram видеокарт), сам не пробовал.

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

    Но если хочешь этим заниматься готовь тысячи видеокарт, иначе процесс затянется на годы. Стоимость сам прикинь.
    Ответ написан
    Комментировать
  • Как запусить Steam на ubuntu 22.04?

    @rPman
    Не удалось получить https://repo.steampowered.com/steam/dists/stable/I... Не удалось соединиться с repo.steampowered.com:443 (104.17.242.61). - connect (111: В соединении отказано) Невозможно инициализировать соединение с repo.steampowered.com:443 (2606:4700::6811:f23d). - connect (101: Сеть недоступна)
    разберись со своим провайдером или настрой vpn/proxy туда где проблем с соединениями нет
    Ответ написан
  • Как решить капчу?

    @rPman
    Если там только такая капча то она легко решается

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

    По уму тут можно решать уравнение но кодить это сложнее чем решение перебором.
    Ответ написан
    Комментировать