GithubHelp home page GithubHelp logo

tomzhang / vearch Goto Github PK

View Code? Open in Web Editor NEW

This project forked from vearch/vearch

0.0 1.0 0.0 20.88 MB

A distributed system for embedding-based retrieval

Home Page: https://vearch.github.io/

License: Other

Shell 0.87% Go 94.53% Dockerfile 0.04% Python 4.57%

vearch's Introduction

Build Status     Gitter

Overview

Vearch is a scalable distributed system for efficient similarity search of deep learning vectors.

Architecture

arc

  • Data Model

    space, documents, vectors, scalars

  • Components

    Master, Router and PartitionServer

  • Master

    Responsible for schema mananagement, cluster-level metadata, and resource coordination.

  • Router

    Provides RESTful API: create , delete search and update ; request routing, and result merging.

  • PartitionServer (PS)

    Hosts document partitions with raft-based replication.

    Gamma is the core vector search engine implemented based on faiss. It provides the ability of storing, indexing and retrieving the vectors and scalars.

Quick start

docs/img/plugin/main_process.gif

  • One-click binary installation, please see docs/BinaryInstallation.md(中文版).

  • Quickly compile the source codes to build a distributed vector search system with RESTful API, please see docs/SourceCompileDeployment.md.

  • Vearch can be leveraged to build a complete visual search system to index billions of images. The image retrieval plugin for object detection and feature extraction is also required. For more information, please refer to docs/Quickstart.md.

  • Vearch Python SDK enables vearch to use locally. Vearch python sdk can be installed easily by pip install vearch. For more information, please refer to docs/APIPythonSDK.md.

APIs and Use Cases

LowLevelAPI

VisualSearchAPI

PythonSDKAPI

Document

Benchmarks

Publication

Jie Li, Haifeng Liu, Chuanghua Gui, Jianyu chen, Zhenyun Ni, Ning Wang, Yuan Chen, Qiang Liu. The Design and Implementation of a Real Time Visual Search System on JD E-commerce Platform. In the 19th International ACM Middleware Conference, December 10–14, 2018, Rennes, France. https://arxiv.org/abs/1908.07389

Community

You can report bugs or ask questions in the issues page of the repository.

For public discussion of Vearch or for questions, you can also send email to [email protected].

Our slack : https://vearchwrokspace.slack.com

Known Users

Welcome to register the company name in this issue: vearch#230 (in order of registration)

欢迎在此 issue vearch#230 中登记公司名称

科大讯飞 飞搜科技 君库科技 爱奇艺 人民科技 趣头条 网易严选 咸唐科技 华为技术 OPPO 汽车之家 芯翌智能 图灵机器人 金山云 汇智通信

License

Licensed under the Apache License, Version 2.0. For detail see LICENSE and NOTICE.

vearch's People

Contributors

ljeagle avatar ansjsun avatar kevintony001 avatar zcdb avatar bladehliu avatar wxingda avatar qiutianme avatar gdreamcatcher avatar nizyun avatar yideng avatar stuartjing avatar gyd-a avatar guichuanghua avatar vivian7755 avatar kuailelijuan avatar jinzishuai avatar denisnovac avatar missqinxiaoer avatar weiyan-lynn avatar zhangzhenhua avatar dependabot[bot] avatar qbzenker avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.