Skip to main content

Python library with the neurion networks

Project description

NeurionPy

NeurionPy is the official Python SDK for interacting with the Neurion blockchain, a Cosmos SDK-based network designed for privacy-preserving AI, federated learning, and decentralized automation. NeurionPy provides developers with all the necessary tools to create wallets, sign transactions, and interact with various modules on the blockchain.

Features

  • Wallet Management: Generate wallets from private keys, mnemonics, or existing addresses.
  • Transaction Signing: Sign and broadcast transactions securely.
  • Querying the Blockchain: Retrieve blockchain state, account balances, and contract data.
  • Module Interactions: Full support for all Neurion modules:
    • Sanctum: Privacy-preserving dataset sharing and usage requests.
    • Crucible: Federated learning, model training, and validation.
    • Fusion: AI model aggregation and dispute resolution.
    • Ganglion: AI agent and workflow automation.
  • GRPC & REST Support: Seamlessly interact with the Neurion blockchain via GRPC and REST APIs.

Installation

Install NeurionPy using pip:

pip install neurionpy

Package available on PyPI: NeurionPy

Getting Started

Importing NeurionPy

import grpc
from neurionpy.synapse.client import NeurionClient, NetworkConfig
from neurionpy.synapse.wallet import LocalWallet

Creating a Wallet

wallet = LocalWallet.from_mnemonic(
    "your mnemonic here",
    "neurion"
)
print("Address:", wallet.address)

Connecting to Neurion

client = NeurionClient(NetworkConfig.neurion_localnet(), wallet)

Module Interactions

Below are examples of interactions with the different Neurion modules. More operations are supported; refer to the API documentation for the full list.

Sanctum (Privacy-Preserving Dataset Management)

Example: Submitting a Dataset Application

tx = client.sanctum.tx.SubmitDatasetApplication(
    message=MsgSubmitDatasetApplication(
        creator=str(wallet.address()),
        encrypted_data_link="https://encrypted_data_link",
        explanation_link="https://explanation_link",
        contact="contact",
        stake=100000000,
        proof_of_authenticity="proof_of_authenticity",
        dataset_usage_fee=100000000
    )
)
print(f"TX {tx.tx_hash} submitted.")

Other available Sanctum operations:

  • Approve dataset applications
  • Request to use datasets
  • Manage dataset processing

Crucible (Federated Learning & Model Validation)

Example: Registering as a Model Trainer

tx = client.crucible.tx.RegisterTrainer(
    message=MsgRegisterTrainer(
        creator=str(wallet.address()),
        task_id=1
    )
)
print(f"Trainer Registration TX: {tx.tx_hash}")

Other available Crucible operations:

  • Submit training results
  • Stake tokens to tasks
  • Report model plagiarism

Fusion (AI Model Aggregation & Dispute Resolution)

Example: Proposing a Model for a Task

tx = client.fusion.tx.ProposeModel(
    message=MsgProposeModel(
        creator=str(wallet.address()),
        task_id=1,
        model_link="https://model_link",
        metadata_link="https://metadata_link"
    )
)
print(f"Model Proposal TX: {tx.tx_hash}")

Other available Fusion operations:

  • Register as a proposer or validator
  • Dispute model scores
  • Claim rewards from tasks

Ganglion (AI Agent & Workflow Automation)

Example: Registering an AI Agent (Ion)

tx = client.ganglion.tx.RegisterIon(
    message=MsgRegisterIon(
        capacities=["SCRAPER", "EXTRACTOR"],
        stake=10000000,
        endpoints=["http://localhost", "http://66.63.66.66"],
        description="A scraper and extractor",
        input_schema='{"name":"string","flag":"boolean"}',
        output_schema='{"another_flag":"boolean","fullname":"string"}',
        fee_per_thousand_calls=18,
    )
)
print(f"Ion Registration TX: {tx.tx_hash}")

Other available Ganglion operations:

  • Report and validate Ions
  • Register and update pathways
  • Stake and claim rewards from Ganglion

License

This project is licensed under the MIT License.

Disclaimer

Use NeurionPy at your own risk. Ensure you store private keys securely and follow best security practices when interacting with blockchain assets.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

neurionpy-0.15.0.tar.gz (442.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

neurionpy-0.15.0-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file neurionpy-0.15.0.tar.gz.

File metadata

  • Download URL: neurionpy-0.15.0.tar.gz
  • Upload date:
  • Size: 442.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.1 CPython/3.9.21 Linux/6.8.0-1021-azure

File hashes

Hashes for neurionpy-0.15.0.tar.gz
Algorithm Hash digest
SHA256 44df0e1fade79aa279b05c5737143f1e756b203edb77e76e09075132d82049d1
MD5 553ed0f4f802023e1ddf70fceb03cd01
BLAKE2b-256 d6bef4e399706722fd599b287ca8cbd3e6eb77646c15bc2b74264ec740f3b281

See more details on using hashes here.

File details

Details for the file neurionpy-0.15.0-py3-none-any.whl.

File metadata

  • Download URL: neurionpy-0.15.0-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.1 CPython/3.9.21 Linux/6.8.0-1021-azure

File hashes

Hashes for neurionpy-0.15.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c2e7ce8fd00495fe2977e09f1ae45f9f35f46c435a9ead3a48df3095d31eed9c
MD5 a9096c2ac7db49f084f325cb77a9c1be
BLAKE2b-256 518dd9fd8d85f9a5a0076a07b8b72b24a675bfb2f2dbfdae87a06665fd16969c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page