• Как синхронизировать проекты между компьютерами?

    @rPman
    syncting или rsync (если подойдет ручное управление) и git (не смешивая их).

    syncting хорошо работает с большими данными и любыми схемами передачи данных (вплоть до источник -> смартфон пользователя offline, смартфон -> целевая машина, и так же обратно, т.е. без интернета)

    git - дисциплинирует ставить 'точки в правильных местах', т.е. вы работаете не абы как а до commit-а, даже если вы один работаете, это дает вам историю изменений, которая может и нужна очень редко, но метко.
    Ответ написан
    Комментировать
  • Как лучше спроектировать апи с большой нагрузкой?

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

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

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

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

    Настоятельно не советую городить зоопарк из разных баз данных типа редис и sql-db.. когда sql база используется без индексов (и тем более без транзакций) на последовательную запись у нее нет конкурентов (ну только что совсем низкоуровневым программированием заняться)
    Ответ написан
    3 комментария
  • Как сделать предпросмотр файлов word, pdf, img, txt в рамке прямо на сайте?

    @rPman
    Изображения и тексты это легко, у них 'простой' формат и реализовать все в браузере будет не сложно, а вот для предпросмотра документов word нужен собственно этот word, так как у него сложный формат (еще сложнее был бы excel).

    p.s. pdf

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

    @rPman
    а почему бы не объединить эти обе библиотеки в одну?
    зачем мельчить если они друг от друга зависят и так?
    Ответ написан
    Комментировать
  • Сравнение голосов - программы и нейросети - есть ли такие?

    @rPman
    https://huggingface.co/models?other=speaker-recognition как отправная точка для поиска готовых моделей (можно поиграть с поисковым запросом)
    Ответ написан
    1 комментарий
  • Мне подарил мой товарищ лаптоп Каким образом не заметно для меня он бы мог следить за мной?

    @rPman
    Аппаратный способ лучше всего, самый простой это usb симулятор клавиатуры, такой на ардуино сделает любой железячник (вопрос как к этому симуляторы подключается злоумышленник но есть варианты...), в нужный момент такой жучок может набить целый троян (например на wsh js или .net js#/c#), открыв блокнот в момент бездействия пользователя.

    Бывает внутри ноутбука много свободного места, а жучок - плата в пару сантиметров.
    Ответ написан
    Комментировать
  • Почему рекомендуется использовать private а не просто ставить везде Public?

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

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

    Тупой пример с координатами персонажа... делаешь эти переменные приватными, и оформляешь методы 'бег вперед', 'поворот' и т.п. а значит снаружи у тебя не будет чего то типа object.pos_x+=object.speed_x а будет object.moveRight().
    Ответ написан
    Комментировать
  • Возможно ли использовать модель LLAMA-405B на обычном железе 64GB + 8GB?

    @rPman
    Да, уже считал, и это действительно реально, с относительно небольшими затратами (16-20т.р.) если тебя устроит скорость исполнения в 15-30 секунд на токен (на твоем железе llama31-70b на процессоре и 64гб оперативке будет работать токен в 1-1.5 секунд).

    Необходимо собрать самый дешевый pcie nvme ssd программный raid0, купив контроллер pcie-x16 3.0 или 4.0 из четырех разъемов nvme либо четыре pcie-4x дешевых 3.0 и закупить самые дешевые nvme ssd диски от 128гб (со скоростями чтения от 2гбайт/сек).

    Затем собрать из них raid0 с чередованием (win/linux это поддерживают) и разместить на нем gguf файл. llama.cpp поддерживает загрузку файла с весами с диска, без выделения оперативной памяти (но она нужна на контекстное окно, в зависимости от его размера это будут десятки гигабайт). Файл будет считываться по кругу целиком, по разу на токен, а значит скорость будет определяться именно этим. 2гб/с*4 диска = 8гб/с, 256гб 4бит квантизация будет считываться за 32 секунды.

    Есть еще ограничения в скорости исполнения из-за процессора, но по уму, если бы была оперативная память то типовой десктопный процессор работал бы на скорости 15-20 секунд на токен.
    Ответ написан
    7 комментариев
  • Как залить большой файл sql в базу?

    @rPman
    Телепатствую.

    Главная причина, чаще всего, это не отключенные индексы, запись в таблицу с ними это n*log(n), а без индексов это n или даже log(n).

    Раздели sql на место создания структуры и импорт данных. Замени код создания структуры на такой, чтобы таблицы создавались без индексов, и отдельно создание этих индексов уже после (автоматизировать это не сложно, но чтобы так с ходу найти готовый код я не найду).

    Отдельно в sql коде можно расставить commit через некоторое количество (десятки тысяч +-) insert-ов, что бы лог не переполнялся.

    Следующий вариант - оптимизация дисковой записи, найди способ принудительно включить lazy writes на диске с базой, например с помощью виртуализации или хотя бы ext4 опция data writeback. Внимание! в этом режиме любая проблема с ос (например отключили питание) испортит данные. Т.е. на время импорта создай файловую систему для таблиц отдельно, потом данные тупо скопируешь. Но если у тебя норм ssd или дисковый контроллер с хорошим кешем, то это не актуально.

    И если говорить об самым экстремально большом ускорении, размести файлы базы в tmpfs (оперативка, сотня гигабайт сейчас даже дома не проблема)... Можно для этого арендовать в облаке vps-ку, но желательно в этом же датацентре, а то копировать сотню гигабайт может быть долго. И да, следи за тем что бы была та же архитектура процессора и версия mysql
    Ответ написан
    Комментировать
  • Какой бтс кошелек поддерживает импорт приватного ключа?

    @rPman
    Electrum умеет, при создании нового кошелька он спросит какой тип кошелька выбрать, насколько лет назад там прекратили поддержку смешанных кошельков, т е. либо импорт приватников либо Сид.
    Ответ написан
    Комментировать
  • Как стать провайдером через VDS/VPS?

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

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

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

    p.s. Учтите, что предоставлять услуги выхода в интернет без лицензии (точнее разрешения от госсударства) - запрещено и вы можете понести наказание (штрафы от 1т.р. до 300т.р. и даже наказание лишение свободы до 6 месяцев, уточните текущее состояние законодательства)

    p.p.s. Учтите, что тот, кто заключит договор подключения к интернету, будет нести ответственность за действия остальных (если использовать vps то определять правила и наказывать будут в той стране, где запущен этот vps).
    Ответ написан
    5 комментариев
  • Влияет ли на общую скорость сети?

    @rPman
    Все зависит от того, что стоит на маршрутизаторах, которые подключены на разных концах радиомоста.

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

    Условный пример, один клиент с torrent, с настройками по умолчанию (100 одновременных подключений) легко загрузит канал на 99%, и не важно, что у тебя еще 100 клиентов, все остальные будут ждать когда он загрузит свой файл (а еще раздача так же будет канал занимать)

    Чтобы было справедливо, нужно настраивать какое то лимитирование и резервирование канала на одном из маршрутизаторов
    Ответ написан
  • Подозрительное сообщение от неизвестного отправителя, которое невозможно удалить. Что это?

    @rPman
    Если симку вставить в другой смартфон, будет так же?
    Советую спросить от этом своего сотового оператора
    Ответ написан
  • Может ли нейросеть определить на изображении отсутствие всех объектов, кроме одного?

    @rPman
    У нейроситей коассификаторов, тех что используют для распознавания изображений не очень хорошо с понятием 'неизвестно' или 'все остальное'. Сеть должна при обучении видеть все объекты... Если с этим все нормально то можно обучить такой классификатор... Я принципы и методология вся та же самая
    Ответ написан
    Комментировать
  • Как называется слайсер с возможностью разделения?

    @rPman
    Мне кажется из открытых и многофункциональных слайсеров есть только cura и slic3r (он заброшен) и миллион его форков (prusa/orca/...) все остальные либо лимитированы в функционале одним типом принтера, так как выпускались под него либо просто в забвении, потому что проприетарные.

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

    p.s. извиняюсь, я изучал только слайсеры fdm печати, а если у тебя речь идет о sla/sls принтерах, то я хз.
    Ответ написан
    Комментировать
  • 10к строк по базе размером 500кк?

    @rPman
    Избавляйся от like '%...%', это худший способ искать, он индексы не использует
    даже поиск с регулярными выражениями работает лучше (правда там лимит на размер строки)

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

    @rPman
    Скачай майкрософтовский sysinternals autoruns и вдумчиво изучи все что там прописано в автозагрузку. Так же изучи все задачи в task scheduler (в пуск - служебные) там много майкрософтовской телеметрии но чужие видно сразу.
    Ответ написан
    Комментировать
  • Какая нейросеть умеет в веб-дизайн?

    @rPman
    Адекватных и универсальных мультимодальных ИИ (с модальностью - изображения) на текущий момент не существует.

    С очень большой натяжкой можно считать топовые openai/claude/google/(может китайский qwen но они совсем внизу), с поддержкой изображений подходящими, в интернете даже гуглятся тестовые helloworld, но проблема в том что когда доходишь до реального использования, сил на то чтобы объяснить ИИ что тебе нужно и исправлять его ошибки уходит БОЛЬШЕ чем если бы ты делал это сам.

    ИИ на текущий момент подходит как удобный помощник, делать что-либо что ты сам умеешь прекрасно делать, понимаешь как это понимает ИИ (мы в голове строим модель знаний нашего собеседника, чтобы не скатываться в объяснения алфавита, так вот то же самое и с ИИ, мы должны понимать что они понимают и до какой степени) и используешь его для ускорения./. плюс как замена поисковика (только не по всему интернету, а в пределах его знаний, очень мало какие продукты дают адекватный поиск в интернете).
    Ответ написан
    Комментировать
  • Как правильно использовать python скрипт через PHP backend?

    @rPman
    В общем случае технологии называются Interprocess communication.

    Изначально предлагались (php/python) механизмы очереди сообщений, shared memory и semaphores, как минимум на их основе делают высокоуровневые библиотеки по работе с сообщениями (и используют именно их, а не низкоуровневые, но знать про них обязан каждый, чтобы понимать недостатки)

    Второе и самое логичное, использовать socket-ы, как unix socket или pipes, так и tcp. Многие не заморачиваются, а поднимают полноценный асинхронный http сервер и организуют общение между приложениями по http или лучше websocket протоколу, так как это позволяет распределить приложения уже не в пределах одного сервера, а в сети, что дает очень высокую гибкость, но ценой значительных накладных расходов на сериализацию.

    Правда если используются разные языки программирования, в которых разные форматы для структур данных, так же придется сериализовать структуры, т.е. память копировать и кодировать/декодировать.
    Ответ написан
    2 комментария
  • Как подключаться без подтверждения и управлять Android Tv удалённо?

    @rPman
    2. Телевизор должен принимать подключение находясь в режиме "Кабельное ТВ" и переключаться в оболочку Android TV.
    боюсь это условие исключает решение только средствами самого телевизора, так как эти разные режимы обычно реализуют на аппаратном уровне, т.е. пока работает кабельное ТВ, android тупо не запущен или спит.

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

    p.s. как дешевая альтернатива, покупаешь совместимый пульт, разбираешь, 'нажимаешь кнопку' любым самым дешевым компьютером (например на базе платы от роутера или платы сетевой веб камеры, а если есть управление заслонкой ИК фильтра, то этот соленоид можно буквально на кнопку направить, т.е. даже паять ничего не придется и прошивки менять тоже, так как управление шторкой из веб интерфейса камеры) и закрепляешь его механически так чтобы он всегда 'смотрел' на телевизор. Решение слишком колхозное но максимально простое для реализации и очень дешевое.
    Ответ написан