---
title: "oz0 model vet"
description: "A model behind a built-in provider or a shipped preset counts as vetted."
canonical_url: "https://docs.oz0.ai/reference/cli/oz0/model/vet"
---
# oz0 model vet

> A model behind a built-in provider or a shipped preset counts as vetted.

For: Operators and developers looking up a command.

A model behind a built-in provider or a shipped preset counts as vetted. A local model, and a model behind an endpoint with a base URL of the tenant's own, is unvetted until a tenant admin vets it: a job that may run on an unvetted model starts tainted, so each call that can send data out waits for a person, and it runs on a node with sandbox tier 1 only. It is never refused for its model.

A vetting is a person's judgement with a reason, not a scan of the weights, and never says a model is safe.

Vetting loosens what the model's jobs need: it takes a reason and, where the tenant has four eyes on, another admin's approval. A local model's vetting holds for the digest its nodes report now (they must agree; --digest names another), and ends while a node serves other weights under the name; when no node reports a digest, name one with --digest or vet it by name with --by-name, which covers any weights served under the name.

An endpoint's vetting holds while its provider record calls the base URL it calls when the vetting is asked for; an approval never applies it to another. The vetting is audited (provider.model_vetted) and goes into the evidence bundle.

## Usage

```bash
oz0 model vet <provider>/<model> [flags]
```

## Flags

<table>
<thead>
  <tr>
    <th>
      Flag
    </th>
    
    <th>
      Type
    </th>
    
    <th>
      Default
    </th>
    
    <th>
      Description
    </th>
  </tr>
</thead>

<tbody>
  <tr>
    <td>
      <code>
        --base
      </code>
    </td>
    
    <td>
      string
    </td>
    
    <td>
      
    </td>
    
    <td>
      the model it was edited from (fine-tuned, merged or abliterated), for the record
    </td>
  </tr>
  
  <tr>
    <td>
      <code>
        --by-name
      </code>
    </td>
    
    <td>
      bool
    </td>
    
    <td>
      
    </td>
    
    <td>
      vet a local model by its name alone, for any weights a node serves under it (only when no node reports a digest; the change and the audit show it)
    </td>
  </tr>
  
  <tr>
    <td>
      <code>
        --decision-ref
      </code>
    </td>
    
    <td>
      string
    </td>
    
    <td>
      
    </td>
    
    <td>
      the decision or case the change follows, such as a case number (at most 200 characters)
    </td>
  </tr>
  
  <tr>
    <td>
      <code>
        --digest
      </code>
    </td>
    
    <td>
      string
    </td>
    
    <td>
      
    </td>
    
    <td>
      a local model's sha256:&lt;hex> to vet; default the one the tenant's nodes report
    </td>
  </tr>
  
  <tr>
    <td>
      <code>
        --json
      </code>
    </td>
    
    <td>
      bool
    </td>
    
    <td>
      
    </td>
    
    <td>
      print JSON instead of a table
    </td>
  </tr>
  
  <tr>
    <td>
      <code>
        --publisher
      </code>
    </td>
    
    <td>
      string
    </td>
    
    <td>
      
    </td>
    
    <td>
      who published the model, for the record
    </td>
  </tr>
  
  <tr>
    <td>
      <code>
        --reason
      </code>
    </td>
    
    <td>
      string
    </td>
    
    <td>
      
    </td>
    
    <td>
      why, required for every governance change (at most 500 characters; default $OZ0_REASON); the audit log keeps it
    </td>
  </tr>
  
  <tr>
    <td>
      <code>
        --source
      </code>
    </td>
    
    <td>
      string
    </td>
    
    <td>
      
    </td>
    
    <td>
      where it came from, such as a Hugging Face or registry reference, for the record
    </td>
  </tr>
  
  <tr>
    <td>
      <code>
        --tenant
      </code>
    </td>
    
    <td>
      string
    </td>
    
    <td>
      <code>
        default
      </code>
    </td>
    
    <td>
      tenant whose model it is
    </td>
  </tr>
</tbody>
</table>

## Inherited flags

<table>
<thead>
  <tr>
    <th>
      Flag
    </th>
    
    <th>
      Type
    </th>
    
    <th>
      Default
    </th>
    
    <th>
      Description
    </th>
  </tr>
</thead>

<tbody>
  <tr>
    <td>
      <code>
        --context
      </code>
    </td>
    
    <td>
      string
    </td>
    
    <td>
      <code>
        $OZ0_CONTEXT or &lt;config dir>/orchestrator-zero/context.json
      </code>
    </td>
    
    <td>
      CLI context file written by server init
    </td>
  </tr>
  
  <tr>
    <td>
      <code>
        --log-level
      </code>
    </td>
    
    <td>
      string
    </td>
    
    <td>
      <code>
        info
      </code>
    </td>
    
    <td>
      log level: debug, info, warn or error
    </td>
  </tr>
</tbody>
</table>

See [all `oz0` commands](https://docs.oz0.ai/reference/cli/oz0) and the [global flags](https://docs.oz0.ai/reference/cli/oz0#global-flags).


## Sitemap

See the full [sitemap](https://docs.oz0.ai/sitemap.md) for all pages.
