Go from graph data to a secure and interactive visual graph app in 15 minutes. Batteries-included self-hosting of graph data apps with Streamlit, Graphistry, RAPIDS, and more!

Overview

CI Publish Docker Cloud Build Status ✔️ Linux ✔️ OS X Windows (#39)

Uptime Robot status Twitter Follow

Welcome to graph-app-kit

Turn your graph data into a secure and interactive visual graph app in 15 minutes!

Screenshot

Why

This open source effort puts together patterns the Graphistry team has reused across many graph projects as teams go from code-heavy Jupyter notebook experiments to deploying streamlined analyst tools. Whether building your first graph app, trying an idea, or wanting to check a reference, this project aims to simplify that process. It covers pieces like: Easy code editing and deployment, a project stucture ready for teams, built-in authentication, no need for custom JS/CSS at the start, batteries-included data + library dependencies, and fast loading & visualization of large graphs.

What

  • Minimal core: The barebones dashboard server. In provides a StreamLit docker-compose container with PyData ecosystem libraries and examples of visualizing data from various systems. Install it, plug in credentials to various web services like cloud databases and a free Graphistry Hub visualization account, and launch.

  • Full core: Initially for AWS, the full core bundles adds to the docker-compose system: Accounts, Jupyter notebooks for authoring, serves StreamLit dashboards with both public + private zones, and runs Graphistry/RAPIDS locally on the same server. Launch with on click via the Cloud Formation template.

  • Full core + DB: DB-specific variants are the same as minimal/full, and add simpler DB-specific quick launching/connecting.

Get started

Quick (Local code) - minimal core + third-party connectors

# Minimal core
git clone https://github.com/graphistry/graph-app-kit.git
cd graph-app-kit/src/docker
sudo docker-compose build

# Optional: Edit src/docker/.env (API accounts), docker-compose.yml: Auth, ports, ...

# Launch
sudo docker-compose up -d
sudo docker-compose logs -f -t --tail=100

=> http://localhost:8501/

To add views and relaunch:

# Add dashboards @ src/python/views/<your_custom_view>/__init__.py

sudo docker-compose up -d --force-recreate

Quick Launchers - minimal/full core

  1. Quick launch options:

Full: Launch Stack

  • Public + protected Streamlit dashboards, Jupyter notebooks + editing, Graphistry, RAPIDS
  • Login to web UI as admin / i-instanceid -> file uploader, notebooks, ...
  • Dashboards: /public/dash and /private/dash
  • More info

Admin:

# launch logs
tail -f /var/log/cloud-init-output.log -n 1000

# app logs
sudo docker ps
sudo docker logs -f -t --tail=1 MY_CONTAINER

# restart a graphistry container
cd graphistry && sudo docker-compose restart MY_CONTAINER

# restart caddy (Caddy 1 override)
cd graphistry && sudo docker-compose -f docker-compose.gak.graphistry.yml up -d caddy

# run streamlit
cd graph-app-kit/public/graph-app-kit && docker-compose -p pub run -d --name streamlit-pub streamlit
cd graph-app-kit/private/graph-app-kit && docker-compose -p priv run -d --name streamlit-priv streamlit

Minimal: Open Streamlit, ssh to connect/add free Graphistry Hub username/pass:

Database-specific: Amazon Neptune, TigerGraph

  1. Add views

  2. Main configurations and extensions: Database connectors, authentication, notebook-based editing, and more

The pieces

Core

  • Prebuilt Python project structure ready for prototyping
  • Streamlit quick self-serve dashboarding
  • Graphistry point-and-click GPU-accelerated visual graph analytics
  • Data frames: Data wrangling via Pandas, Apache Arrow, RAPIDS (ex: cuDF), including handling formats such as CSV, XLS, JSON, Parquet, and more
  • Standard Docker and docker-compose cross-platform deployment

GPU acceleration (optional)

If GPUs are present, graph-app-kit leverages GPU cloud acceleration:

  • GPU Analytics: RAPIDS and CUDA already setup for use if run with an Nvidia docker runtime - cudf GPU dataframes, BlazingSQL GPU SQL, cuGraph GPU graph algorithms, cuML libraries, and more

  • GPU Visualization: Connect to an external Graphistry server or, faster, run on the same GPU server

Prebuilt integrations & recipes

graph-app-kit works well with the Python data ecosystem (pandas, cudf, PySpark, SQL, ...) and we're growing the set of builtins and recipes:

Contribute

We welcome all sorts of help!

  • Deployment: Docker, cloud runners, ...
  • Dependencies: Common graph packages
  • Connectors: Examples for common databases and how to get a lot of data out
  • Demos!

See develop.md for more contributor information

Comments
  • Add TigerGraph capabilities to graph-app-kit

    Add TigerGraph capabilities to graph-app-kit

    Features

    • Adding TigerGraph connection helper
    • Adding TigerGraph server credential fields
    • Adding TigerGraph tutorial Readme

    Functionalities

    Created a fraud detection Streamlit dashboard using the TigerGraph fraud detection starter kit

    Additional Resources

    Creating a customized fraud dashboard using Dash and Bootstrap

    opened by akash-kaul 4
  • [ENH] graph-app-kit Quick Launch Stack needs update to v2.36.6

    [ENH] graph-app-kit Quick Launch Stack needs update to v2.36.6

    Describe the bug The Quick Launch instructions bring up the v2.35.9. Needs update to v2.36.6

    Expected behavior Clicking on "Launch Stack" launching the latest v2.36.6

    Observed behavior Clicking on "Launch Stack" launches the v2.35.9

    To Reproduce Steps to reproduce the behavior, ideally entirely copy-pastable for running on an out-of-the-box install

    1. Go to Quick Launch
    2. Click on 'Launch Stack'
    3. Wait for complete initialization
    4. See the version
    enhancement infra 
    opened by ffaghri1 3
  • [BUG] AWS neptune templates for p3.2, p3.16 fail to start

    [BUG] AWS neptune templates for p3.2, p3.16 fail to start

    Describe the bug

    Cloud formation for neptune fails on a p3.2 and p3.16 yet succeeds on a g4dn

    Reported by a Neptune user

    To Reproduce

    Run through Neptune tutorial and use a p3.16

    Expected behavior It launches

    Actual behavior Formation template stalls out and auto-deletes

    Working on getting logs. After 10min, GPU services (forge-etl-python + streamgl) failed to start. V100 issue?

    Screenshots

    Browser environment (please complete the following information): all

    PyGraphistry environment All

    Additional context Current graph-app-kit

    bug graphistry neptune aws 
    opened by lmeyerov 2
  • Request

    Request

    Hey Folks, I really much like what you do! Especially since you try to reduce complexity for a normally hard problem. Yet I'd super appreciate if you could reduce this a little further. Do you think that is possible? All that setup and stuff looks rather difficult to me. Would be great! Thank you.

    opened by ChrisDelClea 2
  • Bump streamlit from 1.9.0 to 1.11.1 in /src/python

    Bump streamlit from 1.9.0 to 1.11.1 in /src/python

    Bumps streamlit from 1.9.0 to 1.11.1.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 1
  • build(deps): bump protobuf from 3.13.0 to 3.15.0 in /src/python

    build(deps): bump protobuf from 3.13.0 to 3.15.0 in /src/python

    Bumps protobuf from 3.13.0 to 3.15.0.

    Release notes

    Sourced from protobuf's releases.

    Protocol Buffers v3.15.0

    Protocol Compiler

    • Optional fields for proto3 are enabled by default, and no longer require the --experimental_allow_proto3_optional flag.

    C++

    • MessageDifferencer: fixed bug when using custom ignore with multiple unknown fields
    • Use init_seg in MSVC to push initialization to an earlier phase.
    • Runtime no longer triggers -Wsign-compare warnings.
    • Fixed -Wtautological-constant-out-of-range-compare warning.
    • DynamicCastToGenerated works for nullptr input for even if RTTI is disabled
    • Arena is refactored and optimized.
    • Clarified/specified that the exact value of Arena::SpaceAllocated() is an implementation detail users must not rely on. It should not be used in unit tests.
    • Change the signature of Any::PackFrom() to return false on error.
    • Add fast reflection getter API for strings.
    • Constant initialize the global message instances
    • Avoid potential for missed wakeup in UnknownFieldSet
    • Now Proto3 Oneof fields have "has" methods for checking their presence in C++.
    • Bugfix for NVCC
    • Return early in _InternalSerialize for empty maps.
    • Adding functionality for outputting map key values in proto path logging output (does not affect comparison logic) and stop printing 'value' in the path. The modified print functionality is in the MessageDifferencer::StreamReporter.
    • Fixed protocolbuffers/protobuf#8129
    • Ensure that null char symbol, package and file names do not result in a crash.
    • Constant initialize the global message instances
    • Pretty print 'max' instead of numeric values in reserved ranges.
    • Removed remaining instances of std::is_pod, which is deprecated in C++20.
    • Changes to reduce code size for unknown field handling by making uncommon cases out of line.
    • Fix std::is_pod deprecated in C++20 (#7180)
    • Fix some -Wunused-parameter warnings (#8053)
    • Fix detecting file as directory on zOS issue #8051 (#8052)
    • Don't include sys/param.h for _BYTE_ORDER (#8106)
    • remove CMAKE_THREAD_LIBS_INIT from pkgconfig CFLAGS (#8154)
    • Fix TextFormatMapTest.DynamicMessage issue#5136 (#8159)
    • Fix for compiler warning issue#8145 (#8160)
    • fix: support deprecated enums for GCC < 6 (#8164)
    • Fix some warning when compiling with Visual Studio 2019 on x64 target (#8125)

    Python

    • Provided an override for the reverse() method that will reverse the internal collection directly instead of using the other methods of the BaseContainer.
    • MessageFactory.CreateProtoype can be overridden to customize class creation.

    ... (truncated)

    Commits
    • ae50d9b Update protobuf version
    • 8260126 Update protobuf version
    • c741c46 Resovled issue in the .pb.cc files
    • eef2764 Resolved an issue where NO_DESTROY and CONSTINIT were in incorrect order
    • 0040102 Updated collect_all_artifacts.sh for Ubuntu Xenial
    • 26cb6a7 Delete root-owned files in Kokoro builds
    • 1e924ef Update port_def.inc
    • 9a80cf1 Update coded_stream.h
    • a97c4f4 Merge pull request #8276 from haberman/php-warning
    • 44cd75d Merge pull request #8282 from haberman/changelog
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 1
  • docker-compose build gives error in windows 10 OS.

    docker-compose build gives error in windows 10 OS.

    Describe the bug I execute docker-compose build. Below are the console logs. It throws an error.

    D:\yusuf\graph-app-kit\src\docker>docker-compose build WARNING: The BASE_PATH variable is not set. Defaulting to a blank string. autoheal uses an image, skipping Building streamlit failed to get console mode for stdout: The handle is invalid. [+] Building 4.7s (8/15) [+] Building 4.8s (9/15) => [internal] load build definition from Dockerfile 0.1s => => transferring dockerfile: 32B 0.0s => [internal] load .dockerignore 0.0s => => transferring context: 2B 0.0s => [internal] load metadata for docker.io/graphistry/graphistry-forge-ba 2.0s => importing cache manifest from graphistry/graph-app-kit-st:latest 1.8s => [ 1/10] FROM docker.io/graphistry/graphistry-forge-base:v2.36.6-11.0@ 0.0s => [internal] load build context 0.0s: exit code: 126 => => transferring context: 229B 0.0s => CACHED [ 2/10] WORKDIR /app 0.0s => CACHED [ 3/10] COPY python/conda-app.sh ./ 0.0s => ERROR [ 4/10] RUN source activate rapids && ./conda-app.sh 0.8s

    [ 4/10] RUN source activate rapids && ./conda-app.sh: #9 0.756 /bin/bash: ./conda-app.sh: /bin/bash^M: bad interpreter: No such file or directory


    ERROR: Service 'streamlit' failed to build

    Expected behavior Work

    Observed behavior Error To Reproduce Clone the repo and then run docker-compose build

    Environment

    • Windows 10 version 2004 (OS Build 19041.867)
    • StreamLit Version 0.77.0
    • How you installed: git clone

    Additional context

    bug duplicate 
    opened by canbax 1
  • [FEA] Simplify adding dashboards

    [FEA] Simplify adding dashboards

    Is your feature request related to a problem? Please describe.

    Right now, adding a new dashboard means adding code via the file system or Jupyter, and then relaunching streamlit. That's hard and non-obvious. It should be fast and easy!

    Describe the solution you'd like

    • Clear docs
    • No need to manually restart streamlit via a CLI command

    Ex: Make the dashboard component updateable, and maybe even switch to reading a tracked file (def list_dashboards(): ...), so streamlit gracefully handles changes

    Describe alternatives you've considered

    • UI widget to add dashboards: Nice... but maybe v2, over something client-agnostic like ^^^
    • Ability to in-tool rebuild & restart container: many questions
    enhancement streamlit 
    opened by lmeyerov 1
  • Dev/tiger

    Dev/tiger

    Preparing merge of https://github.com/graphistry/graph-app-kit/pull/30

    Fixes:

    • [x] flake8 lint warnings
    • [x] missing plotly dependency
    • [x] badges (unrelated)
    • [x] propagate connection error message to user

    Adds:

    • [x] Docs: Setup flow for tg -> g-a-k
    • [ ] CI
    opened by lmeyerov 1
  • [ENH] conda

    [ENH] conda

    Support conda envs

    -- As an initial version, allow full user formulas, and have sandwiched: base conda+pip -> user conda -> user pip

    -- Later, figure out staged builds for base conda -> user conda -> base pip -> user pip

    -- Bonus: mamba instead of conda

    Ex:

    Dockerfile:

    COPY python/conda-app.sh ./
    ...
    RUN source activate rapids \
        && ./conda-app.sh \
        && pip install streamlit==0.68.0 \
        && pip install -r requirements-system.txt
    

    python/conda-app.sh:

    #!/bin/bash
    set -ex
    
    echo "=========================="
    echo "="
    echo "=  Conda app dependencies"
    echo "="
    echo "=========================="
    echo ""
    
    conda install -c conda-forge hdbscan=0.8.26
    
    echo "**** Successfull install conda app deps ***"
    
    opened by lmeyerov 1
  • [ENH] parallel instance support

    [ENH] parallel instance support

    A typical case is public vs private dashboards:

    • unbake streamlit container name to allow multi instance
    • move st port to ENV for easier .env

    Document

    • recipe for COMPOSE_PROJECT_NAME
    • ports
    • launch
    • multiple vol mounts
    documentation enhancement 
    opened by lmeyerov 1
  • [FEA] Pass viz params

    [FEA] Pass viz params

    Is your feature request related to a problem? Please describe.

    Graphistry url viz params are handy pass in via url, especially after the fact. Supporting that in the st component would be great!

    Describe the solution you'd like

    Default-on implicit url param passing. /public/views?pointSize=1.0 => graph.html?pointSize=1.0

    Default-on seems unsafe though.. so maybe opt-om" st_g.plot(url, propagate_url_params=True)

    Additional context

    Happened during a prototyping session..

    enhancement p4 
    opened by lmeyerov 0
  • Bump protobuf from 3.18 to 3.18.3 in /src/python

    Bump protobuf from 3.18 to 3.18.3 in /src/python

    Bumps protobuf from 3.18 to 3.18.3.

    Release notes

    Sourced from protobuf's releases.

    Protocol Buffers v3.18.3

    C++

    Protocol Buffers v3.18.2

    Java

    • Improve performance characteristics of UnknownFieldSet parsing (#9371)

    Protocol Buffers v3.18.1

    Python

    • Update setup.py to reflect that we now require at least Python 3.5 (#8989)
    • Performance fix for DynamicMessage: force GetRaw() to be inlined (#9023)

    Ruby

    • Update ruby_generator.cc to allow proto2 imports in proto3 (#9003)
    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • [FEA] Deprecate app switcher to new form

    [FEA] Deprecate app switcher to new form

    Streamlit now supports multipage apps, so we should switch to that to avoid confusion: https://blog.streamlit.io/introducing-multipage-apps/

    This will take a bit of research first:

    • [ ] deprecating handle legacy use: let's not break things, such as by an up-converter with a warning?
    • [ ] transforming legacy demos
    • [ ] new docs
    • [ ] handling scale: the new UI seems to do a list instead of a dropdown, which seems like a problem for use cases like ours where we have many, so this may also be difficult
    enhancement good first issue 
    opened by lmeyerov 0
  • [BUG]  Caddy healthcheck route missing

    [BUG] Caddy healthcheck route missing

    Describe the bug

    heathchecks against /caddy/health/ fail

    Expected behavior

    200

    because

    status 200 /caddy/health/

    should be in the Caddyfile

    Observed behavior not 200... because no such entry

    To Reproduce Steps to reproduce the behavior, ideally entirely copy-pastable for running on an out-of-the-box install

    1. Go to '...'
    2. Click on '....'
    3. Scroll down to '....'
    4. See error

    Screenshots If applicable, add screenshots to help explain your problem.

    Environment

    • OS [e.g., Ubuntu 18.04 LTS]
    • StreamLit Version [See src/python/requirements-system.txt, or date]
    • How you installed: [manual git, full aws quicklaunch, neptune minimal, ...],

    PyGraphistry 0.19.3

    Additional context Add any other context about the problem here.

    bug 
    opened by lmeyerov 0
  • [BUG] quicklaunch default stack names syntactically invalid

    [BUG] quicklaunch default stack names syntactically invalid

    Describe the bug Quicklaunch link names are like graph_app_kit, which cloud formation rejects due to underscores . See on Neptune docs, maybe others.

    Expected behavior Should be syntactically valid, like graph-app-kit

    bug 
    opened by lmeyerov 0
Owner
Graphistry
Visualize magnitudes more data in the browser.
Graphistry
Python lib to talk to pylontech lithium batteries (US2000, US3000, ...) using RS485

python-pylontech Python lib to talk to pylontech lithium batteries (US2000, US3000, ...) using RS485 What is this lib ? This lib is meant to talk to P

Frank 26 Dec 28, 2022
✔️ Visual, reactive testing library for Julia. Time machine included.

PlutoTest.jl (alpha release) Visual, reactive testing library for Julia A macro @test that you can use to verify your code's correctness. But instead

Pluto 68 Dec 20, 2022
Seeing if I can put together an interactive version of 3b1b's Manim in Streamlit

streamlit-manim Seeing if I can put together an interactive version of 3b1b's Manim in Streamlit Installation I had to install pango with sudo apt-get

Adrien Treuille 6 Aug 3, 2022
Competitive Programming Club, Clinify's Official repository for CP problems hosting by club members.

Clinify-CPC_Programs This repository holds the record of the competitive programming club where the competitive coding aspirants are thriving hard and

Clinify Open Sauce 4 Aug 22, 2022
Create UIs for prototyping your machine learning model in 3 minutes

Note: We just launched Hosted, where anyone can upload their interface for permanent hosting. Check it out! Welcome to Gradio Quickly create customiza

Gradio 11.7k Jan 7, 2023
One line to host them all. Bootstrap your image search case in minutes.

One line to host them all. Bootstrap your image search case in minutes. Survey NOW gives the world access to customized neural image search in just on

Jina AI 403 Dec 30, 2022
In this project I played with mlflow, streamlit and fastapi to create a training and prediction app on digits

Fastapi + MLflow + streamlit Setup env. I hope I covered all. pip install -r requirements.txt Start app Go in the root dir and run these Streamlit str

null 76 Nov 23, 2022
Simple streamlit app to demonstrate HERE Tour Planning

Table of Contents About the Project Built With Getting Started Prerequisites Installation Usage Roadmap Contributing License Acknowledgements About Th

Amol 8 Sep 5, 2022
A Deep learning based streamlit web app which can tell with which bollywood celebrity your face resembles.

Project Name: Which Bollywood Celebrity You look like A Deep learning based streamlit web app which can tell with which bollywood celebrity your face

BAPPY AHMED 20 Dec 28, 2021
A numpy-based implementation of RANSAC for fundamental matrix and homography estimation. The degeneracy updating and local optimization components are included and optional.

Description A numpy-based implementation of RANSAC for fundamental matrix and homography estimation. The degeneracy updating and local optimization co

AoxiangFan 9 Nov 10, 2022
Multi-modal Text Recognition Networks: Interactive Enhancements between Visual and Semantic Features

Multi-modal Text Recognition Networks: Interactive Enhancements between Visual and Semantic Features | paper | Official PyTorch implementation for Mul

null 48 Dec 28, 2022
Time-stretch audio clips quickly with PyTorch (CUDA supported)! Additional utilities for searching efficient transformations are included.

Time-stretch audio clips quickly with PyTorch (CUDA supported)! Additional utilities for searching efficient transformations are included.

Kento Nishi 22 Jul 7, 2022
Accelerated SMPL operation, commonly used in generate 3D human mesh, STAR included.

SMPL2 An enchanced and accelerated SMPL operation which commonly used in 3D human mesh generation. It takes a poses, shapes, cam_trans as inputs, outp

JinTian 20 Oct 17, 2022
A Peer-to-peer Platform for Secure, Privacy-preserving, Decentralized Data Science

PyGrid is a peer-to-peer network of data owners and data scientists who can collectively train AI models using PySyft. PyGrid is also the central serv

OpenMined 615 Jan 3, 2023
improvement of CLIP features over the traditional resnet features on the visual question answering, image captioning, navigation and visual entailment tasks.

CLIP-ViL In our paper "How Much Can CLIP Benefit Vision-and-Language Tasks?", we show the improvement of CLIP features over the traditional resnet fea

null 310 Dec 28, 2022
Securetar - A streaming wrapper around python tarfile and allow secure handling files and support encryption

Secure Tar Secure Tarfile library It's a streaming wrapper around python tarfile

Pascal Vizeli 2 Dec 9, 2022
A very tiny, very simple, and very secure file encryption tool.

Picocrypt is a very tiny (hence "Pico"), very simple, yet very secure file encryption tool. It uses the modern ChaCha20-Poly1305 cipher suite as well

Evan Su 1k Dec 30, 2022
Secure Distributed Training at Scale

Secure Distributed Training at Scale This repository contains the implementation of experiments from the paper "Secure Distributed Training at Scale"

Yandex Research 9 Jul 11, 2022
Paaster is a secure by default end-to-end encrypted pastebin built with the objective of simplicity.

Follow the development of our desktop client here Paaster Paaster is a secure by default end-to-end encrypted pastebin built with the objective of sim

Ward 211 Dec 25, 2022