<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://namforum.com/wiki/index.php?action=history&amp;feed=atom&amp;title=NAM_Model_File_Format</id>
	<title>NAM Model File Format - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://namforum.com/wiki/index.php?action=history&amp;feed=atom&amp;title=NAM_Model_File_Format"/>
	<link rel="alternate" type="text/html" href="https://namforum.com/wiki/index.php?title=NAM_Model_File_Format&amp;action=history"/>
	<updated>2026-09-01T11:47:46Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.46.0</generator>
	<entry>
		<id>https://namforum.com/wiki/index.php?title=NAM_Model_File_Format&amp;diff=12&amp;oldid=prev</id>
		<title>NAMFORUM Sysop: Created page</title>
		<link rel="alternate" type="text/html" href="https://namforum.com/wiki/index.php?title=NAM_Model_File_Format&amp;diff=12&amp;oldid=prev"/>
		<updated>2026-09-01T06:00:40Z</updated>

		<summary type="html">&lt;p&gt;Created page&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= NAM Model File Format =&lt;br /&gt;
&lt;br /&gt;
The &amp;#039;&amp;#039;&amp;#039;NAM model file format&amp;#039;&amp;#039;&amp;#039; is the file format used to store trained [[Neural Amp Modeler]] models.&lt;br /&gt;
&lt;br /&gt;
NAM model files normally use the:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;.nam&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
file extension.&lt;br /&gt;
&lt;br /&gt;
A &amp;#039;&amp;#039;.nam&amp;#039;&amp;#039; file contains the information required by compatible NAM software or hardware to reconstruct and run the trained neural-network model. It can also contain metadata describing the model, the equipment that was modeled, training information, and capture calibration.&lt;br /&gt;
&lt;br /&gt;
== File structure ==&lt;br /&gt;
&lt;br /&gt;
The current NAM file format can be parsed as &amp;#039;&amp;#039;&amp;#039;JSON&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
At the highest level, a NAM file contains a dictionary of fields describing the model.&lt;br /&gt;
&lt;br /&gt;
Core fields include:&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;version&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;architecture&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;config&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;weights&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Optional fields include:&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;sample_rate&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;metadata&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
The exact contents of some fields depend on the architecture of the model.&lt;br /&gt;
&lt;br /&gt;
== Version ==&lt;br /&gt;
&lt;br /&gt;
The &amp;#039;&amp;#039;&amp;#039;version&amp;#039;&amp;#039;&amp;#039; field identifies the version of the NAM file specification.&lt;br /&gt;
&lt;br /&gt;
The version follows semantic versioning.&lt;br /&gt;
&lt;br /&gt;
This allows playback implementations to determine how the contents of a NAM file should be interpreted as the format evolves.&lt;br /&gt;
&lt;br /&gt;
== Architecture ==&lt;br /&gt;
&lt;br /&gt;
The &amp;#039;&amp;#039;&amp;#039;architecture&amp;#039;&amp;#039;&amp;#039; field identifies the high-level neural-network architecture used by the model.&lt;br /&gt;
&lt;br /&gt;
Historically, common values have included architectures such as:&lt;br /&gt;
&lt;br /&gt;
* WaveNet&lt;br /&gt;
* LSTM&lt;br /&gt;
&lt;br /&gt;
Other architectures supported by the NAM code can also be represented.&lt;br /&gt;
&lt;br /&gt;
The architecture is important because the configuration and weights must be interpreted according to the model architecture that created them.&lt;br /&gt;
&lt;br /&gt;
See [[NAM A2 Architecture]].&lt;br /&gt;
&lt;br /&gt;
== Config ==&lt;br /&gt;
&lt;br /&gt;
The &amp;#039;&amp;#039;&amp;#039;config&amp;#039;&amp;#039;&amp;#039; field contains architecture-specific configuration information.&lt;br /&gt;
&lt;br /&gt;
Depending on the architecture, this can describe characteristics such as:&lt;br /&gt;
&lt;br /&gt;
* Layer configuration&lt;br /&gt;
* Channel configuration&lt;br /&gt;
* Receptive-field structure&lt;br /&gt;
* Other parameters required to reconstruct the model&lt;br /&gt;
&lt;br /&gt;
The meaning of the configuration data therefore depends on the architecture specified in the file.&lt;br /&gt;
&lt;br /&gt;
== Weights ==&lt;br /&gt;
&lt;br /&gt;
The &amp;#039;&amp;#039;&amp;#039;weights&amp;#039;&amp;#039;&amp;#039; field contains the trained numerical parameters of the neural network.&lt;br /&gt;
&lt;br /&gt;
These values are the result of the training process.&lt;br /&gt;
&lt;br /&gt;
During playback, the NAM implementation reconstructs the appropriate model architecture and loads these trained parameters into it.&lt;br /&gt;
&lt;br /&gt;
The relationship between individual weights and the model depends on the architecture.&lt;br /&gt;
&lt;br /&gt;
== Sample rate ==&lt;br /&gt;
&lt;br /&gt;
A NAM file can contain a &amp;#039;&amp;#039;&amp;#039;sample_rate&amp;#039;&amp;#039;&amp;#039; field specifying the sample rate expected by the model.&lt;br /&gt;
&lt;br /&gt;
The value is expressed in samples per second (Hz).&lt;br /&gt;
&lt;br /&gt;
If the field is absent, the NAM specification states that implementations should generally assume &amp;#039;&amp;#039;&amp;#039;48 kHz&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Playback software or hardware must account appropriately for the sample rate expected by the model.&lt;br /&gt;
&lt;br /&gt;
== Metadata ==&lt;br /&gt;
&lt;br /&gt;
NAM files can contain a &amp;#039;&amp;#039;&amp;#039;metadata&amp;#039;&amp;#039;&amp;#039; dictionary with descriptive information about the model.&lt;br /&gt;
&lt;br /&gt;
Metadata is not merely cosmetic. Good metadata can make large model libraries substantially easier to identify, organize, search, and use correctly.&lt;br /&gt;
&lt;br /&gt;
Supported metadata can include information about:&lt;br /&gt;
&lt;br /&gt;
* Model name&lt;br /&gt;
* Creator&lt;br /&gt;
* Modeled equipment&lt;br /&gt;
* Tone&lt;br /&gt;
* Training&lt;br /&gt;
* Calibration&lt;br /&gt;
* Export date&lt;br /&gt;
&lt;br /&gt;
Not every NAM file contains all available metadata.&lt;br /&gt;
&lt;br /&gt;
== Model name ==&lt;br /&gt;
&lt;br /&gt;
The metadata field:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;name&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
can contain the name of the model.&lt;br /&gt;
&lt;br /&gt;
Compatible playback software may use this as the model&amp;#039;s displayed name rather than relying entirely on the filename.&lt;br /&gt;
&lt;br /&gt;
== Model creator ==&lt;br /&gt;
&lt;br /&gt;
The:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;modeled_by&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
field identifies the person or organization that created the model.&lt;br /&gt;
&lt;br /&gt;
This can be useful when models are redistributed or downloaded independently of the collection in which they were originally published.&lt;br /&gt;
&lt;br /&gt;
== Equipment metadata ==&lt;br /&gt;
&lt;br /&gt;
NAM supports several fields describing the equipment represented by the model.&lt;br /&gt;
&lt;br /&gt;
These include:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;gear_make&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
The manufacturer or make of the equipment.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;gear_model&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
The model of the equipment.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;gear_type&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
The type of equipment or signal chain represented by the NAM.&lt;br /&gt;
&lt;br /&gt;
The current specification defines gear-type values including:&lt;br /&gt;
&lt;br /&gt;
* amp&lt;br /&gt;
* pedal&lt;br /&gt;
* pedal_amp&lt;br /&gt;
* amp_cab&lt;br /&gt;
* amp_pedal_cab&lt;br /&gt;
* preamp&lt;br /&gt;
* studio&lt;br /&gt;
&lt;br /&gt;
These fields help answer an important playback question:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;What is actually contained in this model?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
See [[Capture Types]].&lt;br /&gt;
&lt;br /&gt;
== Tone type ==&lt;br /&gt;
&lt;br /&gt;
The metadata field:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;tone_type&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
can classify the general character of the model.&lt;br /&gt;
&lt;br /&gt;
The current NAM specification defines values including:&lt;br /&gt;
&lt;br /&gt;
* clean&lt;br /&gt;
* overdrive&lt;br /&gt;
* crunch&lt;br /&gt;
* hi_gain&lt;br /&gt;
* fuzz&lt;br /&gt;
&lt;br /&gt;
This provides a standardized way for model-management systems to organize captures according to their general sound.&lt;br /&gt;
&lt;br /&gt;
== Training metadata ==&lt;br /&gt;
&lt;br /&gt;
Models created with the simplified NAM trainers can contain a:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;training&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
metadata dictionary.&lt;br /&gt;
&lt;br /&gt;
This allows information about the training process to travel with the resulting model rather than being stored only in an external description.&lt;br /&gt;
&lt;br /&gt;
The exact training metadata may evolve as NAM development continues.&lt;br /&gt;
&lt;br /&gt;
== Calibration metadata ==&lt;br /&gt;
&lt;br /&gt;
NAM supports two particularly important calibration fields:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;input_level_dbu&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
and:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;output_level_dbu&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
These allow the model file to describe the analog level relationships used during capture.&lt;br /&gt;
&lt;br /&gt;
=== input_level_dbu ===&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;input_level_dbu&amp;#039;&amp;#039;&amp;#039; represents the analog level, expressed in dBu, presented to the modeled equipment when a 1 kHz digital sine wave has a peak level of 0 dBFS.&lt;br /&gt;
&lt;br /&gt;
This provides a reference between the digital signal and the electrical input level used during the capture.&lt;br /&gt;
&lt;br /&gt;
=== output_level_dbu ===&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;output_level_dbu&amp;#039;&amp;#039;&amp;#039; represents the analog level, expressed in dBu, of a 1 kHz sine wave that produces a 0 dBFS peak when fed into the recording interface used for the output of the modeled equipment.&lt;br /&gt;
&lt;br /&gt;
Together, these values can allow compatible systems to preserve meaningful gain relationships between capture and playback.&lt;br /&gt;
&lt;br /&gt;
See [[Gain Staging and Calibration]].&lt;br /&gt;
&lt;br /&gt;
== Why calibration metadata matters ==&lt;br /&gt;
&lt;br /&gt;
Consider two people using different audio interfaces.&lt;br /&gt;
&lt;br /&gt;
The same digital signal might produce different analog voltages from the two interfaces.&lt;br /&gt;
&lt;br /&gt;
Without calibration information, both users can load the same NAM model but drive it at different effective analog-equivalent levels.&lt;br /&gt;
&lt;br /&gt;
With appropriate calibration metadata and compatible playback equipment, the intended gain relationship can be reproduced more accurately.&lt;br /&gt;
&lt;br /&gt;
This is particularly important with nonlinear equipment because changing the effective input level can change:&lt;br /&gt;
&lt;br /&gt;
* Distortion&lt;br /&gt;
* Saturation&lt;br /&gt;
* Compression&lt;br /&gt;
* Attack&lt;br /&gt;
* Dynamic response&lt;br /&gt;
&lt;br /&gt;
Calibration therefore affects behavior, not merely volume.&lt;br /&gt;
&lt;br /&gt;
== Metadata is optional ==&lt;br /&gt;
&lt;br /&gt;
A NAM model does not need complete metadata in order to function.&lt;br /&gt;
&lt;br /&gt;
Many existing NAM files contain little descriptive information beyond the data required to run the model.&lt;br /&gt;
&lt;br /&gt;
However, models intended for public distribution are considerably more useful when they include or are accompanied by meaningful documentation.&lt;br /&gt;
&lt;br /&gt;
Useful information includes:&lt;br /&gt;
&lt;br /&gt;
* Equipment modeled&lt;br /&gt;
* Equipment settings&lt;br /&gt;
* Cabinet status&lt;br /&gt;
* Capture method&lt;br /&gt;
* Creator&lt;br /&gt;
* Calibration&lt;br /&gt;
* Model architecture&lt;br /&gt;
* Training information&lt;br /&gt;
&lt;br /&gt;
A filename alone is rarely sufficient documentation for a long-lived public model library.&lt;br /&gt;
&lt;br /&gt;
== Sequential models ==&lt;br /&gt;
&lt;br /&gt;
The NAM specification also supports &amp;#039;&amp;#039;&amp;#039;Sequential&amp;#039;&amp;#039;&amp;#039; models.&lt;br /&gt;
&lt;br /&gt;
A Sequential model combines complete child NAM models in processing order.&lt;br /&gt;
&lt;br /&gt;
Each child model contains its own:&lt;br /&gt;
&lt;br /&gt;
* Architecture&lt;br /&gt;
* Configuration&lt;br /&gt;
* Weights&lt;br /&gt;
&lt;br /&gt;
The wrapper itself contains the ordered collection of child models.&lt;br /&gt;
&lt;br /&gt;
This makes it possible for the NAM format to describe a processing chain composed of multiple NAM-compatible model elements rather than only a single model.&lt;br /&gt;
&lt;br /&gt;
The sample rates of the top-level Sequential model and its child models must agree.&lt;br /&gt;
&lt;br /&gt;
== Portability ==&lt;br /&gt;
&lt;br /&gt;
One of the important characteristics of the NAM ecosystem is that the model file is separate from the system that created it.&lt;br /&gt;
&lt;br /&gt;
A &amp;#039;&amp;#039;.nam&amp;#039;&amp;#039; file can potentially be:&lt;br /&gt;
&lt;br /&gt;
* Trained by one system&lt;br /&gt;
* Stored by another service&lt;br /&gt;
* Distributed through a model library&lt;br /&gt;
* Loaded into multiple software players&lt;br /&gt;
* Loaded into compatible hardware&lt;br /&gt;
&lt;br /&gt;
The model is therefore not inherently tied to the computer or service that performed the training.&lt;br /&gt;
&lt;br /&gt;
Actual compatibility still depends on whether the playback implementation supports the architecture and file-format version used by the model.&lt;br /&gt;
&lt;br /&gt;
== Forward compatibility ==&lt;br /&gt;
&lt;br /&gt;
NAM continues to develop.&lt;br /&gt;
&lt;br /&gt;
New architectures, metadata fields, and file-format capabilities can be introduced over time.&lt;br /&gt;
&lt;br /&gt;
A NAM player that predates a particular architecture may be able to recognize the file but still be unable to execute the model.&lt;br /&gt;
&lt;br /&gt;
For this reason, when a model fails to load, check:&lt;br /&gt;
&lt;br /&gt;
* Model architecture&lt;br /&gt;
* NAM file version&lt;br /&gt;
* Playback software version&lt;br /&gt;
* Hardware firmware version&lt;br /&gt;
&lt;br /&gt;
before assuming the file itself is corrupt.&lt;br /&gt;
&lt;br /&gt;
== Editing NAM files ==&lt;br /&gt;
&lt;br /&gt;
Because the current NAM format is JSON-parsable, portions of a NAM file can technically be inspected using tools capable of reading JSON.&lt;br /&gt;
&lt;br /&gt;
However, users should not casually modify model configuration or weight data.&lt;br /&gt;
&lt;br /&gt;
Changing architecture-specific data without understanding its meaning can make the model invalid or alter its behavior.&lt;br /&gt;
&lt;br /&gt;
Metadata is a more appropriate area for tools specifically designed to manage or update descriptive information.&lt;br /&gt;
&lt;br /&gt;
Always preserve an original copy before manually modifying a model file.&lt;br /&gt;
&lt;br /&gt;
== File extension and filenames ==&lt;br /&gt;
&lt;br /&gt;
The &amp;#039;&amp;#039;.nam&amp;#039;&amp;#039; extension identifies the file as a Neural Amp Modeler model.&lt;br /&gt;
&lt;br /&gt;
The filename itself is not a reliable description of what the model contains.&lt;br /&gt;
&lt;br /&gt;
For example, a file named after an amplifier could represent:&lt;br /&gt;
&lt;br /&gt;
* Amplifier only&lt;br /&gt;
* Amplifier and cabinet&lt;br /&gt;
* Pedal and amplifier&lt;br /&gt;
* Amplifier, cabinet, and microphone&lt;br /&gt;
* A larger signal chain&lt;br /&gt;
&lt;br /&gt;
Consult metadata and creator documentation whenever possible.&lt;br /&gt;
&lt;br /&gt;
See [[Capture Types]].&lt;br /&gt;
&lt;br /&gt;
== Official specification ==&lt;br /&gt;
&lt;br /&gt;
The authoritative technical specification for the NAM model file format is maintained in the official Neural Amp Modeler documentation:&lt;br /&gt;
&lt;br /&gt;
https://neural-amp-modeler.readthedocs.io/en/latest/model-file.html&lt;br /&gt;
&lt;br /&gt;
Because NAM is under active development, developers implementing NAM file support should consult the current specification rather than relying solely on secondary documentation.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [[Neural Amp Modeler]]&lt;br /&gt;
* [[Training a NAM Model]]&lt;br /&gt;
* [[NAM A2 Architecture]]&lt;br /&gt;
* [[NAM Playback]]&lt;br /&gt;
* [[Gain Staging and Calibration]]&lt;br /&gt;
* [[Capture Types]]&lt;br /&gt;
* [[Troubleshooting Captures]]&lt;br /&gt;
* [[Glossary]]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;[https://namforum.com/ Discuss NAM models and file compatibility on NAMFORUM]&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
[[Category:Neural Amp Modeler]]&lt;br /&gt;
[[Category:Model formats]]&lt;br /&gt;
[[Category:Capture technology]]&lt;/div&gt;</summary>
		<author><name>NAMFORUM Sysop</name></author>
	</entry>
</feed>