Pull to refresh
17
4
Александр Шакмаев@echo0x00

Product Manager Cloud.ru, ex. Golang Tech Lead

Send message

Все так) В статье раскрыты технические аспекты, Хабр как раз про это. Если есть запрос на стоимость реализации подобного проекта, предлагаю уйти в ЛС и там все обсудить

Конкретную калькуляцию, к сожалению, раскрыть не можем для этого кейса. Но, стандартная стоимость тут не такая большая, как может показаться. Для примера, аренда всего 1 сервера с современными GPU H200 или B200 выходит в несколько раз дороже описанного кейса на 512 ядер

Спасибо за вопрос - а мы даже попробовали текущую задачу на HGX H100 с NVlink. По чистому CFD они сейчас реально летят, но с механикой и термодинамикой все чуть сложнее. В этом кейсе, у нас с GPU не сложилось) Пока карточки ускоряют не все, хорошо идут линейные решатели и часть матричных операций, но контакт, нелинейность, пластика, сложный material model все ранов остаются на CPU

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

в нашем случае, Bare Metal - сервис, который предоставляет выделенные физические сервера в облаке. То есть, из коробки у вас есть вся сетевая связность с облаком и автоматизация облака: от разливки ОС на физический сервер до управления сетями и коммутатором без участия инженеров. Сами сервера уже находятся в стойках и ждут своих задач.

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

Спасибо за вопрос! Отвечу подробнее и по порядку. Наше внутреннее решение с приватной частью дает точность на тестовой выборке 82%.

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

Что это значит: мы взяли 2000 уже выполненных, описанных и оцененных задач из беклога определенной команды, разделили на train и test часть (обычно это 70/30% в совокупности). Обучили модель на train части с фиче развесовкой на наши корпоративные особенности и особенности определенной команды.

Далее, взяли модель и попытались предсказать оценку на test части. Вот наш accuracy 0.82% для тестовой выборки.

В боевом режиме, команда соглашается с оценкой задач на приблизительно в 60% случаев. Но важно, здесь то - что сами встречи стали короче и спокойнее :)

Судя по цифрам с бенчмарка - очень быстро, но и структуры, надо признать, небольшие. Читерства, как такового нет, это заметно на ASM коде. Вся магия скорости рассеивается, когда осознаешь принципы локальности, в особенности пространственную.

Не именно книгой, но да, спасибо что заметили. Множество талантливых работ Тейвы, на мой взгляд, недооценены и многими не рассматриваются всерьез с точки зрения практического применения.

Мы реализовали на практике — нам очень понравилось и попробовали разобраться почему

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

Минусы добавить пару строк в тот же обработчик описаны во «втором способе» статьи.

Спасибо за комментарий.

На самом деле, есть кейсы когда jwt токены люди генерируют и руками копируют еще на этапе тестирования public api. И уже этот кейс может складывать у пользователей начальное впечатление - вот тут и клиентоцентричность.

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

А когда парольные политики изначально не подразумевают перенос строки и табуляцию в пароле - зачем пользователю кидать ошибку? Пользователь сталкивается с непониманием. Статья, скорее об этом. А интерцепторы - как способ.

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

Тут можно много примеров за и против привести. Но важно, то - что у если прямо сейчас в проекте 100 контроллеров которые кидают эту бессмысленную ошибку при валидации uuid - в разы проще написать интерцептор (с привязкой к конкретному полю, если нужно), чем править логику 100 контроллеров - об этом описано во «втором способе»

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

switch field.Kind() {
		case reflect.String:

Если это строка (см функцию handleField)
А тут в handleFields- если снова структура, значит лезем внутрь

сорян, но они же заявляли что версии до 2022.2.6 блокировать не будут, даже с expired лицензией - активно пользуюсь продуктами до версии 2022.2.6 со старой лицензией, особых трудностей не испытываю, все работает

из опыта, не работает СБП в некоторых популярных сервисах

У меня была возможность пообщаться с парой безопасников из Google

Неплохой такой способ баг хантинга

Как-то грустно написали, ведь есть и рабочие, живые и не менее интересные Российские конструкторы - например, Знаток (Бахметьева). Не реклама, но старшему очень интересно

Неплохой гайд, если не считать что

  • To ensure and maintain high quality of ad content, a minimum advance payment of €2,000,000 is required to launch ads on the Telegram Ad Platform.

Information

Rating
1,116-th
Location
Москва, Москва и Московская обл., Россия
Registered
Activity