Compile bounded user intent into an editable reviewed configuration
POST
/
api
/
v1
/
planning
/
intents
Compile bounded user intent into an editable reviewed configuration
curl --request POST \
--url http://127.0.0.1:18000/api/v1/planning/intents \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"intent": "<string>",
"gpu": "<string>",
"model": "<string>",
"provider": "<string>",
"region": "<string>"
}
'import requests
url = "http://127.0.0.1:18000/api/v1/planning/intents"
payload = {
"intent": "<string>",
"gpu": "<string>",
"model": "<string>",
"provider": "<string>",
"region": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
intent: '<string>',
gpu: '<string>',
model: '<string>',
provider: '<string>',
region: '<string>'
})
};
fetch('http://127.0.0.1:18000/api/v1/planning/intents', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "http://127.0.0.1:18000/api/v1/planning/intents"
payload := strings.NewReader("{\n \"intent\": \"<string>\",\n \"gpu\": \"<string>\",\n \"model\": \"<string>\",\n \"provider\": \"<string>\",\n \"region\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"capacity_reserved": false,
"performance_claims": false,
"plan": {
"architecture": {
"edges": [
{
"from": "<string>",
"label": "<string>",
"to": "<string>"
}
],
"nodes": [
{
"id": "<string>",
"kind": "<string>",
"label": "<string>",
"state": "<string>"
}
]
},
"choices": [
{
"editable": true,
"field": "<string>",
"label": "<string>",
"required": true,
"options": [
{
"label": "<string>",
"value": "<string>",
"reason": "<string>",
"state": "<string>"
}
],
"value": "<string>"
}
],
"evidence": {
"capacity": "<string>",
"configuration": "<string>",
"performance": "<string>",
"price": {
"deployment_comparable": true,
"reason": "<string>",
"state": "current",
"cost_scope": "<string>",
"currency": "<string>",
"hourly_usd_per_replica": 1,
"observed_at": "2023-11-07T05:31:56Z",
"price_authority": "<string>",
"source": "<string>",
"valid_until": "2023-11-07T05:31:56Z"
}
},
"interpretation": {
"action": "deploy",
"objective": "interactive",
"compute_mode": "elastic"
},
"missing_choices": [
{
"field": "<string>",
"prompt": "<string>",
"reason": "<string>",
"remediation": "<string>",
"options": [
{
"label": "<string>",
"value": "<string>",
"reason": "<string>",
"state": "<string>"
}
]
}
],
"mutation": "none",
"schema_version": "infercrane.intent-plan/v1",
"status": "ready",
"warnings": [
"<string>"
],
"configuration": {
"compute_mode": "elastic",
"gpu": "<string>",
"gpu_count": 512,
"max_replicas": 1,
"min_replicas": 1,
"model": "<string>",
"model_revision": "<string>",
"profile": "<string>",
"routing": "<string>",
"runtime": "<string>",
"runtime_args": [
"<string>"
],
"provider": "<string>",
"provider_adapter": "<string>",
"region": "<string>",
"runtime_version": "<string>"
},
"model": {
"display_name": "<string>",
"evidence_class": "<string>",
"evidence_summary": "<string>",
"gated": true,
"name": "<string>",
"repository": "<string>",
"revision": "<string>",
"runtime": "<string>",
"tasks": [
"<string>"
]
}
},
"provider_mutation": false,
"selection_boundary": "<string>",
"deployment_draft": {
"cloud": "<string>",
"gpu": "<string>",
"model": "<string>",
"name": "<string>",
"compute_mode": "elastic",
"endpoint_name": "<string>",
"gpu_count": 1,
"max_replicas": 1,
"min_replicas": 1,
"model_revision": "<string>",
"port": 32768,
"provider_adapter": "<string>",
"region": "<string>",
"runtime": "vllm",
"runtime_args": [
"<string>"
],
"runtime_version": "<string>",
"serving": {
"autoscaling": {
"max": 5000,
"min": 5000,
"owner": "disabled"
},
"backend": "dynamo",
"cache": {
"backend": "none",
"configuration_ref": "<string>",
"disk_gib": 1,
"host_gib": 1,
"memory_gib": 1,
"metrics": true,
"storage_claim": "<string>"
},
"decode": {
"replicas": 5000,
"tensor_parallelism": 512
},
"mode": "aggregated",
"prefill": {
"replicas": 5000,
"tensor_parallelism": 512
},
"profile": "baseline",
"routing": "direct",
"schema_version": "infercrane.serving/v1",
"worker": {
"replicas": 5000,
"tensor_parallelism": 512
}
},
"workload": {
"cancellation": "http-disconnect",
"command": [
"<string>"
],
"drain": "connection",
"image": "<string>",
"metrics_path": "/metrics",
"models_path": "/v1/models",
"port": 32768,
"protocol": "openai",
"readiness_path": "/health",
"shutdown_grace_seconds": 1800
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"category": "<string>",
"remediation": "<string>",
"request_id": "<string>",
"retryable": true
}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/json
- Option 1
- Option 2
Maximum string length:
2048Available options:
elastic, serverless Maximum string length:
128Maximum string length:
256Available options:
interactive, latency, throughput, cost-efficiency Maximum string length:
64Maximum string length:
128⌘I
Compile bounded user intent into an editable reviewed configuration
curl --request POST \
--url http://127.0.0.1:18000/api/v1/planning/intents \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"intent": "<string>",
"gpu": "<string>",
"model": "<string>",
"provider": "<string>",
"region": "<string>"
}
'import requests
url = "http://127.0.0.1:18000/api/v1/planning/intents"
payload = {
"intent": "<string>",
"gpu": "<string>",
"model": "<string>",
"provider": "<string>",
"region": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
intent: '<string>',
gpu: '<string>',
model: '<string>',
provider: '<string>',
region: '<string>'
})
};
fetch('http://127.0.0.1:18000/api/v1/planning/intents', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "http://127.0.0.1:18000/api/v1/planning/intents"
payload := strings.NewReader("{\n \"intent\": \"<string>\",\n \"gpu\": \"<string>\",\n \"model\": \"<string>\",\n \"provider\": \"<string>\",\n \"region\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"capacity_reserved": false,
"performance_claims": false,
"plan": {
"architecture": {
"edges": [
{
"from": "<string>",
"label": "<string>",
"to": "<string>"
}
],
"nodes": [
{
"id": "<string>",
"kind": "<string>",
"label": "<string>",
"state": "<string>"
}
]
},
"choices": [
{
"editable": true,
"field": "<string>",
"label": "<string>",
"required": true,
"options": [
{
"label": "<string>",
"value": "<string>",
"reason": "<string>",
"state": "<string>"
}
],
"value": "<string>"
}
],
"evidence": {
"capacity": "<string>",
"configuration": "<string>",
"performance": "<string>",
"price": {
"deployment_comparable": true,
"reason": "<string>",
"state": "current",
"cost_scope": "<string>",
"currency": "<string>",
"hourly_usd_per_replica": 1,
"observed_at": "2023-11-07T05:31:56Z",
"price_authority": "<string>",
"source": "<string>",
"valid_until": "2023-11-07T05:31:56Z"
}
},
"interpretation": {
"action": "deploy",
"objective": "interactive",
"compute_mode": "elastic"
},
"missing_choices": [
{
"field": "<string>",
"prompt": "<string>",
"reason": "<string>",
"remediation": "<string>",
"options": [
{
"label": "<string>",
"value": "<string>",
"reason": "<string>",
"state": "<string>"
}
]
}
],
"mutation": "none",
"schema_version": "infercrane.intent-plan/v1",
"status": "ready",
"warnings": [
"<string>"
],
"configuration": {
"compute_mode": "elastic",
"gpu": "<string>",
"gpu_count": 512,
"max_replicas": 1,
"min_replicas": 1,
"model": "<string>",
"model_revision": "<string>",
"profile": "<string>",
"routing": "<string>",
"runtime": "<string>",
"runtime_args": [
"<string>"
],
"provider": "<string>",
"provider_adapter": "<string>",
"region": "<string>",
"runtime_version": "<string>"
},
"model": {
"display_name": "<string>",
"evidence_class": "<string>",
"evidence_summary": "<string>",
"gated": true,
"name": "<string>",
"repository": "<string>",
"revision": "<string>",
"runtime": "<string>",
"tasks": [
"<string>"
]
}
},
"provider_mutation": false,
"selection_boundary": "<string>",
"deployment_draft": {
"cloud": "<string>",
"gpu": "<string>",
"model": "<string>",
"name": "<string>",
"compute_mode": "elastic",
"endpoint_name": "<string>",
"gpu_count": 1,
"max_replicas": 1,
"min_replicas": 1,
"model_revision": "<string>",
"port": 32768,
"provider_adapter": "<string>",
"region": "<string>",
"runtime": "vllm",
"runtime_args": [
"<string>"
],
"runtime_version": "<string>",
"serving": {
"autoscaling": {
"max": 5000,
"min": 5000,
"owner": "disabled"
},
"backend": "dynamo",
"cache": {
"backend": "none",
"configuration_ref": "<string>",
"disk_gib": 1,
"host_gib": 1,
"memory_gib": 1,
"metrics": true,
"storage_claim": "<string>"
},
"decode": {
"replicas": 5000,
"tensor_parallelism": 512
},
"mode": "aggregated",
"prefill": {
"replicas": 5000,
"tensor_parallelism": 512
},
"profile": "baseline",
"routing": "direct",
"schema_version": "infercrane.serving/v1",
"worker": {
"replicas": 5000,
"tensor_parallelism": 512
}
},
"workload": {
"cancellation": "http-disconnect",
"command": [
"<string>"
],
"drain": "connection",
"image": "<string>",
"metrics_path": "/metrics",
"models_path": "/v1/models",
"port": 32768,
"protocol": "openai",
"readiness_path": "/health",
"shutdown_grace_seconds": 1800
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"category": "<string>",
"remediation": "<string>",
"request_id": "<string>",
"retryable": true
}
}