curl --request POST \
--url https://api.aireserve.com/v1/gpu/{deploymentId}/chat/completions \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "Qwen/Qwen2.5-7B-Instruct",
"messages": [
{
"role": "user",
"content": "Hello!"
}
]
}
'import requests
url = "https://api.aireserve.com/v1/gpu/{deploymentId}/chat/completions"
payload = {
"model": "Qwen/Qwen2.5-7B-Instruct",
"messages": [
{
"role": "user",
"content": "Hello!"
}
]
}
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({
model: 'Qwen/Qwen2.5-7B-Instruct',
messages: [{role: 'user', content: 'Hello!'}]
})
};
fetch('https://api.aireserve.com/v1/gpu/{deploymentId}/chat/completions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));Chat completion on a dedicated GPU deployment
OpenAI-compatible chat completions on your organization’s own dedicated HuggingFace vLLM deployment, with your ordinary AI Reserve API key — the HuggingFace credential stays server-side. deploymentId is the deployment’s id from Admin → GPUs → How to call endpoint; a key from another organization gets the same 404 as an unknown deployment. model is optional and, when sent, must name the repository actually deployed. stream: true answers server-sent events with usage on the final chunk. Inference is not billed per token — the deployment’s GPU time is billed from the organization wallet — so wallet-balance and budget-cap gates do not apply here, while key status, IP allowlists and rate limits do. A scale-to-zero deployment that is asleep is woken by the request (the first call can take minutes); a paused, failed or provisioning deployment answers 409, and a deployment of an adult-only model answers 403 once the organization’s adult-content access is turned off.
curl --request POST \
--url https://api.aireserve.com/v1/gpu/{deploymentId}/chat/completions \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "Qwen/Qwen2.5-7B-Instruct",
"messages": [
{
"role": "user",
"content": "Hello!"
}
]
}
'import requests
url = "https://api.aireserve.com/v1/gpu/{deploymentId}/chat/completions"
payload = {
"model": "Qwen/Qwen2.5-7B-Instruct",
"messages": [
{
"role": "user",
"content": "Hello!"
}
]
}
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({
model: 'Qwen/Qwen2.5-7B-Instruct',
messages: [{role: 'user', content: 'Hello!'}]
})
};
fetch('https://api.aireserve.com/v1/gpu/{deploymentId}/chat/completions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));Authorizations
Your AI Reserve API key (aireserve_api_…) from the API Keys page in the portal (https://portal.aireserve.com/keys).
Path Parameters
Body
The body is of type object.
Response
Default Response