group-telegram.com/partially_unsupervised/178
Last Update:
Рубрика "мои кенты - мое богатство". 👬
Я обещал написать про быстрый инференс, и вот подвернулся случай. У меня есть два предпочтения, которым я предпочитаю следовать в дизайне инференс-сервисов:
- никаких динамических графов, все должно быть сконвертировано в ONNX, даже легкие scikit-learn модели, и потом гоняться в ONNXRuntime. Это и минимизирует ошибки с одной стороны, и позволяет дешево сменить core model, да и запускать можно одинаково хоть локально, хоть на сервере, только бэкенд подмени;
- если можно что-то вынести на serverless (например, в AWS Lambda), надо выносить - это простой способ сглаживать нагрузку.
У лямбд есть несколько проблем:
- неидеальное масштабирование (с нуля до многих тысяч параллельных запусков мгновенно не вырастешь, что бы там ни говорили маркетинговые описания);
- медленный cold start (в эту сторону есть подвижки);
- нет GPU, и потому инференс жирных моделей скорее затруднителен, да и экономически не очень выгоден.
Так вот, мои старые кореша Андрей и Игорь решили починить одну из этих проблем и пилят платформу everinfer.ai, которая прям соответствует моим представлениям о прекрасном:
from everinfer import ClientВнутри ONNXRuntime, Rust 🦀, ScyllaDB и прочие модные технологии, благодаря чему инференс получается довольно быстрым. Слегка потестировал, получилось чуть быстрее локального запуска ONNXRuntime на CPU, даже с учетом сетевых издержек.
client = Client('my_secret_key')
pipeline = client.register_pipeline('my_model_name', ['onnx/model.onnx'])
runner = client.create_engine(pipeline['uuid'])
preds = runner.predict([inputs])
Платформа только-только открывается для внешних пользователей и предлагает первым тестерам бесплатное железо для инференса и помощь в запуске (хотя API простой как табуретка, вряд ли понадобится много помощи). Можете писать сразу @andrey_kiselev и просить доступ.
BY partially unsupervised
Warning: Undefined variable $i in /var/www/group-telegram/post.php on line 260
Share with your friend now:
group-telegram.com/partially_unsupervised/178