Coder Social home page Coder Social logo

vearch-python's Introduction

Gamma Python SDK

gamma python sdk and python wheel packages.

Overview

This repository shows gamma python sdk and provides scripts to create wheel packages for the gamma library.

python sdk api is the document of python sdk api. Files in directory of python shows how the python sdk encapsulate gamma. setup.py is written for creating wheel packages for gamma.

Of course, pip install vearch is the easiest way to use this python sdk. And this repository helps to build your custom python sdk.

Building source package

if thers is a custom built gamma library in the system, build source package for the best performance.

Prerequisite

You can build it with docker image: pypywheels/manylinux2010-pypy_x86_64:latest

auditwheel tool should be installed firstly. You can install it by pip.

The package can be built when gamma is already built and installed. See the official gamma installation instruction for more on how to build and install gamma. In particular, compiling wheel packages requires additional compilation options in compiling gamma.

git clone https://github.com/vearch/vearch-python.git
git submodule init
git submodule update
cd gamma
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DPERFORMANCE_TESTING=ON ..
make
sh build-wheels.sh
sh install-vearch.sh

Then the whl file will be generated into the wheelhouse directory.

For building wheel packages, swig 3.0.12 or later needs to be avaiable.

Linux

In linux, auditwheel is used for creating python wheel packages ocntains precompiled binary extensions. Header locations and link flags can be customized by GAMMA_INCLUDE and GAMMA_LDFLAGS environment variables for building wheel packages. Windows and OSX are not supported yet.

vearch-python's People

Contributors

ljeagle avatar zcdb avatar borissimkin avatar

Watchers

James Cloos 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.