Code Monkey home page Code Monkey logo

sage's Introduction

Sage

Sage is an open source Knowledge Graph used to represent linked data. It comprises a variety of features that make it stand out amongst other (open source) Knowledge Graphs.

CI Audit Appveyor Build status Travis Build Status GitHub issues License Apache-2.0

Features / Advantages

  • Usage

    • Easy to get started
    • Simple & intuitive Query API
  • Features

    • Built-in visualizer
    • Multi-schema support
    • REST / GraphQL API
    • Command line interface
  • Machine Learning

    • Natural Language Processing
    • Semantic parser
    • Graph Neural Network
    • Graph embedding
  • Bonus

    • Written in Rust (lightning fast)
    • Community driven
    • Multi-threaded / non-blocking
    • Support for Python sage-py - for Machine Learning tasks
    • Support for JavaScript sage-js for Web Assembly & Mobile integration

Usage

Add this to your [dependencies] section in your Cargo.toml file.

[dependencies]
sage = "0.4"

Other Language Support

Other supporting projects that extend the functionality of sage to other programming languages.

  • sage-py - Python bindings for Natural Language Processing.
  • sage-js - JavaScript for visualization, web assembly & mobile integration.
  • sage-graph - Underlying graph data structure behind sage.

Contribution

You are very welcome to modify and use them in your own projects.

Please keep a link to the original repository. If you have made a fork with substantial modifications that you feel may be useful, then please open a new issue on GitHub with a link and a short description.

License (Apache)

This project is opened under the Apache License 2.0 which allows very broad use for both private and commercial purposes.

A few of the images used for demonstration purposes may be under copyright. These images are included under the "fair usage" laws.

sage's People

Contributors

shi-on avatar victor-iyi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

sage's Issues

RUSTSEC-2020-0071: Potential segfault in the time crate

Potential segfault in the time crate

Details
Package time
Version 0.1.43
URL time-rs/time#293
Date 2020-11-18
Patched versions >=0.2.23
Unaffected versions =0.2.0,=0.2.1,=0.2.2,=0.2.3,=0.2.4,=0.2.5,=0.2.6

Impact

Unix-like operating systems may segfault due to dereferencing a dangling pointer in specific circumstances. This requires an environment variable to be set in a different thread than the affected functions. This may occur without the user's knowledge, notably in a third-party library.

The affected functions from time 0.2.7 through 0.2.22 are:

  • time::UtcOffset::local_offset_at
  • time::UtcOffset::try_local_offset_at
  • time::UtcOffset::current_local_offset
  • time::UtcOffset::try_current_local_offset
  • time::OffsetDateTime::now_local
  • time::OffsetDateTime::try_now_local

The affected functions in time 0.1 (all versions) are:

  • at
  • at_utc

Non-Unix targets (including Windows and wasm) are unaffected.

Patches

Pending a proper fix, the internal method that determines the local offset has been modified to always return None on the affected operating systems. This has the effect of returning an Err on the try_* methods and UTC on the non-try_* methods.

Users and library authors with time in their dependency tree should perform cargo update, which will pull in the updated, unaffected code.

Users of time 0.1 do not have a patch and should upgrade to an unaffected version: time 0.2.23 or greater or the 0.3. series.

Workarounds

No workarounds are known.

References

time-rs/time#293

See advisory page for additional details.

RUSTSEC-2021-0141: dotenv is Unmaintained

dotenv is Unmaintained

Details
Status unmaintained
Package dotenv
Version 0.15.0
URL dotenv-rs/dotenv#74
Date 2021-12-24

dotenv by description is meant to be used in development or testing only.

Using this in production may or may not be advisable.

Alternatives

The below may or may not be feasible alternative(s):

See advisory page for additional details.

RUSTSEC-2020-0159: Potential segfault in `localtime_r` invocations

Potential segfault in localtime_r invocations

Details
Package chrono
Version 0.4.19
URL chronotope/chrono#499
Date 2020-11-10

Impact

Unix-like operating systems may segfault due to dereferencing a dangling pointer in specific circumstances. This requires an environment variable to be set in a different thread than the affected functions. This may occur without the user's knowledge, notably in a third-party library.

Workarounds

No workarounds are known.

References

See advisory page for additional details.

Re-structure the Sage project scope and architecture

Sage is the software stack of a much bigger project called "Enhancing Human Intelligence" which has had 3 publications so far.


It consists of several sub-systems including sage-ai (which is a multimodal action model with several AI agents), a decoder system that interprets brain signals into natural language, dual learning system, etc. All of these sub-system should be tightly integrated within Sage.

As the project evolves so does the scope of the Sage system. The initial goal of Sage was to be an open source knowledge graph with AI features such as Graph Neural Networks, Graph Embeddings, Semantic search etc in order to understand the world and relationships around real world objects/entities. However, there has been technological advancements that makes this approach obsolete.


Rather than have Sage be an Open source knowledge graph, Sage will now be a BCI system that decodes human brain signals into natural language, interprets them, processes the signals with sage-ai and perform actions based on the signals or natural language input.

Features of Sage

  • Use decoded natural language/IR as input to sage-ai
  • Perform actions suggested by sage-ai's response
  • ๐Ÿ”ฌ Decode brain signals into natural language or intermediate representation
  • ๐Ÿ”ฌ Filter response to be encoded as signals to be transmitted into the brain
  • ๐Ÿ”ฌ Dual Learning System

A lot of Sage's sub-system is still in the research phase ๐Ÿ”ฌ.

Such system would be built iteratively. The goal is to have sage v0.1.0 be a system that can work with natural language and perform actions based on the contents of the language using many tools that will be provided by Sage and SageAI.

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.