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.12.0.tar.gz (441.6 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.12.0-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: neurionpy-0.12.0.tar.gz
  • Upload date:
  • Size: 441.6 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.12.0.tar.gz
Algorithm Hash digest
SHA256 b4d0611c8c14fec8e28f38d2b5db14ae3780a6738f3752be20a2618b3d4c7284
MD5 17e707733e171d8cd4ab31248993c60f
BLAKE2b-256 52f8f4d861200f3c38b1f247475745bb1dffb92075b8a382975a3305711484f9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: neurionpy-0.12.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.12.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cc75151abfb43ae02416bb2226c0f0a70de544b6f77529148a048000bb2f0182
MD5 ff0599bbce11ba40263b979a1a5b5eee
BLAKE2b-256 7fe0483aefab26a89158cc771f4c9f06abfd9b5741baa64063ecce2574e64055

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