Image Upscaler by Each AI

each-upscaler

Image Upscaler by Each AI improves image resolution and sharpness without losing detail, ideal for professional use.

A100 40GB
Fast Inference
REST API

Model Information

Response Time~53 sec
StatusActive
Version
0.0.1
Updated10 days ago

Prerequisites

  • Create an API Key from the Eachlabs Console
  • Install the required dependencies for your chosen language (e.g., requests for Python)

API Integration Steps

1. Create a Prediction

Send a POST request to create a new prediction. This will return a prediction ID that you'll use to check the result. The request should include your model inputs and API key.

import requests
import time
API_KEY = "YOUR_API_KEY" # Replace with your API key
HEADERS = {
"X-API-Key": API_KEY,
"Content-Type": "application/json"
}
def create_prediction():
response = requests.post(
"https://api.eachlabs.ai/v1/prediction/",
headers=HEADERS,
json={
"model": "each-upscaler",
"version": "0.0.1",
"input": {
"mask": "your_file.image/jpeg",
"seed": "1337",
"image": "your_file.image/jpeg",
"prompt": "masterpiece, best quality, highres, <lora:more_details:0.5> <lora:SDXLrender_v2.0:1>",
"dynamic": "6",
"handfix": "disabled",
"pattern": false,
"sharpen": "0",
"sd_model": "juggernaut_reborn.safetensors [338b85bc4f]",
"scheduler": "DPM++ 3M SDE Karras",
"creativity": "0.35",
"lora_links": "your lora links here",
"downscaling": false,
"resemblance": "0.6",
"scale_factor": "2",
"tiling_width": "112",
"output_format": "png",
"tiling_height": "144",
"custom_sd_model": "your custom sd model here",
"negative_prompt": "(worst quality, low quality, normal quality:2) JuggernautNegative-neg",
"num_inference_steps": "18",
"downscaling_resolution": "768"
}
}
)
prediction = response.json()
if prediction["status"] != "success":
raise Exception(f"Prediction failed: {prediction}")
return prediction["predictionID"]

2. Get Prediction Result

Poll the prediction endpoint with the prediction ID until the result is ready. The API uses long-polling, so you'll need to repeatedly check until you receive a success status.

def get_prediction(prediction_id):
while True:
result = requests.get(
f"https://api.eachlabs.ai/v1/prediction/{prediction_id}",
headers=HEADERS
).json()
if result["status"] == "success":
return result
elif result["status"] == "error":
raise Exception(f"Prediction failed: {result}")
time.sleep(1) # Wait before polling again

3. Complete Example

Here's a complete example that puts it all together, including error handling and result processing. This shows how to create a prediction and wait for the result in a production environment.

try:
# Create prediction
prediction_id = create_prediction()
print(f"Prediction created: {prediction_id}")
# Get result
result = get_prediction(prediction_id)
print(f"Output URL: {result['output']}")
print(f"Processing time: {result['metrics']['predict_time']}s")
except Exception as e:
print(f"Error: {e}")

Additional Information

  • The API uses a two-step process: create prediction and poll for results
  • Response time: ~53 seconds
  • Rate limit: 60 requests/minute
  • Concurrent requests: 10 maximum
  • Use long-polling to check prediction status until completion

Related AI Models

flux-canny-pro

Flux Canny Pro

flux-canny-pro

Image to Image
flux-depth-dev

Flux Depth Dev

flux-depth-dev

Image to Image
recraft-creative-upscale

Recraft Creative Upscale

recraft-creative-upscale

Image to Image
stable-diffusion-inpainting

Stable Diffusion Inpainting

stable-diffusion-inpainting

Image to Image