19 repository-uri
Native integration layers for the Python ecosystem and scientific computing stack.
Explore 19 awesome GitHub repositories matching programming languages & runtimes · Python Bindings. Refine with filters or upvote what's useful.
PyTorch is a machine learning framework centered on a GPU-ready tensor library that supports multi-dimensional array operations across both CPU and accelerator hardware. It provides a foundational infrastructure for mathematical computation and dynamic neural network construction, utilizing a tape-based automatic differentiation system that allows for flexible, non-static graph execution. The framework is designed for deep integration with Python, enabling natural usage alongside standard scientific computing ecosystems. It distinguishes itself through a comprehensive distributed training sui
Integrates deeply with the Python ecosystem to allow seamless interoperability with standard scientific computing libraries.
RustPython is a Python 3 compatible interpreter implemented in Rust. It functions as a scripting engine that can be embedded directly into host applications, allowing for the execution of dynamic scripts and the customization of software behavior within a memory-safe environment. The project distinguishes itself through its ability to bridge Python and JavaScript runtimes, enabling data exchange and function invocation across language boundaries. It also provides a portable execution environment by compiling Python code into WebAssembly, which allows for the execution of logic directly within
Bridges Python and JavaScript runtimes to facilitate seamless data exchange and function invocation.
This project is a cross-platform machine learning inference engine designed to execute pre-trained models across diverse operating systems and hardware environments. It functions as a standardized execution framework that manages the entire lifecycle of model inference, from loading and graph optimization to hardware-accelerated execution and generative sequence management. The runtime distinguishes itself through a highly modular architecture that decouples model logic from hardware-specific kernels. By utilizing an execution provider abstraction, it enables developers to offload computation
Provides native integration layers for Python environments to facilitate model execution.
This project provides a framework for binding Rust and Python, enabling the creation of native extension modules and the embedding of the Python interpreter within host applications. It functions as a cross-language interoperability library that facilitates the execution of scripts, the definition of classes, and the sharing of data structures across the boundary of the two runtimes. The framework distinguishes itself through the use of procedural macros to automate the generation of boilerplate code, simplifying the process of exposing native functions and data types. It employs type-level m
Provides a comprehensive framework for binding Rust and Python, enabling native extension development and interpreter embedding.
dlib is a C++ machine learning toolkit and data analysis framework. It provides a collection of algorithms and utilities for building predictive modeling applications and performing statistical analysis on large datasets within native C++ environments. The project functions as a binding library that wraps low-level C++ machine learning algorithms into high-level Python scripting interfaces. This allows for the integration of high-performance native implementations with Python for machine learning development. The framework covers the implementation of predictive models, the execution of mach
Provides native integration layers that bridge high-performance C++ machine learning algorithms to the Python ecosystem.
Open3D is a software toolkit designed for the processing, alignment, and reconstruction of three-dimensional data. It functions as a computer vision geometry engine that enables the manipulation of point clouds, meshes, and volumetric grids derived from sensor inputs. The library distinguishes itself through a high-performance computational core that executes geometric processing tasks in native code, paired with a binding layer that exposes these capabilities to high-level languages for rapid prototyping. It provides specialized algorithms for spatial registration, allowing users to merge mu
Exposes native C++ capabilities to Python for rapid prototyping and data analysis.
TurboVec is a high-performance Rust vector database and quantized search index designed for storing and retrieving high-dimensional embeddings. It functions as a pluggable vector store for large language model orchestration frameworks, providing a memory-efficient alternative to standard in-memory storage. The project distinguishes itself through a high-dimensional vector compressor that utilizes random rotation and data-oblivious scalar quantization to reduce memory footprints. Retrieval is accelerated via SIMD kernels that process distance calculations and search operations for increased th
Exposes the high-performance Rust core to Python via a foreign function interface for framework integration.
This project is a high-performance library for converting raw text into tokens and IDs for machine learning models. It functions as a fast text encoder and a text preprocessing pipeline designed to transform strings into numerical representations with high throughput for research and production. The library includes a subword tokenizer trainer used to analyze text datasets and create custom vocabularies using algorithms such as byte-pair encoding and wordpiece. It provides capabilities for subword vocabulary training and text alignment, allowing character offsets to be tracked during normaliz
Exposes a high-performance Rust implementation to Python via low-overhead foreign function interface bindings.
This project is a performance measurement framework and microbenchmarking library designed for C++ and Python. It provides a toolset for measuring the execution time of small code fragments using high-resolution timers, calculating statistical aggregates, and analyzing asymptotic complexity. The framework distinguishes itself through specialized capabilities for multithreaded performance testing, using synchronized execution to measure parallel throughput. It includes mechanisms to prevent compiler optimizations from removing benchmarked code and supports complex parameterization via Cartesia
Provides native Python bindings to the C++ core for high-performance timing in scripted environments.
Grex is a regular expression generator and Rust pattern library that synthesizes a single regular expression from a set of provided text test cases. It functions as a command-line tool and a library, utilizing a Rust-based engine to analyze commonalities across input strings to create matching patterns. The project distinguishes itself through Unicode-aware grapheme processing, ensuring consistent matching across diverse character sets and non-ASCII text. It also provides Python bindings to make its core Rust logic available within Python environments. The system covers pattern generalizatio
Provides native Python bindings to expose the high-performance Rust pattern engine to Python environments.
Swift for TensorFlow is a custom toolchain that extends the Swift language with first-class automatic differentiation and differentiable types, enabling gradient-based computation directly within the compiler. It integrates the Swift compiler with TensorFlow runtime and XLA backends, allowing tensor operations to be compiled and executed on hardware-accelerated hardware for high-performance machine learning. The project distinguishes itself through compiler-integrated automatic differentiation that computes gradients of user-defined functions and types during compilation, eliminating the need
Provides native Swift syntax to import and call Python libraries directly, bridging both ecosystems.
PyOxidizer este un împachetator de aplicații Python și un embedder de interpretor conceput pentru a compila codul Python și dependențele într-un singur binar executabil standalone. Acesta funcționează ca un instrument de distribuție care permite aplicațiilor să ruleze pe mașinile țintă fără un interpretor preinstalat. Proiectul servește drept punte între Rust și Python, oferind un framework pentru a integra cele două limbaje în vederea creării de biblioteci linkabile sau înlocuirii incrementale a logicii. Facilitează încorporarea unui runtime Python în aplicații mai mari pentru a executa scripturi sau a oferi logică bazată pe Python. Setul de instrumente acoperă împachetarea aplicațiilor Python, fluxurile de lucru de distribuție și integrarea runtime-urilor Python încorporate.
Combines Rust and Python to create linkable libraries or replace logic gradually.
PythonNet este o punte de integrare a runtime-ului care permite codului Python să apeleze assembly-uri și funcții .NET în cadrul Common Language Runtime. Servește ca un set de binding-uri pentru accesarea framework-ului .NET și a bibliotecilor sale dintr-un mediu Python, facilitând interoperabilitatea runtime-ului între limbaje. Proiectul oferă un mecanism pentru încorporarea unui motor de scripting Python direct în aplicațiile .NET. Acest lucru permite crearea unui strat de scripting al aplicației unde codul Python este executat dinamic pentru a oferi personalizare și automatizare mediului gazdă. Puntea suportă integrarea assembly-urilor și namespace-urilor .NET în scripturile Python și oferă acces la serviciile runtime prin .NET Framework, .NET Core și Mono. Gestionează comunicarea între interpretorul Python și runtime-ul .NET pentru a partaja servicii și componente.
Provides a set of bindings for accessing the .NET Common Language Runtime and its libraries from a Python environment.
Acest proiect este o extensie a bibliotecii standard Swift și o bibliotecă de sistem cross-platform. Oferă o colecție de tipuri utilitare de bază și structuri de date fundamentale care extind limbajul Swift, acționând ca un strat de interfață independent de sistemul de operare pentru gestionarea operațiunilor precum rețelistica și sistemele de fișiere. Proiectul include un strat specializat de interoperabilitate C++ care mapează tipurile și funcțiile C++ în interfețe Swift compatibile pentru comunicarea între limbaje. Aceasta include un mecanism de bridging pentru a gestiona tipurile bibliotecii standard și containere externe, permițând maparea tipurilor C++ ca tipuri de referință sau de valoare pentru a sincroniza gestionarea memoriei și semantica. Capabilitățile includ serializarea datelor pentru codificarea și decodificarea formatelor structurate precum JSON și un framework de internaționalizare pentru gestionarea formatării locale, a calendarelor și a setărilor regionale. De asemenea, oferă gestionarea datelor de bază pentru lucrul cu URL-uri și date binare brute.
Modifies external frameworks to create consistent mappings and interoperability between different language runtimes.
Maturin is a build tool that compiles Rust crates into Python wheel packages, supporting multiple binding systems such as PyO3, CFFI, and UniFFI to create native extension modules. It manages the full build pipeline from Rust compilation to wheel assembly, including cross-compilation for different operating systems and architectures without requiring native hardware. The tool integrates development-mode installation with automatic rebuilds: when a Python import hook detects source changes, it triggers recompilation before the module loads. Editable installs link the compiled module into site-
Generates native Python extension modules from Rust code using PyO3, CFFI, and UniFFI binding systems.
uniffi-rs is a Rust FFI binding generator and multi-language binding tool. It functions as an automated binding scaffolder that creates type-safe foreign function interfaces and native wrappers for Rust libraries in languages such as Swift, Kotlin, and Python. The project provides a system for cross-language interface definition, allowing functions and data structures to be specified in a shared format to ensure consistent API signatures across platforms. It further serves as an FFI memory management layer, handling object lifetimes and thread safety when sharing state between Rust and foreig
Creates type-safe Python bindings from Rust interface definitions for cross-platform scripting.
Chafa is a terminal graphics library that converts images and animated GIFs into character art for display in terminal emulators. It supports multiple output formats including ANSI escape sequences, Sixel graphics, and Unicode block characters, making it a versatile tool for rendering images directly within the terminal environment. The library is built as a shared C library with official bindings for Python and JavaScript, allowing developers to integrate terminal image rendering capabilities into applications across different programming environments. Chafa handles the full pipeline from im
Offers Python bindings for converting images into terminal art within Python applications.
cuda-python provides low-level Python bindings for the CUDA Driver and Runtime APIs. It serves as a programmatic wrapper for controlling device memory, managing hardware toolchains, and orchestrating execution graphs on NVIDIA GPUs, allowing for the compilation and launching of parallel kernels directly from Python. The project enables the development of SIMT kernels and the execution of mathematical algorithms on device memory. It integrates pre-compiled bytecode as custom operators and interfaces with accelerated device libraries to access low-level hardware functions without leaving the la
Offers a set of low-level Python bindings for the CUDA Driver and Runtime APIs.
Leela Chess Zero is a deep learning game AI and neural network chess engine that uses search algorithms to determine optimal moves and evaluate game states. It functions as a UCI chess engine, implementing the Universal Chess Interface standard for compatibility with various graphical user interfaces. The system acts as a hardware-accelerated move calculator, leveraging GPU and CPU backends to accelerate neural network inference. It supports the generation and submission of self-play games to training clients to improve the strength of its neural network models. The engine provides capabilit
Provides native integration layers allowing Python scripts to invoke neural network evaluation for chess game states.