Skip to main content

GemmaNet - The Operating System for the AI Economy

Project description

GemmaNet

The Operating System for the AI Economy

PyPI version Python 3.11+ License: Apache 2.0 Tests

GemmaNet is a model-agnostic platform that turns any AI model into a node in a global AI services network. Provide services in 10 lines of code, consume them in 5. Whether you're running Gemma, Llama, Qwen, Mistral, or your own fine-tuned model, GemmaNet handles discovery, routing, load balancing, and credit transfers so you can focus on building great AI applications.

Features

  • Model Agnostic — Use any AI model: Gemma, Llama, Qwen, Mistral, or your own
  • Provide in 10 Lines — Register a node and start serving requests with minimal code
  • Consume in 5 Lines — Send tasks to the network and get results instantly
  • Earn Credits — Serve AI requests from other users and earn credits automatically
  • Smart Routing — Requests are routed to the best available node based on capability and load
  • Task Splitting — Large tasks are automatically split across multiple nodes for parallel processing
  • Built-in Credits — Integrated credit system for frictionless payments between nodes
  • Dashboard — Real-time web dashboard for monitoring nodes, tasks, and credit balances
  • Open Source — Apache 2.0 licensed, community-driven development

Quick Start

Installation

pip install gemmanet

Create a Node (Provider)

from gemmanet import Node

node = Node(
    name="my-echo-node",
    capabilities=["echo"],
    hub_url="ws://localhost:8000/ws/node",
)

@node.handler("echo")
async def handle_echo(task):
    return {"response": task.payload["text"]}

node.run()

Send a Task (Client)

from gemmanet import Client

client = Client(hub_url="http://localhost:8000")
result = client.send_task("echo", {"text": "Hello, GemmaNet!"})
print(result)

Documentation

How It Works

  1. Create Nodes — Register AI models as nodes with declared capabilities
  2. Connect — Nodes connect to the GemmaNet hub via WebSocket
  3. Route — The hub routes incoming tasks to the best available node
  4. Transfer Credits — Credits are automatically transferred from consumers to providers

Development

# Clone the repository
git clone https://github.com/gemmanet/gemmanet.git
cd gemmanet

# Create a virtual environment
python -m venv .venv
source .venv/bin/activate

# Install in development mode
pip install -e ".[dev]"

# Run tests
pytest tests/ -v --ignore=tests/test_e2e.py

# Lint
ruff check src/

Contributing

We welcome contributions! Please see CONTRIBUTING.md for guidelines on how to get started.

License

GemmaNet is licensed under the Apache License 2.0.


Disclaimer: Gemma is a trademark of Google LLC. GemmaNet is an independent open-source project and is not affiliated with, endorsed by, or sponsored by Google.

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

gemmanet-0.1.0a1.tar.gz (23.8 kB view details)

Uploaded Source

Built Distribution

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

gemmanet-0.1.0a1-py3-none-any.whl (24.1 kB view details)

Uploaded Python 3

File details

Details for the file gemmanet-0.1.0a1.tar.gz.

File metadata

  • Download URL: gemmanet-0.1.0a1.tar.gz
  • Upload date:
  • Size: 23.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.2

File hashes

Hashes for gemmanet-0.1.0a1.tar.gz
Algorithm Hash digest
SHA256 40001b4e8d4caaa58178330392efef94f1f4821f8fe9dc1d9b0c1e71c2d03561
MD5 22bb40f3183001d1997f6bb5dda292ae
BLAKE2b-256 6d1315269aa34fdb439b03f0c34cb6072b3c793226d328acfa8931503a4098dd

See more details on using hashes here.

File details

Details for the file gemmanet-0.1.0a1-py3-none-any.whl.

File metadata

  • Download URL: gemmanet-0.1.0a1-py3-none-any.whl
  • Upload date:
  • Size: 24.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.2

File hashes

Hashes for gemmanet-0.1.0a1-py3-none-any.whl
Algorithm Hash digest
SHA256 4251f261b8ac8030d75c7b02aa96ae684f71bcf800548a236598b402b3273e81
MD5 6f8a59738616f813621c1153d881b7e3
BLAKE2b-256 5ce68f53f73ddf939a2f4bfe825899f654d6424f8fc3848e59d78517f92f72ed

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