Get family
A family: its dataset and where it started, its switch and the model it serves, its
models with their own switches, keep warm, its fine-tunes with how each ended, what each
cost and why it made no model, and what continuing it would do now (continue): train
on the dataset’s newest version, or why it can’t yet, with the rows it would take and
the fee it would hold.
curl --request GET \
--url https://console.sqwish.ai/v1/families/{family} \
--header 'Authorization: Bearer <token>'import requests
url = "https://console.sqwish.ai/v1/families/{family}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://console.sqwish.ai/v1/families/{family}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "<string>",
"object": "family",
"switched_on": true,
"used_at": 123,
"switches_off_at": 123,
"off_reason": "owner",
"off_at": 123,
"dataset_id": "<string>",
"origin": "<string>",
"created_at": 123,
"served": {
"version": 123,
"ref": "<string>",
"adapter": "<string>",
"status": "<string>",
"on_at": 123,
"keep_warm": true,
"keep_warm_stopped_at": 123,
"used_at": 123,
"switches_off_at": 123,
"off_reason": "owner",
"off_at": 123,
"state": "loaded",
"parent": "<string>",
"created_at": 123,
"gate": {
"passed": true,
"against": "parent",
"reasons": [
"<string>"
],
"groups": {},
"deltas": {},
"ece": {}
},
"heldout": {},
"discarded_at": 123
},
"latest": {
"version": 123,
"ref": "<string>",
"adapter": "<string>",
"status": "<string>",
"on_at": 123,
"keep_warm": true,
"keep_warm_stopped_at": 123,
"used_at": 123,
"switches_off_at": 123,
"off_reason": "owner",
"off_at": 123,
"state": "loaded",
"parent": "<string>",
"created_at": 123,
"gate": {
"passed": true,
"against": "parent",
"reasons": [
"<string>"
],
"groups": {},
"deltas": {},
"ece": {}
},
"heldout": {},
"discarded_at": 123
},
"models": [
{
"version": 123,
"ref": "<string>",
"adapter": "<string>",
"status": "<string>",
"on_at": 123,
"keep_warm": true,
"keep_warm_stopped_at": 123,
"used_at": 123,
"switches_off_at": 123,
"off_reason": "owner",
"off_at": 123,
"state": "loaded",
"parent": "<string>",
"created_at": 123,
"gate": {
"passed": true,
"against": "parent",
"reasons": [
"<string>"
],
"groups": {},
"deltas": {},
"ece": {}
},
"heldout": {},
"discarded_at": 123
}
],
"keep_warm": true,
"keep_warm_window": {
"started_at": 123,
"ends_at": 123,
"reserved_usd": "<string>"
},
"keep_warm_stopped_at": 123,
"move": {
"to": "<string>",
"waiting_for": "place",
"reason": "live_limit"
},
"moved": {
"at": 123,
"from": "<string>"
},
"continue": {
"state": "new_data",
"version": 123,
"added_at": 123,
"added_from": "<string>",
"evaluation_decisions": 123,
"needed": 123,
"rows": {
"new": 123,
"earlier": 123,
"evaluation": 123
},
"price_usd": "<string>"
},
"jobs": [
{
"id": "<string>",
"status": "queued",
"outcome": "joined",
"reason": "<string>",
"dataset_version": 123,
"output_model": "<string>",
"created_at": 123,
"price_usd": "<string>",
"charge": "free"
}
]
}{
"error": {
"code": "<string>",
"message": "<string>",
"retryable": true,
"request_id": "<string>",
"details": [
{
"path": [
"<string>"
],
"message": "<string>",
"type": "<string>"
}
]
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"retryable": true,
"request_id": "<string>",
"details": [
{
"path": [
"<string>"
],
"message": "<string>",
"type": "<string>"
}
]
}
}Authorizations
Create an API key in the console. Required when accounts are enabled.
Path Parameters
Response
Successful Response
"family"Whether calls to its name are answered.
Its idle clock: the latest of its last production call by an API key that named it, its last evaluation that named it, and when it was switched on.
When idling switches it off unless it's used. Null while it is off or kept warm on its own switch, and when idling never switches anything off. A family's is also null while it serves no model.
Why it is off: owner when it was switched off by hand, idle when nothing used it for too long. Null otherwise.
owner, idle When it went off, with off_reason. Null otherwise.
The dataset it grows on.
Where it started: a base model, or one of your models.
When it was named, as its first fine-tune was queued.
The model calls to its name get while it is switched on, or null for none yet.
Show child attributes
Show child attributes
Its newest model, neither deleted nor discarded.
Show child attributes
Show child attributes
Every model of its line, oldest first. A deleted one shows only where it stood.
- ModelVersion
- DeletedModelVersion
Show child attributes
Show child attributes
The hour of keep warm being billed for the model the family serves, while the family is kept warm. Null otherwise: a model kept warm on its own shows its own hour.
Show child attributes
Show child attributes
When keep warm switched off because the next hour couldn't be reserved, while it stays off. Otherwise null.
The move to its latest model it waits to make, and what it waits for. Null while it serves its latest model, or is switched off.
Show child attributes
Show child attributes
When it last moved by itself to the model it serves, and from which. Null when it never did, or serves another model or was rolled back since.
Show child attributes
Show child attributes
What continuing it would do now, from the family's dataset and jobs. It doesn't check credit, storage allowance or queue room, which the start refuses with insufficient_credit, storage_allowance, queue_full or tenant_queue_full. Null for a family with no dataset. A list of families reads no dataset: there new_data and retry only say a version no finished job used is waiting, and the counts and fee are null. The answers of a switch, keep warm or rollback leave it out.
Show child attributes
Show child attributes
Its fine-tunes, newest first, with how each ended. Lists of families, and the answers of a switch, keep warm or rollback, leave it out.
Show child attributes
Show child attributes
curl --request GET \
--url https://console.sqwish.ai/v1/families/{family} \
--header 'Authorization: Bearer <token>'import requests
url = "https://console.sqwish.ai/v1/families/{family}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://console.sqwish.ai/v1/families/{family}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "<string>",
"object": "family",
"switched_on": true,
"used_at": 123,
"switches_off_at": 123,
"off_reason": "owner",
"off_at": 123,
"dataset_id": "<string>",
"origin": "<string>",
"created_at": 123,
"served": {
"version": 123,
"ref": "<string>",
"adapter": "<string>",
"status": "<string>",
"on_at": 123,
"keep_warm": true,
"keep_warm_stopped_at": 123,
"used_at": 123,
"switches_off_at": 123,
"off_reason": "owner",
"off_at": 123,
"state": "loaded",
"parent": "<string>",
"created_at": 123,
"gate": {
"passed": true,
"against": "parent",
"reasons": [
"<string>"
],
"groups": {},
"deltas": {},
"ece": {}
},
"heldout": {},
"discarded_at": 123
},
"latest": {
"version": 123,
"ref": "<string>",
"adapter": "<string>",
"status": "<string>",
"on_at": 123,
"keep_warm": true,
"keep_warm_stopped_at": 123,
"used_at": 123,
"switches_off_at": 123,
"off_reason": "owner",
"off_at": 123,
"state": "loaded",
"parent": "<string>",
"created_at": 123,
"gate": {
"passed": true,
"against": "parent",
"reasons": [
"<string>"
],
"groups": {},
"deltas": {},
"ece": {}
},
"heldout": {},
"discarded_at": 123
},
"models": [
{
"version": 123,
"ref": "<string>",
"adapter": "<string>",
"status": "<string>",
"on_at": 123,
"keep_warm": true,
"keep_warm_stopped_at": 123,
"used_at": 123,
"switches_off_at": 123,
"off_reason": "owner",
"off_at": 123,
"state": "loaded",
"parent": "<string>",
"created_at": 123,
"gate": {
"passed": true,
"against": "parent",
"reasons": [
"<string>"
],
"groups": {},
"deltas": {},
"ece": {}
},
"heldout": {},
"discarded_at": 123
}
],
"keep_warm": true,
"keep_warm_window": {
"started_at": 123,
"ends_at": 123,
"reserved_usd": "<string>"
},
"keep_warm_stopped_at": 123,
"move": {
"to": "<string>",
"waiting_for": "place",
"reason": "live_limit"
},
"moved": {
"at": 123,
"from": "<string>"
},
"continue": {
"state": "new_data",
"version": 123,
"added_at": 123,
"added_from": "<string>",
"evaluation_decisions": 123,
"needed": 123,
"rows": {
"new": 123,
"earlier": 123,
"evaluation": 123
},
"price_usd": "<string>"
},
"jobs": [
{
"id": "<string>",
"status": "queued",
"outcome": "joined",
"reason": "<string>",
"dataset_version": 123,
"output_model": "<string>",
"created_at": 123,
"price_usd": "<string>",
"charge": "free"
}
]
}{
"error": {
"code": "<string>",
"message": "<string>",
"retryable": true,
"request_id": "<string>",
"details": [
{
"path": [
"<string>"
],
"message": "<string>",
"type": "<string>"
}
]
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"retryable": true,
"request_id": "<string>",
"details": [
{
"path": [
"<string>"
],
"message": "<string>",
"type": "<string>"
}
]
}
}