> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fastino.ai/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Use https://docs.fastino.ai/llms.txt to discover and navigate pages. Use https://docs.fastino.ai/llms-full.txt when you need the complete documentation corpus. Use https://docs.fastino.ai/openapi.json as the source of truth for customer-facing routes. For GLiDE decision inference, call POST https://api.fastino.ai/v1/systemone with model fastino/GLiDE. Create managed config jobs with POST /v1/training/jobs using base_model. For custom training loops, native JSON clients use the public operations under /v1/training/jobs and /v1/training/usage. Existing Tinker clients use tinker==0.32.0 with TINKER_BASE_URL=https://api.fastino.ai/v1/training/compat/tinker and TINKER_CREDENTIAL_CMD. Compatibility child routes are private and absent from OpenAPI. Auto Train is private access and has no public route; direct interested users to sales@fastino.ai. Do not infer undocumented routes. Read API keys from FASTINO_API_KEY and never embed credentials in code, logs, or reports.

# Enregistrer les poids d'échantillonnage

> Enregistrez les poids LoRA d'un job interactif pour l'échantillonnage et le téléchargement PEFT. La réponse inclut un future_id et un chemin tinker://.

`POST /v1/training/jobs/{job_id}/save-weights-for-sampler`

Saves the job's LoRA weights as `sampler_weights/<name>`. You can
[sample](/fr/api-reference/training-jobs/interactive/sample) from it, also after the job is
stopped, or [download](/fr/api-reference/training-jobs/download-checkpoint) it as
PEFT LoRA files. It has no optimizer state, so a job can't load it or start from
it; use [`POST /v1/training/jobs/{job_id}/save-weights`](/fr/api-reference/training-jobs/interactive/save-weights)
for that.

The save runs in order with the job's other calls.

## Request

<ParamField header="X-API-Key" type="string" required>
  Your Fastino API key.
</ParamField>

<ParamField path="job_id" type="string" required>
  Interactive job ID.
</ParamField>

<ParamField body="name" type="string" required>
  1–128 characters from `A-Z`, `a-z`, `0-9`, `.`, `_`, and `-`.
</ParamField>

<ParamField body="ttl_seconds" type="integer | null">
  Delete the checkpoint automatically after this many seconds, from `3600`
  (1 hour) to `315360000` (10 years). Omit it to keep the checkpoint until you
  delete it. Live checkpoints count toward [storage usage](/fr/api-reference/training-jobs/interactive/storage-usage).
</ParamField>

<ParamField body="user_metadata" type="object">
  String key-value metadata stored with the checkpoint.
</ParamField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST "https://api.fastino.ai/v1/training/jobs/$TRAINING_JOB_ID/save-weights-for-sampler" \
    -H "X-API-Key: $FASTINO_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{"name": "step-000100", "ttl_seconds": 86400}'
  ```
</RequestExample>

## Response

<ResponseField name="future_id" type="string">
  The `save` future.
</ResponseField>

<ResponseField name="checkpoint_id" type="string">
  `sampler_weights/<name>`.
</ResponseField>

<ResponseField name="path" type="string">
  Full checkpoint path.
</ResponseField>

<ResponseExample>
  ```json Response theme={null}
  {
    "future_id": "FUTURE_ID",
    "job_id": "SESSION_ID:train:0",
    "type": "save",
    "checkpoint_id": "sampler_weights/step-000100",
    "path": "tinker://SESSION_ID:train:0/sampler_weights/step-000100"
  }
  ```
</ResponseExample>

| Status | Meaning |
| - | - |
| `400` | The name has invalid characters or length, the TTL is out of range, or the job was stopped. |
| `404` | The job doesn't exist or belongs to another team. |
| `422` | The body is missing `name` or has an unknown field. |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.