Skip to content

Neptune explained#

The topics in this section explain Neptune's core concepts in more detail.

What are workspaces and projects?
  • A Neptune project is a collection of experiments. It typically represents one machine learning task.
  • A Neptune workspace can contain projects and members.

    You can have project-level access control within a workspace.

Learn more: Workspaces and projects →

I work with sensitive data. What should I know?

You can control what data is logged and who can access it in Neptune.

  • You can track artifact versions without storing any contents on Neptune servers.
  • Source code and system metrics are logged by default, but you can disable it.
  • You can host Neptune fully on your own infra, even without internet access.

Learn more: Privacy and security information →

What are Neptune objects?

They're "containers" that you can use in your code, to log metadata on experiment-, model-, or task-level:

Learn more: Neptune objects →

What are namespaces and fields?

They refer to the folder-like structure used to organize metadata within a run or other object:

|-- field: Float             # For example, run["f1_score"] = 0.82
|-- namespace
    |-- field: FloatSeries   # For example, run["metrics/acc"].append(0.76)
|-- namespace
    |-- field: String        # For example, run["config/activation"] = "ELU"

Learn more: Namespaces and fields →

What are field types and what logging methods can I use?

When logging some metadata to a field, its type is determined by what you're logging and how.

The field type affects how the metadata is stored, displayed, and interacted with:

Logging example
run["metrics/acc"].append(0.98)          # "metrics/acc" is a FloatSeries field
run["metrics/acc"].append(0.99)          # You can keep appending float values
run["metrics/acc"] = "High accuracy!"    # Error: You can't suddenly assign a string
Fetching example
acc = run["metrics/acc"].fetch_values()  # Series fields support fetching all values
acc = run["metrics/acc"].fetch_last()    # ... or just the last value
run["metrics/acc"].download()            # Error: download() is for file fields

Learn more: