Skip to main content
POST
/
adaption
/
train
Trigger Training
curl --request POST \
  --url https://api.example.com/adaption/train \
  --header 'Authorization: <authorization>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "memory_group": "<string>",
  "lora_name": "<string>",
  "force": true
}
'
{
  "status": "<string>",
  "message": "<string>",
  "lora_name": "<string>",
  "version": 123,
  "memories_count": 123,
  "job_id": "<string>"
}

POST /adaption/train

Trigger LoRA training for a memory group. This endpoint can be called automatically when the training threshold is met, or manually by the user.
Adaption is currently in Beta and may not be stable. Users may also encounter slower outputs due to vLLM cold-start times.

Authentication

Authorization
string
required
Bearer token with your API key. Format: Bearer YOUR_ASYMMETRIC_API_KEY

Request Body

memory_group
string
required
The memory group to train on
lora_name
string
required
Name for the LoRA adapter
force
boolean
default:"false"
Force override stale training locks

Response

status
string
Training status: training_started, already_training, or no_data
message
string
Status message
lora_name
string
Name of the LoRA adapter
version
integer
Training version number
memories_count
integer
Number of memories used for training
job_id
string
Async job identifier

Example

import requests

response = requests.post(
    "https://rkdune--symmetry.modal.run/adaption/train",
    headers={"Authorization": "Bearer YOUR_ASYMMETRIC_API_KEY"},
    json={
        "memory_group": "darwin_agent",
        "lora_name": "darwin_adapter",
        "force": True
    }
)

data = response.json()
print(f"Status: {data['status']}")
print(f"Job ID: {data.get('job_id')}")

Errors

StatusDescription
400memory_group and lora_name are required
401Invalid API key
500Training failed