Задать вопрос
  • Как повторить post запрос в Firefox?

    @rPman
    в консоли разработчика -> сеть -> нужный запрос, правая кнопка мыши, копировать как curl

    Получишь команду вызова консольного curl, полностью повторяющее запрос (очень редко когда детектируют, через особенности ssl, были тут вопросы про это)

    Но нужно понимать, что если разработчик сайта хочет запретить автоматизацию, он может потребовать к каждому запросу прикреплять особые значения полей, которые каким-то образом вычисляются на javascript, поэтому их тоже придется анализировать и симулировать
    Ответ написан
  • Как узнать из-за чего прерывается фоновый процесс запущенный через exec?

    @rPman
    Тут только остается заполнять test.php выводом отладочной информацией, добавляя после каждого вывода fflush или аналог (как вариант, вывод логов в другое место, вплоть до БД).

    Без логирования есть еще вариант отладка в какой-нибудь среде разработки, но... вопрос а на домашнем компьютере все работает?
    Ответ написан
  • Как прогнозировать цены монет с помощью python?

    @rPman
    Говорят лучше всего в прогнозе работают алгоритмы на основе нейронных сетей.

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

    Отсюда вывод - нужны исторические данные, желательно годами, в идеале за все время.

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

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

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

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

    Ещё совет, не пытайся предсказывать только какой то однин инструмент/вылюту, работай сразу с несколькими, в идеале всеми.

    Ещё совет, изучай кросс курсы, когда совершаешь сделки парами, например есть usdeur и usdcny но нет eurcny, ты ее симулируешь путем одновременной купли продажи, учитывая спред и комиссии. Так же хорошо работают кросс сделки между рынком фьючерсов и прямым или между фьючерсами на разную дату экспирации... По факту твоя работа будет в изучении ликвидности рынков и принципиальной возможности совершить сделку по нужной тебе цене
    Ответ написан
    Комментировать
  • Как установить Windows 11 с Linux?

    @rPman
    Не уверен, но в режиме EFI под паролем биос не должен давать что-либо менять (добавлять новую ОС в загрузку), по крайней мере это была бы дырища, полностью убирающая смысл пароля.

    Но если у вас уже есть рабочий linux (достаточно grub) то с его помощью можно загружать уже установленный windows, добавив в меню что то типа такого (это пример для EFI режима):
    menuentry 'Windows' {
       insmod part_gpt
       search --fs-uuid --set=root $uuid
       chainloader /EFI/Microsoft/Boot/bootmgfw.efi
    }


    Но предварительно нужно установить windows, настроить boot.ini на правильный каталог и т.п. В принципе, с помощью virtualbox можно это сделать, предварительно осторожно подвигав разделы, но без знаний и опыта можно все сломать.

    p.s. ищите способ сброса пароля для биоса для своего ноутбука, и скорее всего без доступа к материнской плате это будет невозможно, иначе ну какой тогда смысл в паролях? Без адекватной возможности загрузиться со внешнего носителя у вас связаны руки.
    Ответ написан
    Комментировать
  • Как отдельным потоком постоянно отправлять сообщения в WebSocket клиенту?

    @rPman
    Для параллельных тяжелых вычислений нужно использовать воркеры или к примеру модуль child_process
    Ответ написан
    Комментировать
  • Кластеры и почему они не дешевые?

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

    Без четкого понимания как это работает, самостоятельно ничего не получится, советую изучить вопрос получше.

    И кстати, начинает нужно с четкого тз, что собственно хотите получить, какие задачи решаются, какие сценарии failure и т.п.

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

    upd. NAS тоже можно собрать на коленке из компьютера и linux, получите некоторую защиту от сбоящих дисков (особенно дешевых, у которых вероятность сбоя может быть порядка 5% за 3 года, что очень критично)
    Ответ написан
    3 комментария
  • Как скачать книгу в pdf?

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

    @rPman
    https://www.cpubenchmark.net/cpu.php?cpu=Intel+Cor...
    https://www.cpubenchmark.net/cpu.php?cpu=Intel+Cor...
    single thread performance увеличится с 878 до 1284 это 46%, ускорение заметное но только если предыдущее неудобство было именно из-за процессора (например время перекодирования видео, принципиальные проблемы с запуском какого-нибудь youtube и т.п.), а не из-за нехватки оперативной памяти и медленный диск.

    На практике наилучший прирост производительности пользователи ощущают после замены hdd на ssd и при увеличении оперативной памяти (если речь шла как у вас 4 -> 8)

    p.s. я сидел на похожей производительности процессоре, лагающие интерфейсы это неприятно, поэтому если есть возможность - апгрейдите и процессор.
    Ответ написан
    3 комментария
  • Как проверить доступность списка IP:Port из txt-файла?

    @rPman
    Обязательно на python?

    с помощью nmap можно проверить работает или нет, а с помощью parallel можно запускать одновременно несколько проверок (в данном пример он будет пытаться держать запущенными 10 nmap, по завершении одного, будет брать следующий ip:port и запускать новый экземпляр)
    parallel -j10 --colsep ':' '
        nmap_result=$(nmap -p {2} {1} | grep "open")
        if [ -n "$nmap_result" ]; then
            echo "{1}:{2} - OPEN" >> results.log
        else
            echo "{1}:{2} - CLOSED" >> results.log
        fi
    ' < servers.txt
    Ответ написан
    Комментировать
  • Возможно ли переписать это на PowerShell?

    @rPman
    В windows встроено (устанавливается из коробки) несколько языков программирования, начиная с javascript/vbasic в древнем windows scripting host (запускать программу в виде текстового файла .js или .vbs с помощь cscript.exe //nologo имя_файла.js) и заканчивая полноценного .net c#/vbs#/js# собираемого в .exe одной строчкой (никаких проектов, никаких студий, просто в редакторе пишешь код и запускаешь)

    Но люди продолжают ломать свои мозги, используя неадекватный ему инструмент что в windows (cmd и спасибо powershell лучше но все равно извращение, лучше он только потому что предоставляет больше доступа к windows-specific функционалу но не как язык программирования) так и в linux (когда я вижу, как люди в очередной раз пишут многостраничные простыни на bash чтобы работать с датами, вместо того чтобы написать код в пару строчек на python/php/..., мне становится грустно, куча всего в linux буквально написано на bash, поддерживать это неадекватное месиво ужасно.

    И да, я знаю, что бывает код на bash/powershell проще, но только потому что там уже есть решение проблемы, и весь этот код - просто способ описания этой проблемы.
    Ответ написан
    4 комментария
  • Как полностью очистить SSD?

    @rPman
    ssd диски (не при использовании через корявый usb контроллер) умеют операцию trim, которая 'безвозвратно удаляет' указанный сектор на диске, без затраты времени (весь диск будет очищен за секунды) и ресурсов ssd (ну ресурсы всегда тратятся, даже при обычном чтении, но тут наверное где то в тысячи раз слабее чем при записи)

    В linux для этого есть командная строка blkdiscard, в windows, при наличии драйверов на материнскую плату (в 8 и 10-ке они есть на все, да и в 7-ке я не видел таких случаев), достаточно выполнить оптимизацию (там же где дефрагментация) диска на отформатированном разделе, т.е. все свободное пространство будет очищено с помощью trim.

    Мало того, без каких либо телодвижений от пользователя, поддержка trim в windows 10 по умолчанию включена и выполняется фоном для всех не занятых секторов (из-за чего восстановление удаленных файлов становится маловероятным).
    Ответ написан
    Комментировать
  • Wake on Lan вне локальной сети?

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

    Можно периодически машины будить по таймеру (настроить задачу в диспетчере задач), скриптом проверять наличие маркера необходимости в машине (файлик по сети с с любого обласчного хранилища к примеру) и если такого нет - засыпать по команде Shutdown.exe -s -t 00

    В режиме сна машины не потребляют энергии (собственно у нас и выключение сейчас по факту - тот же сон, только оперативная память не под питанием), и в отличии от hibernate, не тратят ресурс ssd. Раз в 60-30 минут вкл/выкл никому не повредят (осторожно с hdd, им не очень приятно туда сюда включаться, с другой стороны 24 раза в сутки это ни о чем)
    Ответ написан
    Комментировать
  • USB tethering over LAN?

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

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

    @rPman
    почти полная замена teamviewer/anydesk - это rustdesk, можно настроить свои сервера, открытый, доступный, достаточно шустрый

    p.s. штатный инструмент удаленной работы с linux - x2go (аналог msrdp в windows), а для доступа можно настроить обратный ssh с перенаправлениями (это когда все ваши машины за NAT подключаются к одному вашему серверу с белым ip) а вы уже через свой сервер подключаетесь., но лучше конечно vpn свой поднять, то же самое только будет локальная сеть.
    Ответ написан
    Комментировать
  • Как сменить маршрут до игрового сервера?

    @rPman
    Нужно посмотреть, через что именно идет подключение в 'платном решении' и поискать именно там vpn сервер
    Ответ написан
    Комментировать
  • Что выбрать за архитектуру LLM для обучения с нуля?

    @rPman
    У тебя ошибка в постановке цели - 'обучить с нуля'.

    llama3 обучалась на 15Тера-токенах, это примерно на три порядка больше чем в твоих гигабайтах, этого катастрофически мало, для того что бы что то внятное получилось.

    Для обучения модели, по мощности сравнимой с gpt3.5 нужно 10^26 степени flops (очень приблизительная оценка, скорее всего занижена, так как все очень зависит от использованного оборудования), посчитайте необходимое количество GPU и энергии, для того что бы достичь этого объема вычислений (для примера бери nvidia a100 80gb считая что ее мощность 20tflops это 2*10^13, да так считать не правильно, и в зависимости от задач число можно как увеличивать в 20 раз так и уменьшать в разы).
    ------------

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

    НО! Ни одна компания, создающая топовые модели не делится исходными данными (это похоже стало по цене сравнимо с затратами на вычисления), а те что делятся - очень слабые, хуже openai gpt3.5 это уже давно стало минимальным эталоном, все что хуже не будет адекватной instruction.

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

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

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

    p.s. резюмирую, если у тебя в кармане нет порядка $10кк а скорее всего в десятки раз больше, то 'с нуля' обучать свою модель у тебя не получится.

    В мире не так много компаний которые в принципе на это способны - в россии например на это способны богатейшие только сбербанк (гигачат) и яндекс (yandex gpt), последние этим занимаются давно (за долго до появления chatgpt) и единственная их проблема - не хватает денег (и блокировка доступа к покупке оборудования), и возможно специалистов.
    Ответ написан
    7 комментариев
  • PyTorch занимает много памяти. Как оптимизировать?

    @rPman
    Твоя видеокарта всего 4гб, откуда ты взял 7гб всего?
    Скорее всего твой датасет не помещается в память видеокарты... уменьши размер батча (вообще то его увеличивают чтобы значительно ускорить обучение, но тебе 'не до жиру') до 1.
    Перейди на fp16, это уменьшит размер весов модели (правда если она уже уменьшена, дистиллирована и прочее, это может помешать обучению)
    training_args = TrainingArguments(
        fp16=True,

    Так же можно поделить свою обучающую выборку на части и обучать сетку по ее частям (это замедляет процесс и ухудшает но все еще лучше чем на процессоре все делать)
    training_args = TrainingArguments(
        gradient_accumulation_steps=4,
    Ответ написан
    Комментировать
  • Максимальный объём памяти - верить ли программам-анализаторам?

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

    Все остальное - домыслы, эксперименты, хаки.

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

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

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

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

    p.s. на сколько я знаю в каких то ftp серверах была возможность принудительно задать пользователя, под которым сервер будет запущен и авторизован, а авторизация пользователя ftp не будет соответственно авторизации ОС, тогда запущенный под root сервер решил бы твою проблему, но это огромная дыра, так давно уже не поступают.

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

    пользуйтесь sftp/scp, который встроен по умолчанию в ssh сервер, который есть для любой ОС на планете, стандарт безопасного подключения, на столько многофункционален. что даже vpn через него поднять можно (штатным инструментом)
    Ответ написан
    Комментировать