This topic describes the NIM remote repositories layout.
NIM Docker Repository Layout
The following is the NIM Repository Layout.
<repository-name> ├── .jfrog │ ├── caller-info.json │ └── model-mapping.json ├── models │ ├── org │ │ ├── nim │ │ │ ├── team │ │ │ │ ├── meta │ │ │ │ │ ├── <model_name> │ │ │ │ │ │ ├── <model_version> │ │ │ │ │ │ │ ├── .jfrog │ │ │ │ │ │ │ │ ├── checksums.blake3 │ │ │ │ │ │ │ │ ├── config.json │ │ │ │ │ │ │ │ ├── generation_config.json
<repository-name>: The root folder of your Docker remote repository.
.jfrog: Contains JFrog internal configuration files for integration.
caller-info.json: JSON metadata typically includes information about API callers or services interacting with the repository.
model-mapping.json: A file that maps various models to their paths or specifications.
models: The main directory for machine learning models.
org: A directory that encapsulates organizational structure.
nim: Indicates a specific technology or model framework.
team: Represents a specific team working within the organizational folder.
meta: Contains metadata and model records.
<model_name>: Each model is stored in its directory.
<model_version>: Different versions of the model (versioning is crucial for deployment).
.jfrog: Contains files specific to model configuration.
checksums.blake3: A file with checksum values for integrity verification of the model files.
config.json: Contains model-specific configurations.
generation_config.json: Configuration for generation-specific settings.
NIM Remote Repository Layout
<repository_cache>/
├── .jfrog/
│ └── models/
│ └── <org_name>/
│ └── <model_name>/
│ └── <model_version>/
│ └── model_urls_mapping.json
└── models/
└── <org_name>/
└── <model_name>/
└── <model_version>/
├── .jfrog_nim_model_info.json
└── model/
├── checksums.blake3
├── config.json
├── generation_config.json
├── LICENSE.txt
├── model-<shard_num>-of-<total_shards>.safetensors
├── model.safetensors.index.json
├── NOTICE.txt
├── special_tokens_map.json
├── tokenizer.json
├── tokenizer_config.json
└── tool_use_config.json
<repository_cache>: The top-level name of the repository where all models are stored. This often reflects the purpose or organization managing the models.
.jfrog: A directory used by the Artifactory client to store caching metadata. This helps speed up subsequent downloads by mapping requests to existing files.
<models>: A directory that contains all the models.
<org_name>: The organization or namespace publishing the model.
<model_name> : The name of the specific model (for example, image_classifier).
<model_version>: Version of the model, usually following semantic versioning (for example, v1.0.0).
_.jfrog_nim_model_info.json: A metadata file in JSON format that contains information about the model, such as its name, version, description, authorship, and any dependencies or requirements for the model.
<model>: A directory that contains the actual model files necessary for deployment or inference.
Key File Explanations
These are the files typically found within a model version's directory.
.jfrog_nim_model_info.json: A JSON file containing metadata specific to the NIM container, such as its origin and properties.
checksums.blake3: A file containing cryptographic hashes of all other files in the model/ directory. This is used to verify the integrity of the downloaded files to ensure they are not corrupted
config.json: The main configuration file for the model's architecture. It defines parameters like the number of layers, hidden size, and activation functions.
generation_config.json: Contains default parameters for text generation.
LICENSE.txt / NOTICE.txt: Text files containing the software license and other important legal notices for the model.
model-<shard_num>of-<total_shards>.safetensors: The core model weights. Large models are often split into multiple smaller files called shards for easier downloading and memory management. .safetensors is a secure and fast format for storing tensors.
model.safetensors.index.json: A crucial map file that tells the loading script how the different model weight shards fit together to reconstruct the full model.
special_tokens_map.json: Defines special tokens used by the model, such as [CLS], [SEP], and [PAD], mapping them to their string representations.
tokenizer.json: The primary file containing the trained tokenizer, including its vocabulary, merges, and rules needed to convert text to tokens.
tokenizer_config.json: The configuration file for the tokenizer, specifying details like tokenization method and settings for special tokens.
tool_use_config.json: A configuration file that defines how the model can interact with external tools or APIs, a key feature for function-calling capabilities.