Skip to content

Usage Limits & Optimization

Understanding platform limits and optimization strategies for efficient resource usage.

Overview

Noorle's built-in capabilities are designed for high performance with generous limits. This guide covers usage boundaries and optimization techniques for maximizing efficiency while managing costs.

Capability Limits

Web Fetch

LimitValueNotes
Response Size200KBIncluded per request
Large Responses>200KBCount as multiple requests
Timeout30 secondsConfigurable
Rate Limit100/minutePer user
Cache Duration15 minutesAutomatic

Optimization Tips:

  • Use cache for repeated fetches
  • Request only needed content types
  • Batch related fetches
LimitStandardDeep
Query Length200 chars500 chars
Results per Search1020
Rate Limit60/minute30/minute
Cache Duration5 minutes5 minutes

Optimization Tips:

  • Use specific queries to reduce result processing
  • Cache searches for recurring queries
  • Choose appropriate mode for use case

Code Runner

LimitValueNotes
Instantiation<10msOverhead per execution
Memory128MBPer execution
CPU TimeMax 100msMaximum CPU time
Timeout30 secondsMaximum execution time
Code Size10KBMaximum code length
Output Size1MBConsole output
Package AccessStandard library onlyUse VM for external packages
Network AccessDisabledNo HTTP requests
File OperationsDisabledNo file read/write
Concurrent ExecutionsUnlimitedEach isolated

Optimization Tips:

  • Keep executions under 100ms CPU time for optimal performance
  • Process data in chunks for large datasets
  • Use efficient algorithms and data structures
  • Consider Virtual Machine for complex operations or external packages

Virtual Machine

LimitValueNotes
Sizes AvailableXS to XL5 predefined sizes
vCPU Range0.5 - 8.0Based on selected size
Memory Range512MB - 8GBBased on selected size
Idle Timeout10 minutesAuto-terminates if idle
Containers per Session1One active at a time
Package InstallationUnlimitedAny Python/Node/system packages
NetworkOutbound onlyNo inbound connections
Pricing$0.000015/secBase rate (XS), larger sizes are multiples

Optimization Tips:

  • Choose the right size for your workload (start small, scale up as needed)
  • Use Code Runner for simple operations that don't need packages
  • Monitor costs - VMs auto-terminate after 10 min idle to save money

HTTP Client

LimitValueNotes
Request Body2MBMaximum size
Response Body2MBMaximum size
TimeoutConfigurableDefault 30s, min 1s, max 300s
Rate Limit1000/minutePer user
Redirects10Maximum chain

Optimization Tips:

  • Implement retry logic with exponential backoff
  • Use connection pooling for same host
  • Compress large payloads

Files

LimitValueNotes
Per-File Size10 MBAll scopes
Files per Scope1,000 filesEach scope independently
working Lifetime48 hours inactiveAutomatic cleanup
input LifetimePersistentUntil manually deleted
output LifetimePersistentUntil manually deleted

Optimization Tips:

  • Use working scope for temporary processing (free)
  • Only store results in input/output scopes (paid)
  • Clean up unneeded files to minimize storage costs

Knowledge Retrieval

LimitValueNotes
Query Length500 charsSearch query
Results per Search100Maximum
Document Size10MBPer document
Index Size10GBPer knowledge base
Concurrent Searches100/secondPer knowledge base

Optimization Tips:

  • Pre-filter with metadata before searching
  • Use appropriate chunk sizes
  • Cache frequent queries

Plugins (WASM)

LimitValueNotes
Memory128MB (default), 512MB (max)Per invocation
CPU TimeMax 100msPer request
Timeout30 sec (default), 120 sec (max)Configurable per plugin
Module Size10MBCompressed npack file
LanguagesPython, TypeScript, JavaScript, Rust, GoPlus any WASM-compatible language

Optimization Tips:

  • Configure memory limits based on your workload (up to 512MB max)
  • Set appropriate timeout for your plugin's operations (up to 120 sec max)
  • Optimize code for memory efficiency and quick execution
  • Use efficient algorithms for compute-intensive tasks
  • Keep module size small for faster deployment and lower memory footprint

Cost Optimization

Free vs Paid Resources

Always Free

  • Code Runner executions
  • Web Fetch (standard use)
  • HTTP Client requests
  • Files working scope (temporary storage)

Usage-Based Pricing

  • Web Search queries
  • Virtual Machine per-second compute (size-dependent)
  • Files input/output scopes (persistent storage)
  • Knowledge base searches

Summary

Key takeaways for optimal usage:

  1. Use free resources first: Code Runner and working scope storage
  2. Cache aggressively: Reduce repeated paid operations
  3. Batch operations: Minimize overhead and API calls
  4. Choose appropriate tools: Match capability to task requirements
  5. Optimize data flow: Process in working scope, persist selectively to input/output

Next Steps

Explore Capabilities

Platform Configuration