Integrating Akash Network: Decentralized Computing for Web3

We integrate Akash Network into your infrastructure to host AI inference (LLM, Stable Diffusion), blockchain nodes (Ethereum, Cosmos), DApp backends, and compute tasks on a decentralized cloud. Providers offer GPU/CPU power; clients manage workloads via SDL manifests; payment in AKT. Key advantage:

Blockchain Development Services

Frequently Asked Questions

Latest works

  • image_website-b2b-advance_0.webp
    B2B ADVANCE company website development
    1450
  • image_web-applications_feedme_466_0.webp
    Development of a web application for FEEDME
    1309
  • image_websites_belfingroup_462_0.webp
    Website development for BELFINGROUP
    1004
  • image_ecommerce_furnoro_435_0.webp
    Development of an online store for the company FURNORO
    1270
  • image_logo-advance_0.webp
    B2B Advance company logo design
    719
  • image_crm_enviok_479_0.webp
    Development of a web application for Enviok
    1011

We integrate Akash Network into your infrastructure to host AI inference (LLM, Stable Diffusion), blockchain nodes (Ethereum, Cosmos), DApp backends, and compute tasks on a decentralized cloud. Providers offer GPU/CPU power; clients manage workloads via SDL manifests; payment in AKT. Key advantage: support for standard Docker containers without custom runtime, simplifying migration of existing applications. Typical scenario: an ML team needs to deploy an inference server for Llama 3 on GPU, but AWS or GCP are expensive, and Kubernetes is overkill. Akash allows running the same Docker image on decentralized providers with savings up to 50% and full blockchain control.

How the SDL Manifest Works and Why It's Critical

Stack Definition Language (SDL) is a YAML format for describing deployments. It looks like docker-compose but has differences that can break deployment without preparation. Here's an example manifest for an inference server:

--- version: "2.0" services: inference-api: image: your-org/llm-inference:sha256-abc123 expose: - port: 8080 as: 80 to: - global: true env: - MODEL_PATH=/models/llama-7b - MAX_CONCURRENT=4 resources: cpu: units: 4.0 memory: size: 16Gi storage: - size: 50Gi attributes: persistent: true class: beta3 profiles: compute: inference-api: resources: cpu: units: 4 memory: size: 16Gi gpu: units: 1 attributes: vendor: nvidia: - model: rtx3090 placement: dcloud: pricing: inference-api: denom: uakt amount: 1000 deployment: inference-api: dcloud: profile: inference-api count: 1 

Akash Network Documentation highlights the importance of persistent: true for data surviving restarts. Without it, the container starts fresh when moved to another provider. Use class: beta3 (NVMe) for high IOPS — critical for ML models and databases.

SDL pitfalls:

  • persistent storage — mandatory for data that must survive container restarts. Without it, ephemeral storage.
  • Storage class — beta3 (NVMe) is significantly faster than beta2 (HDD). IOPS difference is critical for DBs and ML models.
  • Image pinning — use digest (sha256) instead of latest tag. Providers cache images, so latest may differ.
  • GPU resources — not available on all providers. Specifying exact model (rtx3090, a100) narrows the pool but guarantees compatibility.
  • Missing health check — deployment gets no IP, and you'll pay even for a non-working service.
  • Wrong port expose — the application will be inaccessible externally.

How to Programmatically Deploy to Akash

For automation from your application, we use the Akash JavaScript SDK or direct REST API calls (Cosmos-based). Below is an example of creating a deployment via SDK:

import { Registry, DirectSecp256k1HdWallet } from "@cosmjs/proto-signing"; import { SigningStargateClient } from "@cosmjs/stargate"; import { MsgCreateDeployment } from "@akashnetwork/akash-api/akash/deployment/v1beta3"; const AKASH_RPC = "https://rpc.akashnet.net:443"; const AKASH_DENOM = "uakt"; async function createDeployment(sdlContent: string, walletMnemonic: string) { const wallet = await DirectSecp256k1HdWallet.fromMnemonic(walletMnemonic, { prefix: "akash", }); const [account] = await wallet.getAccounts(); const client = await SigningStargateClient.connectWithSigner(AKASH_RPC, wallet, { registry: new Registry(/* akash proto types */), }); const dseq = Math.floor(Date.now() / 1000); const msg = { typeUrl: "/akash.deployment.v1beta3.MsgCreateDeployment", value: MsgCreateDeployment.fromPartial({ id: { owner: account.address, dseq: BigInt(dseq), }, groups: parseSDLGroups(sdlContent), deposit: { denom: AKASH_DENOM, amount: "5000000" }, }), }; const result = await client.signAndBroadcast( account.address, [msg], { amount: [{ denom: AKASH_DENOM, amount: "20000" }], gas: "800000" } ); return { dseq, txHash: result.transactionHash }; } 

After deployment creation, an auction starts: providers place bids, the client selects the best and creates a lease. This is an asynchronous process — you need to subscribe to blockchain events (WebSocket or polling).

async function watchBidsAndCreateLease(dseq: number, ownerAddress: string) { const bids = await pollBids(dseq, ownerAddress, { timeoutMs: 120000 }); if (bids.length === 0) throw new Error("No bids received"); const bestBid = bids.sort((a, b) => Number(a.bid.price.amount) - Number(b.bid.price.amount) )[0]; await createLease(bestBid.bid.bidId, wallet); await sendManifestToProvider(bestBid.bid.bidId.provider, dseq, sdlContent); } 

How to Manage the Deployment Lifecycle

After lease creation, the deployment is managed via the Provider Service API — HTTP endpoints of the provider. The endpoint is obtained from on-chain provider data.

async function getDeploymentStatus(providerAddress: string, dseq: number, owner: string) { const providerInfo = await queryProviderInfo(providerAddress); const providerHost = providerInfo.hostUri; const response = await fetch( `${providerHost}/lease/${owner}/${dseq}/1/1/status`, { headers: { Authorization: `Bearer ${await getProviderToken()}` } } ); return response.json(); } 

For production, we integrate monitoring via Prometheus/Grafana, running a sidecar container in the same deployment. We regularly check the deposit balance — when exhausted, the deployment terminates without recovery. To avoid this, we set up automatic refills.

Which Workloads Are Best Suited for Akash?

Workload Type Requirements Recommendations
AI inference GPU, persistent storage for models Init-container for downloading, health check with 5–10 minute timeout
Blockchain nodes 1+ TB persistent, UDP for P2P Use snapshot bootstrap, specify proto: UDP in expose
Stateless backends Minimal resources Horizontal scaling via count, external load balancer
Databases Persistent, I/O Only with replication; critical data outside Akash

Pricing and Cost Control

Cost is denominated in uAKT per block (~6 seconds). For pre-deployment estimation, use the Cloudmos API: send the SDL and get the price per block. Typical price for ML inference with RTX 3090 GPU is a few tens of cents per hour, offering significant savings compared to cloud providers. For production, we configure automatic deposit refills — otherwise the deployment shuts down without warning.

Comparison of Manual and Programmatic Deployment

Method Setup Time Automation Scaling
Manual (CLI) 1–3 days None Manual
Programmatic (SDK) 1–2 weeks Full Event-driven
Full (EVM integration) 3–5 weeks On-chain escrow Via smart contract

What's Included in the Work

  • Analysis of your application and preparation of the SDL manifest
  • Development of deployment scripts (CLI or programmatic integration)
  • Monitoring and alerting setup
  • Integration with EVM contracts (optional)
  • Documentation and team training
  • Post-launch support

Experience: 5+ years in Web3, 30+ projects in decentralized computing integration. We use Foundry, Cosmos SDK, and TypeScript.

Integration Timelines

  • Basic (manual SDL, CLI) — 1 to 3 days
  • Programmatic (automated deployment, monitoring) — 1 to 2 weeks
  • Full (EVM contract, escrow, lifecycle) — 3 to 5 weeks

We'll evaluate your project within 1–2 business days. Contact us to discuss details. Get a consultation on Akash integration.