MCPcopy Create free account
hub / github.com/alibaba/graph-learn

github.com/alibaba/graph-learn @v1.2.0a1

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.2.0a1 ↗ · + Follow
5,785 symbols 15,899 edges 721 files 611 documented · 11% updated 12mo agov1.1.0 · 2022-10-09★ 1,34015 open issues

Browse by type

Functions 4,782 Types & classes 1,001 Endpoints 2
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

GL graphlearn-training-pypi docs graph-learn CI License

Documentation

简体中文 | English

Graph-Learn (formerly AliGraph) is a distributed framework designed for the development and application of large-scale graph neural networks. It has been successfully applied to many scenarios within Alibaba, such as search recommendation, network security, and knowledge graph. After Graph-Learn 1.0, we added online inference services to the Graph-Learn framework, providing a complete solution including training and inference for GNNs to be used in real business.

  • GraphLearn-Training

The training framework, supports sampling on batch graphs, training offline or incremental GNN models.

It provides both Python and C++ interfaces for graph sampling operations and provides a gremlin-like GSL (Graph Sampling Language) interface. For GNN models, Graph-Learn provides a set of paradigms and processes for model development. It is compatible with both TensorFlow and PyTorch, and provides data layer, model layer interfaces and rich model examples.

Detail

  • Dynamic-Graph-Service

An online inference service, supports real-time sampling on dynamic graphs with streaming graph updates.

It provides a performance guarantee of sampling P99 latency in 20ms on large-scale dynamic graphs. The Client side of the Online Inference Service provides Java GSL interfaces and Tensorflow Model Predict.

Detail

Use GraphLearn-Training and Dynamic-Graph-Service for training and inference.

overview 1. A user initiates a request on the Web (0), samples in real time on the dynamic graph via the Client side (1), uses the samples as model input, and requests the prediction results from the Model service (3). 2. the prediction results, feedback, and some context on the Web are sent to the Data Hub (0, 3), eg, Log Service. 3. data updates streamingly flow into the Dynamic Graph Service as graph updates (4). 4. GraphLearn-Training hourly loads window of graph data, incremental trains models, and updates model on tensorflow Model service.

Citation

Please cite the following paper in your publications if Graph-Learn helps your research.

@article{zhu2019aligraph,
  title={AliGraph: a comprehensive graph neural network platform},
  author={Zhu, Rong and Zhao, Kun and Yang, Hongxia and Lin, Wei and Zhou, Chang and Ai, Baole and Li, Yong and Zhou, Jingren},
  journal={Proceedings of the VLDB Endowment},
  volume={12},
  number={12},
  pages={2094--2105},
  year={2019},
  publisher={VLDB Endowment}
}

License

Apache License 2.0.

Extension points exported contracts — how you extend this code

Core symbols most depended-on inside this repo

Shape

Method 4,022
Class 976
Function 760
Enum 24
Route 2
Interface 1

Languages

C++68%
Python26%
Java6%

Modules by API surface

graphlearn/src/common/base/closure.h377 symbols
dynamic_graph_service/ci/cpplint.py187 symbols
graphlearn/python/gsl/dag_node.py85 symbols
graphlearn/python/data/values.py80 symbols
graphlearn/python/c/py_wrapper.h77 symbols
graphlearn/src/common/threading/sync/lock.h65 symbols
graphlearn/src/actor/operator/batch_generator.cc59 symbols
graphlearn/src/include/graph_request.h57 symbols
graphlearn/src/service/request/graph_lookup_request.cc50 symbols
graphlearn/python/graph.py49 symbols
graphlearn/python/tests/utils.py47 symbols
dynamic_graph_service/src/core/io/record_view.h45 symbols

For agents

$ claude mcp add graph-learn \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page