Задать вопрос
  • Как увеличить более 150% элементы UI и размер текста в Windows 7?

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

    Результат - замыливание изображения, но если задача - помочь человеку со слабым зрением, то это не проблема. Бонусом - ускорение работы 3d-приложений и игр.

    ypd. windows 7 - открываю Разрешение - сделать текст и другие элементы больше или меньше - слева Другой размер шрифта (точек на дюйм) - масштаб обычного размера, руками пишу 500 - применить, предлагает перелогиниться - оп все огромное
    Ответ написан
    2 комментария
  • Как связать YandexGPT с базой данных?

    @rPman
    При наличии доступа к весам llm, мощностям для finetuning и переобучения, специалистам по нейронным сетям, можно сделать ряд сопроводительны нейронок, которые будут помогать принимать решение о дальнейших действиях, закодировать большое количество 'дорожек' из llm к формальным базам данных, и сделать задачу якобы решенной.

    По факту llm будет решать одну единственную задачу - текстовый интерфейс на естественном языке к интерфейсу к базе данных. Т.е. набор функционала и запросы, которые можно делать к базе нужно будет закодировать заранее.

    Если не углубляться
    - во первых, тебе нужно на основе llm сделать классификатор, который будет из текста пользователя понимать, intent - какое именно действие он желает сделать (для этого обучают нейронку на основе pretrained llm, возможно убирают последние слои, заменяя их на новые, веса которых нужно будет найти и обучить на основе подготовленной базы вопросов пользователей и соответствующих им реакций, с некоторой долей вероятности можно попробовать без обучения спрашивать у умной llm типа chatgpt4, к сожалению chatgpt3.5 и сравнимые с ней плохо с этим справляются, точнее это вопрос творческий и возможно вместо одного универсального промпта тут нужно готовить франкенштейна из большого количества разных, llm-ка от яндекса не подойдет).
    - во вторых, это сбор информации, отличный пример - человек спрашивает брать ли завтра зонтик, мало сети понять что для ответа на вопрос нужно знать какая будет погода завтра (а завтра это через сколько часов?), нужно понять где этот человек находится и возможно задать наводящий вопрос... это я еще молчу про контекст беседы, может пользователь обсуждает о том что взять с собой в поездку на следующей неделе, т.е. вот уже другое время и место (фраза взять с собой может подразумевать - положить в багаж).
    Я видел примеры промптов, с помощью которых из лога беседы можно вытягивать элементы информации (список этих элементов придется заранее забивать соответственно тому интерфейсу, который выбран как целевой на первом шаге), что то типа проанализируй, достаточно ли в данном тексте информации для ответа на вопрос, выделяя в промпте цель, собранную информацию и часть лога беседы, может сжатой через саморизацию с фильтром - нужную для данной задачи (этакая симуляция большого окна контекста).
    Вот тут у директора по развитию ии от яндекс спрашивали как раз

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

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

    upd. вот тут из гигачата сделали внутреннюю базу и как то интегрировали нейронку чтобы ею пользоваться, подробности не сообщили но в статье и комментариях есть ссылки на работы и технологии
    Ответ написан
    1 комментарий
  • Что за роли в API ChatGPT?

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

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

    assistant (в приведенном примере это будет Алина) - во всем дальнейшем обсуждении будет использоваться чтобы отделить части текста как сказанные этим ассистентом, т.е. если ты в запросе в конце напишешь "Алина: " то языковая модель поймет что дальше должен быть текст ассистента

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

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

    Т.е. формально нет особой разницы между user и assistent, и различия и смысл определяются в системной части промпта.

    Если говорить конкретно про chatgpt api то там эти роли буквально имеют это значение

    p.s. в разных языковых моделях для выделения частей сообщения по смыслу и в т.ч. по собеседникам, могут определяться специальные токены.
    Ответ написан
    1 комментарий
  • Где купить готовые, синхронизированные ноды?

    @rPman
    Для всех популярных проектов тебе нужна быстрая машина (кроме может только bitcoin, я на 3$ vps в режиме -prune прогружал блоки считанные часы) и быстрый ssd (настоятельно не рекомендуется hdd, т.е. ты не получишь бонуса к скорости за счет готового дампа если будешь скачивать его у кого то, за исключением случаев когда у тебя hdd а не ssd, или к примеру закажешь его на носителе типа флешка, но это садомазохизм в любом случае)

    bitcoin синхронизируется почти на максимуме скорости сети, его нет смысла откуда-то загружать

    Для ethereum в geth достаточно указать ключ --fast и состояние будет прогружаться тем же способом что и блоки, т.е. максимально быстро, как с torrent

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

    @rPman
    NVM_Express - это спецификация, т.е. описание и стандарт, включающий в себя не только описание разъема, условий использования но и протокола в том числе.

    Это как говорить что автомобиль это двигатель... или дом - это стены и крыша... оркестр - это дирижер... (chatgpt отличные аналогии приводит)
    Ответ написан
    1 комментарий
  • Selenium при парсинге Авито выдает разный результат (блок по ip), в чем дело?

    @rPman
    Добавь логирование в свой скрипт, может ты его дважды запускаешь!?

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

    Задания можно хранить в базе данных а можно просто на файлах сколхозить, по файлу на задание
    Ответ написан
    Комментировать
  • Установил 2 винды на 1 пк, но появились проблемы с дисками, что делать?

    @rPman
    Это технология FatStartup мешает, либо отключай гибернацию либо перед сменой ос выключай командой shutdown
    Ошибка с диском линукs ubuntu 23.10?
    Ответ написан
    Комментировать
  • Создание бота для Android игр, как?

    @rPman
    Формально исследователи ИИ научили играть компьютер а условный Майнкрафт исключительно по видео, так же бот успешно играл в аркады типа Марио и прочее.

    Если ты готов отвалить за результат несколько десятков миллионов $, то дерзай, обращайся в Гугл или openai.

    Ну а классическим способом универсального бота не сделать
    Ответ написан
  • Как на стартовой странице задать для сайта свою иконку?

    @rPman
    Не ставить же Апач ради этого?
    в windows идет штатный компонент internet information service

    Обычные сайты не могут (и не должны) иметь доступ к file:// так как это была бы огромная дыра.
    Пиши расширение или выше со стилями тебе порекомендовали.
    Ответ написан
  • Как отсортировать сообщения в экспорте чата телеги от одного человека?

    @rPman
    При экспорте выбираешь machine readable json, открываешь любимый язык программирования и пишешь программу в 5 строчек - прочитать файл, декодировать json, цикл для каждого собщзения, проверить ник, сохранить сообщение в файл
    Ответ написан
    Комментировать
  • Windows 10 Home. Возможно ли установить Active Directory?

    @rPman
    Там стоит проверка, если версия home то не разрешать входить в домен
    Вопрос не решается установкой софта, нужно изменить именно ревизию (во времена winxp/win7 была утилита, меняющая эту информацию в реестре и большинство софта понимало это верно)

    В любом случае это нелегально, а значит достаточно воспользоваться кряками/активаторами и активировать свою установку с новой ревизией, благо это встроено в систему
    Ответ написан
  • При загрузке торрент процессор сильно нагружается, как это решать?

    @rPman
    Подойти к клиентам и настучать по голове, чтобы в настройках торрент уменьшил количество соединений с 200 (по умолчанию в некоторых) до хотя бы 50 или лучше 10

    Отлавливать таких мониторингом соединений и ронять им скорость, когда позвонят спросить - объяснить как делать не надо.
    Ответ написан
    Комментировать
  • Почему скорость через VPN не превышает 300 мб при гигабитном канале?

    @rPman
    увеличивай mtu у vpn соединения,
    p.s. процессор (pc) не нагружен когда vps-pc ?

    300мбит это вроде норм для vpn, на таких скоростях скорость процессора важна, лучшую скорость по уму дает WG, так как он работает на уровне ядра и эффективнее использует процессор
    Ответ написан
    8 комментариев
  • Как происходит кеширование, если вызывает функция slow?

    @rPman
    slow = cachingDecorator(slow);после этого slow у тебя уже не прошлая функция а целый класс, в котром прописан вызов старой функции при условии отсутствии данных в кеше (объект в этом классе)

    Заметь, slow без скобок это не вызов функции, а получение ее самой (в терминах c++ ее адреса) и передача этой функции в виде аргумента. Чтобы вызвать функцию, даже если ее адрес в переменной, нужно написать скобки
    Ответ написан
  • Как настроить принтеры по сети, чтобы каждый печатал только на своём принтере?

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

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

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

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

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

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

    смещение у каждого интервала свое (меняется в пределах от 0 до длины интервала, само собой в миллисекундах), твоя задача найти такие значения для смещений, чтобы один интервал возвращал чаще то же самое что другой в последний раз (т.е. был позади во времени перед сменой значений), а это другой чаще новые значения (сразу после смены значений). Т.е. ты сохраняешь последние N измерений со значениями интервалов и boolean (подходит или нет) и считаешь градиент для интервалов (количество true по значениям интервалов), из них уже вычисляешь нужно ли увеличивать интервал или уменьшать на некую дельту.
    Ответ написан
    Комментировать
  • Программный Raid 5 + nwme cache?

    @rPman
    bcache отлично работает, как в режиме кеша только для чтения так и как дополнительный буфер для записей (writeback)
    и это лучший способ способ сожрать ресурс записи ssd диска

    у меня так на очень дешевых комплектующих работала следующая схема linux сервер, специально выделенные медленный hdd + 250гб ssd диск в качестве кеша, полученный ускоренный раздел публикуется с помощью iscsi по гигабитной сети, его монтирует windows машина и на этом диске размещены игрушки (ark будь он неладен 400гб с еженедельными обновлениями по 50-100гб), чуть больше чем за год сожрал 250тб ресурса. Итоговая скорость запуска была примерно в 3 раза быстрее чем если hdd подключить напрямую к windows машине.
    Ответ написан
    2 комментария
  • Как удалить много строк (порядка 500.000) из csv файла в Python?

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

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

    По окончанию работы, если ошибок не будет, старый файл удаляешь (или переименовываешь его в xxx.bak) а новый переименовываешь под старым именем
    Ответ написан
    Комментировать
  • Файл подкачки на другом диске?

    @rPman
    своп настриивается как точка монтирования в /etc/fstab, если тебе автоматически после перезагрузки
    UUID=xxx-xxx-xx-xxx none swap sw 0 0
    UUID=xxx тут способ указания раздела (или всего диска) для свопа, можно указать устройство /dev/sdXY или сразу файл (автоматически подключит loop девайс и будет туда свопаться)

    если тебе однократно, то подключать командой
    swapon устройство

    Однократно своп нужно проинициализировать командой
    mkswap устройство

    p.s. на сколько я знаю, уже давно, своп может размещаться в т.ч. по сети (nfs например или nbd), точно помню был пример размещения свопа в vram gpu, есть где то поддержка сжатия данных на лету и тьма чего то еще
    Ответ написан
    1 комментарий
  • Как спарсить данные с TrandingView?

    @rPman
    Данные там лежат в огромном json прямо встроенном в саму страницу, которая грузится без каких либо особенностей, тупо wget-ом, очень странное решение но
    <script type="application/prs.init-data+json">{"FYBZHq":{"context":{"request_context":{"user":{"is_authenticated":true,"is_...}}</script>
    пример FYBZHq►data►news►data►items►0►
    id	:	prime:0273264f867b8:0
    title	:	Результаты торгов акциями в секторе основных торгов Московской биржи
    storyPath	:	/news/prime:0273264f867b8:0/
    sourceLogoId	:	prime
    published	:	1701792002
    source	:	ПРАЙМ
    urgency	:	2
    permission	:	headline
    provider	:	prime
    Ответ написан
    Комментировать