Create and call a Smart Group
Create intent assignments, review the Model order, and call a Smart Group.
Purpose
Create one Smart Group. Assign an approved Model order to each characterized action.
Prerequisites
You need relay:groups:manage, organization characterization enabled, and at least one enabled Chat Completions or Responses Model. Smart Groups do not support embeddings.
Steps
- Open Relay → Groups.
- Select Add Smart Group.
- Enter a name, such as
Production. - Save the Group.
- Copy its call name, such as
smart/production. - Open the Smart Group editor.
- Review the
unknownassignment. - Review the
needs_coderassignment. - Review each primary action used by your workloads.
- Assign no more than three enabled Models to each action.
- Put the preferred Model first.
- Save the assignments.
- Send a request with the Smart Group call name.
curl https://api.anchorshell.com/v1/chat/completions \
-H 'Authorization: Bearer <API_KEY>' \
-H "Content-Type: application/json" \
-d '{
"model": "smart/production",
"messages": [
{
"role": "user",
"content": "Turn the incident notes into a short update for an executive audience."
}
]
}'Response — 200 OK
Example non-streaming response (selected fields). Content, model, and usage depend on the selected provider.
{
"id": "<COMPLETION_ID>",
"object": "chat.completion",
"model": "gpt-5-mini",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "Relay waits for the preferred model before considering fallback."
},
"finish_reason": "stop"
}
]
}Expected result
Relay characterizes the request. It selects the operator-approved assignment for the routing action. Relay Core then applies access, limits, cooldowns, queueing, and fallback.
Verification
Open Relay → Logs. Confirm the classified action, confidence, routing action, default status, assignment rank, provider, Model, and final route outcome.
Recovery
If the request uses unknown, review the organization threshold and classifier state. If no Model is eligible, review Model route support, provider use grants, limits, cooldowns, and Group assignments. Use a Standard Group when the request type is embeddings.