Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

692 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project logo

License Latest Release on Github GitHub Stars Contributors Last Commit Open Issues Open PRs

Why Graph?

The Graph Data Platform - developed by the AI engineering team at the EPFL Center for Digital Education - is an open-source alternative to proprietary research information systems like Elsevier Pure. It federates educational and institutional data into a semantically interconnected knowledge graph of people, publications, labs, startups, courses, video lectures, and other educational resources. The GraphSearch application provides lightning-fast search and discovery of the knowledge graph, as well as LLM-powered chatbot interaction with the indexed resources.

List of Graph services:
Registry | AI | Ontology | Search | Chat | Dash | DB client | ES client

Graph Registry

Graph Registry is the first layer in the Graph Data Platform. It ingests data in JSON format through an ETL pipeline, and generates a knowledge graph that feeds the GraphSearch and GraphChat applications.

Data can be added to the registry through direct JSON file imports, or through a REST API. The actions steps in the knowledge graph construction are executed through a command line interface (CLI).

Installation

  1. (OPTIONAL) create a virtual environment with python -m venv venv and activate with source venv/bin/activate
  2. install the requirements with pip install -r requirements.txt
  3. you will also need to install vlc with sudo apt install vlc

Configuration

Copy the example_config.yaml file to config.yaml and edit it to give your graphai, elasticsearch and mysql credentials.

You may also need to copy the certificates for connecting to elasticsearch (by default in resources/certificates/).

You may also need to create the graphai-client JSON configuration file and give its location in the graphai.client_config_file section of your config.yaml file. It should look like this:

{
  "host": "https://graphai.epfl.ch",
  "port": 443,
  "user": "YOUR_GRAPHAI_USERNAME",
  "password": "YOUR_GRAPHAI_PASSWORD"
}

RUN

From the package root directory run:

uvicorn graphregistry.entrypoints.api.main:create_app --reload --factory

TEST

Example queries are available in the resources/api_request_examples/ directory for testing the API. Refer to the README.md file there for further information.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages