---
title: Examples | Runware Docs
url: https://runware.ai/docs/serverless/examples
description: Apps you can deploy as they are, each one the shortest way to learn a thing the others do not teach.
relatedDocuments:
  - https://runware.ai/docs/serverless/writing-a-model
  - https://runware.ai/docs/serverless/quickstart
---
## Introduction

Every example here is a working app rather than an excerpt. **The code on each page is read from the file that is deployed and tested**, so what you copy is what runs.

Each one earns its place by **teaching something the others do not**.

They live in [`runware-serverless-examples`](https://github.com/Runware/runware-serverless-examples), where **each one carries its own README** with the deploy command and a call for every endpoint.

All

Getting started

Endpoints and routing

Requests and responses

Models and weights

Hardware and scale

Configuration and credentials

- [![](https://runware.ai/docs/assets/cover.epRCigc8_ZGKBQj.webp)
    
    ### Your first app
    
    The smallest app that runs: two endpoints, no weights, no GPU work. Deploy it to check the platform end to end.
    
    ](https://runware.ai/docs/serverless/examples/echo)
- [![](https://runware.ai/docs/assets/cover.CvM174oj_1gWEgR.webp)
    
    ### Two endpoints in one app
    
    Put two endpoints with different request shapes in one app, and learn where the GPU choice actually lives.
    
    ](https://runware.ai/docs/serverless/examples/image-tools)
- [![](https://runware.ai/docs/assets/cover.DB8bbfGd_Z2f8RLF.webp)
    
    ### Typed requests and responses
    
    Describe your API with Pydantic models so callers see every field, and so defaults reach your handler instead of nulls.
    
    ](https://runware.ai/docs/serverless/examples/typed-endpoints)
- [![](https://runware.ai/docs/assets/cover.ewMaqzQ-_1250au.webp)
    
    ### Taking an image as input
    
    Accept an image and return one, using the annotations that decode base64 into pixels before your handler runs.
    
    ](https://runware.ai/docs/serverless/examples/watermark)
- [![](https://runware.ai/docs/assets/cover.hTdvMRU4_Wzu.webp)
    
    ### Running a model with weights
    
    Load a real model on a GPU: where the imports go, how to declare dependencies, and why weights belong on a volume.
    
    ](https://runware.ai/docs/serverless/examples/loading-weights)
- [![](https://runware.ai/docs/assets/cover.nmHtpJjE_AMINM.webp)
    
    ### Generating an image and removing its background
    
    Run two models in one request so the image between them never leaves the worker, which no managed API can do.
    
    ](https://runware.ai/docs/serverless/examples/chained-steps)
- [![](https://runware.ai/docs/assets/cover.Dfq2dOAU_ZywKav.webp)
    
    ### Running a language model
    
    Serve chat completions from your own weights, with a request shape you define, and see where it stops scaling.
    
    ](https://runware.ai/docs/serverless/examples/chat-endpoint)
- [![](https://runware.ai/docs/assets/cover.BJgGe0Y7_ZO11t9.webp)
    
    ### Using more than one GPU
    
    Run a worker across several cards, where every rank executes your handler and only the first one answers.
    
    ](https://runware.ai/docs/serverless/examples/multi-gpu)
- [![](https://runware.ai/docs/assets/cover.BDtPF6NH_Zml3AJ.webp)
    
    ### Secrets and environment variables
    
    Read configuration and credentials on a worker, and see what the platform will and will not give you back.
    
    ](https://runware.ai/docs/serverless/examples/config-and-secrets)