Задать вопрос
  • Как можно оптимизировать этот код?

    Vindicar
    @Vindicar
    RTFM!
    Для начала определи, что у тебя занимает время - скачивание, или парсинг. Подходы будут разные.
    Если хочется в лоб решать задачу - то multiprocessing в руки, даёшь дочернему процессу URL, он тебе возвращает структуру данных. Главный процесс раздаёт URLы и собирает ответы в какое-то итоговое хранилище.
    Пример работы с пулом процессов.
    Ответ написан
    Комментировать
  • Для чего нужны метаклассы в Python?

    Vindicar
    @Vindicar
    RTFM!
    Это механизм, позволяющий изменить процесс создания класса.
    Например, превратить аннотации типов в классе в поля/свойства экземпляра и автоматически создать их в конструкторе, или зарегистрировать созданный класс в некотором реестре, или ещё что-то. Да, всё это можно сделать и с помощью декораторов или иных инструментов - но метаклассы позволяют это сделать вообще без дополнительных телодвижений со стороны пользовательского кода.
    Как, по твоему, тот же pydantic превращает описание класса-модели, состоящее из одних аннотаций, в класс с геттегами/сеттерами, валидацией и ещё чёрт знает чем?
    Ответ написан
    Комментировать
  • Десктоп или xeon под сервер?

    VoidVolker
    @VoidVolker Куратор тега Железо
    Dark side eye. А у нас печеньки! А у вас?
    Серверное железо рассчитано на работу 24/7. Десктопное - нет. В десктопном железе есть фичи, которые не нужны в серверном, а так же нет фич, которые нужны в серверном. И наоборот. Поэтому под сервер надо брать только серверное железо. Кроме того, если хотите именно сэкономить - то просто добавьте памяти серверу и возьмите более быстрый процессор. Это самый адекватный вариант в вашей ситуации. Попытка сэкономить на железе и взять десктопное железо в итоге приведет к еще большим затратам, когда оно очень быстро отправится в электронный рай или будет работать нестабильно и компания будет терять ресурсы из-за простоев и ремонтов.
    SSD - интел и самсунг топ, выбор достаточно большой. Если хочется опять же сэкономить, то NVME диски можно взять под кэш, а под основные данные - SATA или HDD. Опять же, всегда есть вариант многоуровневого кэша - тут уже зависит от ваших бюджета, потребностей и софта.
    Ответ написан
    3 комментария
  • Как настроить VLESS?

    SagePtr
    @SagePtr
    Еда - это святое
    XTLS-Vision требует прямой доступ к TLS-сессии, пережёванная через nginx не подойдёт. Можно через nginx всё же проксировать на XRAY, но целиком TCP-поток, не залезая внутрь TLS-сессии. Наподобие такого: https://nginx.org/ru/docs/stream/ngx_stream_ssl_pr...
    Внутренние сайты на nginx тогда придётся переложить с 443 порта на какой-то другой и тоже проксировать.
    И да, "flow": "xtls-rprx-vision" задаётся в секции "clients", насколько помню.
    Ответ написан
    7 комментариев
  • Почему компонент в Next JS перерисовывает два раза?

    React assumes that every component you write is a pure function. This means that React components you write must always return the same JSX given the same inputs (props, state, and context).
    Components breaking this rule behave unpredictably and cause bugs. To help you find accidentally impure code, Strict Mode calls some of your functions (only the ones that should be pure) twice in development.
    https://react.dev/reference/react/StrictMode#fixin...

    Since Next.js 13.4, Strict Mode is true by default with app router. You can still disable Strict Mode by setting reactStrictMode: false.
    https://nextjs.org/docs/app/api-reference/next-con...
    Ответ написан
    Комментировать
  • Есть код для бота телеграмм который будет банить (заносить в чс) навсегда пользователей покидающих группу или канал?

    Когда чел выходит из чата - в чат присылается соответствующее сервисное сообщение. Вот по нему и можно найти ушедших.
    Смотри поле left_chat_member
    https://core.telegram.org/bots/api#message
    Ответ написан
    Комментировать
  • Возможна ли обработка адреса (жительства) в excel регулярным выражением?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Нет. Адрес не имеет никакой логики. Отличить название улицы от аббревиатуры регуляркой невозможно, ибо нет никаких правил по аббревиатурам и именам улиц.
    Можно просто попробовать выполнить замену текста типа ул. -> УЛ. для конкретных обозначений.
    Но просто строку - вряд ли, слишком много хаоса
    Ответ написан
    Комментировать
  • Возможно ли использовать модель 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 комментариев
  • Как настраивать scripts в package.json?

    yarkov
    @yarkov
    Помог ответ? Отметь решением.
    Окей, гугл, package.json scripts
    Информации вагон и маленькая тележка. Пересказывать никто не будет. Приходите с конкретными вопросами:
    1. Что нужно
    2. Что пытались сами
    3. Что не получается и какие ошибки

    Ответ написан
    3 комментария
  • Каким образом реализовать очень быструю очередь в Django ORM для API?

    @Everything_is_bad
    При 2 и более потоках он дает просто одинаковые записи на обработку, не успевая обновить их стату
    лочить запись с помощью select_for_update https://docs.djangoproject.com/en/5.1/ref/models/q...
    Ответ написан
    4 комментария
  • Какой оптимальный способ попасть в домашнюю сеть снаружи?

    @Desert-Eagle
    Новичок во всем
    Белый адрес - ОпенВПН на роутере - клиент ВПН извне, цепляетесь и работаете.
    Если проброс портов, то это стену ставить и настраивать корректно, потому что как только откроете порты на внешку, то китайцы будут стучаться нон-стоп.
    Ответ написан
    Комментировать
  • Какой ближайший хоп у России с европейской страной?

    @d-stream
    Готовые решения - не подаю, но...
    Во-первых каналов связи значительно больше одного, во-вторых пакеты динамически маршрутизируются и в каждый момент времени пакет может пролететь по совершенно разным маршрутам. На это влияют кучи факторов начиная от загрузки и заканчивая балансами пиринга.
    Так что чудесного "волшебного маршрута" не бывает.

    life-internet-world-connections-1024b.jpg
    Ответ написан
    11 комментариев
  • В чём смысл равного ограничения времени для разных ЯП в спортивном//олимпиадном программировании?

    Времени и памяти даётся с большим запасом, оптимальное решение даже на самом медленном из доступных языков даже близко к выдаваемым лимитам не приблизится.
    Ответ написан
    Комментировать
  • Как заменить под-зависимость на локальную копию?

    sfi0zy
    @sfi0zy Куратор тега JavaScript
    Creative frontend developer
    В package.json есть раздел overrides как раз для таких модификаций зависимостей зависимостей. В примерах в документации там почему-то акцент сделан только на версии пакетов, но можно и полностью заменить пакет на свой, если указать не версию, а локальный путь к нему.
    Ответ написан
  • Прирост в производительности после переноса алгоритма с Python на C++/C?

    @Everything_is_bad
    Хочется быстрее.
    начни с поиска узких мест и их оптимизации, так же можно попробовать pypy, после этого стоит рассмотреть cython

    Какой ЯП выбрать для изучения
    любой популярный компилируемый

    Во сколько раз ожидать прироста в производительности работы алгоритма
    неизвестно, в активных вычислениях может быть на порядок, но так же всегда можно написать кривую реализацию и только всё замедлить
    Ответ написан
    1 комментарий
  • Прирост в производительности после переноса алгоритма с Python на C++/C?

    Vindicar
    @Vindicar
    RTFM!
    У тебя вычисление повторяется для каждой строки? Посмотри, можно ли распараллелить код на несколько процессов (именно процессов, не потоков).
    Также посмотри насчёт использования numpy/scipy и их численных солверов для систем уравнений вместо sympy. Может, используя sympy, получится сформулировать алгоритм расчёта, а уже его портировать на numpy?

    Если надумаешь использовать numpy, держи в уме вот что: по возможности выполняй операции сразу над массивами значений. Упрощённо, вот это
    a = numpy.array([3] * 1000000, dtype=numpy.float32)
    b = 2 * a + 3

    будет намного быстрее, чем это:
    a = numpy.array([3] * 1000000, dtype=numpy.float32)
    b = numpy.zeros_like(a)
    for i in range(a.shape[0]):
        b[i] = 2 * a[i] + 3

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

    @alexalexes
    То, что у вас лежит на дисках в скрытом каталоге $Recycle.Bin, то и транслирует корзина в новой ОС.
    Ответ написан
    Комментировать
  • Какая нейросеть умеет в веб-дизайн?

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

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

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

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Django
    Седой и строгий
    Почитать про EAV, посмотреть на реализации. Потом почитать про фасетный поиск и погуглить его реализации. А после уже решать, что лучше подходит конкретно вашему проекту и стоит ли пилить своё решение или взять готовое.
    Ответ написан
    1 комментарий