В 14 раз быстрее: как мы ускорили генерацию эмбеддингов в Manticore через ONNX

Когда мы выпустили Auto Embeddings — функцию автоматического преобразования текстов в векторные представления — без развёртывания отдельного сервиса для работы с ML-моделью, — главный запрос пользователей касался скорости работы. Ранее для генерации эмбеддингов использовался только стек SentenceTransformers поверх Candle (Rust-рантайм Hugging Face для ML-инференса), и ресурсы CPU использовались далеко не полностью: в большинстве сценариев нагрузки показатель QPS держался на уровне нескольких десятков документов в секунду независимо от способа подачи данных, а параллельные запросы обрабатывались последовательно в рамках одной сессии модели. Поэтому мы в течение нескольких недель оптимизировали механизм запуска ONNX-моделей в Manticore. Новый бэкенд ONNX Runtime доступен начиная с Manticore Search 27.1.5 . ONNX (Open Neural Network Exchange) — переносимый формат моделей, в котором уже публикуется большинство популярных open-source моделей для эмбеддингов: MiniLM, BGE, E5 и другие. В результате получилось решение, которое в среднем в 14 раз быстрее прежней реализации SentenceTransformers/Candle на том же оборудовании (обычный недорогой сервер с 16 ядрами / 32 потоками), с той же моделью и теми же весами, если усреднить по всей матрице замеров threads × batch , — и это преимущество сохраняется как при одном клиентском потоке, так и при тридцати двух. Предыдущая реализация во всём диапазоне нагрузок показывала 5–11 документов/с; новая реализация работает в диапазоне 70–230 документов/с.

https://habr.com/ru/articles/1051864/

#onnx #onnx_runtime #onnxruntime #embeddings #эмбеддинги #инференс #векторный_поиск #vector_search

В 14 раз быстрее: как мы ускорили генерацию эмбеддингов в Manticore через ONNX

Когда мы выпустили  Auto Embeddings  — функцию автоматического преобразования текстов в векторные представления — без развёртывания отдельного сервиса для работы с ML-моделью, — главный...

Хабр

Быстрый OCR на основе Paddle

Распознать текст на скане документа – задача не новая. А вот уложиться в пару секунд на CPU – уже вызов. Там, где готовые фреймворки долго "думают", я сделала своё OCR решение на основе PaddleOCR с конвертацией в ONNX. В этой статье я расскажу почему в качестве ядра был выбран Paddle, и как работает весь алгоритм на основе его моделей.

https://habr.com/ru/articles/1037868/

#ocr #компьютерное_зрение #onnxruntime #paddleocr

Быстрый OCR на основе Paddle

Распознать текст на скане документа – задача не новая. А вот уложиться в пару секунд на CPU – уже вызов. Там, где готовые фреймворки долго "думают", я сделала своё OCR решение на основе PaddleOCR с...

Хабр
Foundry Local 1.1: Live Transcription, Embeddings, and Responses API | Microsoft Foundry Blog

Foundry Local 1.1 adds live transcription, embeddings, Responses API, WebGPU plugin, and download cancellation.

Microsoft Foundry Blog

CellSeg v0.1.0 is out

Three months ago I started building an Android app to count cells. Today the first public build is up, and I'd like to introduce it properly. It's called CellSeg, and it does one stubborn small thing: it lets a bench scientist take a picture of a microscopy sample with their phone and get a cell count out of it in a few seconds, on the device, with no laptop and no cloud round-trip in the way. You can install it from cellseg.yaylali.uk. It's an open-source sideload APK — not on the Play […]

https://kemal.yaylali.uk/cellseg-v0-1-0-is-out/

The bench problem that wouldn’t go away

CellSeg There's a thing that happens in a tissue culture lab that I've never quite gotten used to, even after years of doing it. You pull a sample from a flask or a bioreactor, you load it onto a counting chamber, you put your eye to the microscope, and then you spend the next several minutes squinting at a grid and clicking a tally counter. If you're being honest about it, the count you write down is half measurement, half judgement call. Were those two cells one cell that was dividing? Was […]

https://kemal.yaylali.uk/the-bench-problem-that-wouldnt-go-away/

Foundry Local is now Generally Available | Microsoft Foundry Blog

Ship local AI to millions of devices - fast, private on-device inference with no per-token costs.

Microsoft Foundry Blog
Flutterで意味検索(ベクトル検索)をやってみる - Qiita

前回ONNX Runtimeを使ってテキストをベクトル化してみたので、今回はその続きとして、実際の検索機能を実装してみます。 実行画面 先にどのような画面になるか出しておきます。 ソースコードはGitHubで公開しています。 実装方針 検索することを目的として、...

Qiita
Flutterでテキストをベクトル化する - Qiita

テキストの意味検索や類似度計算をモバイルアプリで実現しようとしたとき、真っ先に思い浮かぶのはサーバーサイド API に投げる方法かと思います。しかし、ネットワーク遅延の排除・プライバシー保護・オフライン対応という観点では、オンデバイス推論は魅力的な選択肢です。 この記事では...

Qiita

Инференс нейросетевых моделей для табличных данных с помощью ONNX Runtime на C++

ONNX Runtime (ORT) — это высокопроизводительный движок для выполнения моделей в формате Open Neural Network Exchange (ONNX). Он предлагает оптимизированные реализации для CPU и GPU, поддержку различных аппаратных ускорителей и, что ключевое, простой C++ API. В этой статье мы разберем, как выполнить инференс модели для табличных данных, используя ONNX Runtime в C++ проекте. Ссылка для скачивания: Библиотеку можно получить через официальный GitHub (сборка из исходников). Для простоты в проектах часто достаточно забрать предсобранные бинарники из релизов .

https://habr.com/ru/articles/991430/

#onnxruntime #onnx #ORT #DL #TabularDL #C++ #инференс_моделей

Инференс нейросетевых моделей для табличных данных с помощью ONNX Runtime на C++

Развертывание нейросетевых моделей в production-среде — критически важный этап ML-пайплайна. Когда речь заходит о встраивании в C++ приложения (будь то высоконагруженные сервисы, desktop-софт или...

Хабр

Шпаргалка по инференсу на С++

Если ты только погружаешься в работу с инференсом на C++ и тебе интересно получить представление о том, как можно собирать и запускать популярные ML-библиотеки, то я рад поделиться базой, которую я использую в своих проектах. Здесь ты найдёшь простые проекты, решающие основные ML-задачи, и немного теории к этому коду. Надеюсь, что приведённый код может стать первой рабочей версией для новых фич в твоих проектах.

https://habr.com/ru/articles/986204/

#C++ #Inference #ML #OpenCV #mediapipe #ocr #yolo #triton #onnxruntime #pybind11

Шпаргалка по инференсу на С++

План курса про инференс ML-моделей на C++ Оглавление Введение OpenCV CMake Conan MediaPipe MediaPipe С++ MediaPipe Pybind11 YOLO ONNX Runtime Triton Inference Server OCR Tesseract Введение Я 5 лет...

Хабр