ASIMOV is a polyglot development platform for trustworthy neurosymbolic machine intelligence.
[Features] | [Prerequisites] | [Installation] | [Examples] | [Reference] | [Development]
- Available both as the command-line tool
asimovand a polyglot library. - Defines flow-based program patterns for refining data into knowledge.
- Implements a module system enabling an ecosystem of modules.
- Enables dataflow systems through reusable components called blocks.
- Polyglot software (soon!) available for Dart, Python, Ruby, Rust, and TypeScript.
- Cuts red tape: 100% free and unencumbered public domain software.
Installation for Rust from Crates.io
Installation from Crates.io
cargo add asimov-sdk --rename asimovInstallation for JavaScript/TypeScript from NPM
Installation from NPM
npm install asimov.js@dev
bun add asimov.js
pnpm add asimov.js
yarn add asimov.jsInstallation for Dart from Pub.dev
Installation from Pub.dev
dart pub add asimov
flutter pub add asimovInstallation for Python from PyPI
Installation from PyPI
pip install -U asimov.py
uv add asimov.py
poetry add asimov.py
pdm add asimov.pyInstallation for Ruby from RubyGems
Installation from RubyGems
gem install asimov.rb --pre
bundle add asimov.rb-
Module: A collection of systems and blocks, packaged as a reusable unit.
-
System: A collection of blocks that are connected together. Systems are the top-level entities in dataflow programs.
-
Block: An encapsulated system component that processes messages. Blocks are the autonomous units of computation in a system.
-
Port: A named connection point on a block that sends or receives messages. Ports are the only interfaces through which blocks communicate with each other.
-
Message: A unit of data that flows between blocks in a system, from port to port.
git clone https://github.com/asimov-platform/asimov-sdk.git