is_default, на который шлюз откатывается всякий раз, когда у ключа нет явной
привязки.
Эта страница охватывает default-guardrail ИИ: как его задать, как работает
разрешение и один инвариант, который стоит запомнить — один default на
рабочее пространство. Полный справочник по движку см. в
справочнике Guardrails.
Всё здесь — это действие в консоли на хостируемом шлюзе
(
api.orcarouter.ai), выполняемое в рамках вашей сессии. Только финальный
вызов /v1/* использует relay-ключ sk-orca-.... Продвижение или понижение
default-guardrail требует Developer+ в рабочем пространстве.1. Зачем задавать default-guardrail ИИ
Привязка для каждого ключа точна, но её легко забыть — выпустите новый ключ, пропустите выпадающий список, и этот ключ уходит с нулевой проверкой. Default рабочего пространства закрывает этот пробел:Ключи без привязки наследуют его
Любой ключ, у которого
guardrail_id не задан (0/null), проверяется
default автоматически — включая ключи, созданные после того, как вы его
задали.Правьте один раз — смещайте всё пространство
Default живёт в шлюзе, а не на каждом ключе. Отредактируйте его, и каждый
наследующий ключ сместится на следующем вызове — без передеплоя, без
изменений SDK.
2. Продвиньте guardrail в default
В консоли откройте Guardrails, отредактируйте guardrail, который хотите сделать базовым уровнем, и включите Set as workspace default. Сохраните.Создайте или выберите guardrail
Создайте политику как обычно — например, пресет
PII Shield, единственное правило
pii, которое маскирует на стадии both.Пометьте default и сохраните
Включите Set as workspace default и сохраните. Флаг
is_default
guardrail переключается в on.3. Один default на рабочее пространство — продвижение атомарно
Это инвариант: не более одного guardrail на рабочее пространство несётis_default. Вам никогда не нужно вручную снимать старый.
Когда вы продвигаете новый guardrail в default, шлюз понижает предыдущий
default в той же транзакции — продвижение и понижение либо оба
применяются, либо ни одно. Никогда не бывает окна, где два guardrail
одновременно являются default, и никогда — окна, где ни одного нет.
4. Как разрешение использует default
Для любого запроса шлюз разрешает ровно один guardrail (или ни одного) в этом фиксированном порядке:| Порядок | Что применяется |
|---|---|
| 1 | Явный guardrail_id ключа — если он существует и включён. |
| 2 | Включённый is_default-guardrail рабочего пространства (у ключа нет привязки). |
| 3 | None — запрос побайтно идентичен рабочему пространству без политики. |
Fail-open по дизайну. Если разрешение default наталкивается на временную
ошибку, шлюз деградирует до отсутствия применения, а не проваливает запрос.
Деградирует безопасность; доступность сохраняется.
5. Разобранный пример
Допустим, в вашем рабочем пространстве два guardrail и три ключа:pii-shield— помечен default рабочего пространства, включён.strict-block— блокирует кредитные карты, не default.- Ключ
A— без привязки. КлючB— привязан кstrict-block. КлючC— привязан к guardrail, который вы позже отключили.
Ключ A (без привязки) → наследует default
Ключ A (без привязки) → наследует default
guardrail_id не задан, поэтому разрешение проваливается на включённый
is_default-guardrail pii-shield. Email маскируется в [EMAIL] прежде,
чем модель его увидит.Ключ B (с привязкой) → использует свою политику
Ключ B (с привязкой) → использует свою политику
Явная привязка побеждает. Применяется
strict-block; default никогда не
запрашивается.Ключ C (привязан, но отключён) → нет применения
Ключ C (привязан, но отключён) → нет применения
Привязка существует, но её guardrail отключён, поэтому разрешение
возвращает none — оно не проваливается на
pii-shield. Запрос не
проверяется.strict-block в default и сохраните. В одной транзакции
strict-block.is_default становится true, а pii-shield.is_default
становится false. Ключ A немедленно наследует strict-block на своём
следующем вызове — без какого-либо изменения самого ключа.
6. Подтверждение, что запрос попадает в default
Отправьте запрос с непривязанным ключом и проверьте Ленту совпадений — совпадение, записанное под вашим default-guardrail, подтверждает, что fallback сработал:[EMAIL] перед пересылкой. Если он блокирует, вызов возвращает HTTP 400
guardrail_blocked — что не стоит квоты и помечается skip-retry. См.
ошибку guardrail_blocked
для полной формы ответа.
7. Куда дальше
Привязка к одному ключу
Когда одному ключу нужна другая политика, чем базовый уровень пространства.
Создайте свой первый guardrail
Сквозной цикл — создать, протестировать, привязать, отправить.
Разрешение и область
Как ключи, политики и рабочие пространства сочетаются.
Версионирование
Каждое продвижение пишет строку истории — сравнивайте и откатывайте.
is_default и кто это сделал. Полное описание движка читайте в
справочнике Guardrails.