RL Environments
Start a new RL episode by resetting the environment
Resets the environment to its initial state, clearing all scaling history and events. Use this to start a new training episode after the previous one completes.
post/rl/environments/{environmentId}/reset
Request
- Base URL: https://www.cloudworldmodel.ai/api
- URL: https://www.cloudworldmodel.ai/api/rl/environments/{environmentId}/reset
- Auth: one of:
- HTTP bearer
- API key in header X-PAYMENT
- API key in header PAYMENT-SIGNATURE
Path parameters
environmentIdstring uuid required
ID of the RL environment to reset
Request body
Example request
{
"rewardWeights": {
"cost": 0.4,
"resilience": 0.2,
"latency": 0.2,
"performance": 0.1,
"stability": 0.1
}
}Response
Environment reset successfully
Example response
{
"environment": {
"episodeConfig": {
"maxSteps": 300,
"targetTrafficPattern": "ramp",
"initialTraffic": 5000,
"targetSLA": {
"maxLatencyP95": 200,
"maxErrorRate": 1
},
"costBudgetPerHour": 5,
"tick_seconds": 60,
"unmodeled_cost_penalty_per_dimension": 0.1,
"evalCostOverrides": {
"egress": 0.5,
"cross_az_traffic": 0.3
}
},
"currentStep": 42,
"totalReward": 12.45,
"isActive": true,
"lastSimTimeHuman": "1h 30m",
"webhookDeliveryStatus": "delivered",
"webhookDeliveryAttempts": 1,
"idleExpiresAt": "2024-01-15T14:00:00.000Z",
"rewardWeights": {
"cost": 0.4,
"resilience": 0.2,
"latency": 0.2,
"performance": 0.1,
"stability": 0.1
}
},
"observation": {
"metrics": {
"cpuUsage": 65.3,
"latencyP50": 45,
"latencyP95": 91,
"errorRate": 0.5,
"throughput": 4500,
"costPerHour": 0.31,
"connectionPressure": 0.42
},
"resources": [
{
"id": "ec2-1",
"type": "compute",
"name": "Web Server 1",
"provider": "aws",
"location": {
"regionKey": "us-east-2"
},
"characteristics": {
"workload": "crud",
"appRuntime": "node",
"appWorkerCount": 2,
"appDbPoolSize": 250,
"workloadDatabaseVersion": "8.0",
"workloadDatabaseEngine": "mysql",
"rdsSqlServerBilling": {
"instanceClass": "db.t3.micro",
"storageType": "gp2",
"allocatedStorageGiB": 20,
"durationHours": 480,
"sustainedCpuPercent": 43
},
"serviceFamily": "ec2",
"containerCpu": 0.5,
"containerMemoryGiB": 1,
"runtimeMemoryProfile": {
"workingSetGiB": 0.78125
},
"concurrency": 80,
"requestDurationSeconds": 0.25,
"requestServingTargetUtilizationPct": 70,
"billingState": "stopped",
"size": "m5.large",
"instanceType": "t3.medium",
"ocpus": 4,
"maxThroughput": 2000,
"capacityRps": 100,
"baseLatency": 3,
"maxConnections": 800,
"capacityGB": 500,
"maxIops": 3000,
"inferenceMode": true,
"accelerator": "a10g",
"managedComputePlatform": "nvidia-dgx-cloud",
"openshiftOffering": "rosa-hcp",
"topology": {
"intraNode": "nvlink-nvswitch",
"interNode": "infiniband"
},
"intraNode": "nvlink-nvswitch",
"interNode": "infiniband",
"includesControlPlane": true,
"bundledNetworking": true,
"trainingMode": true,
"tokensPerRequest": 500,
"inputTokensPerRequest": 1000,
"cacheHitRate": 0.85,
"cacheableRequestShare": 0.75,
"asynchronousRequestShare": 0.15,
"queueConsumerCount": 4,
"queueDrainRatePerConsumerRps": 125,
"queueCapacityMessages": 20000,
"queueSimulationStepSeconds": 1,
"autoscaling": true,
"maxInstances": 5,
"minInstances": 2,
"scaleOutCpuThreshold": 60,
"scaleInCpuThreshold": 25,
"nodeCount": 2,
"workerVcpu": 4,
"minNodes": 2,
"maxNodes": 10,
"perNodeRate": 3.2,
"pricingModel": "on-demand",
"nodePools": [
{
"name": "general",
"nodeCount": 2,
"workerVcpu": 8,
"minNodes": 2,
"maxNodes": 10,
"perNodeRate": 0.096,
"maxThroughput": 10000
}
],
"streamShardsCount": 4,
"streamWriteRps": 3500,
"eventNotificationsEnabled": true,
"partitionCount": 8,
"streamPartitions": 4,
"partitionWriteRps": 5000,
"warmupSteps": 5,
"warmupSeverity": 0.8
},
"routedRps": 15,
"availabilityState": "available",
"isRoutable": true,
"failureParkStepsRemaining": 3,
"recoveryPolicy": {
"criticalCpuThreshold": 75,
"criticalSteps": 2,
"warningCpuThreshold": 60,
"warningSteps": 1,
"failureParkSteps": 2
}
}
],
"traffic": 5000,
"currentTime": 2520,
"sim_time_seconds": 2520,
"tick_seconds": 60
},
"info": {
"sim_time_human": "0s"
}
}Changes
No recorded changes to this operation across all 1 revision of this API.