Skip to main content

A library of curricula for the VrForaging task.

Project description

Aind.Behavior.VrForaging.Curricula

CI License ruff uv

A repository of curricula for VR foraging task.

How to run a specific curriculum?

Curricula are modules of the main package: aind_behavior_vr_foraging_curricula.<curriculum_name>.

All curricula are available via the curriculum cli entry point. Available list of commands is printed with the -h flag:

uv run curriculum -h

List available curricula

Available curricula can be listed from the cli using:

uv run curriculum list

Running a curriculum

Curricula can be run using the run subcommand of the curriculum cli entry point.

uv run curriculum run -h

The following arguments are available for the run subcommand:

  • --data-directory: Path to the session data directory that will be used to calculate metrics (required)
  • --input-trainer-state: Path to a deserialized json file with the current trainer state (required)
  • --mute-suggestion: Disables the suggestion output (optional)
  • --output-suggestion: A path to save the serialized suggestion (optional)
  • --curriculum: The name of the curriculum to run (optional)

For a quick "demo" to ensure everything is working, you can run:

uv run curriculum run --data-directory "demo" --input-trainer-state "foo.json" --curriculum "template"

For real-world applications, you may want to omit the "--curriculum" flag and let the system automatically detect the curriculum from the trainer state.

Style guide

To keep things clear, I suggest the following naming convention:

  • Policies should start with p_ (e.g., p_identity_policy)
  • Policy transitions should start with pt_
  • Stages should start with s_ (e.g., s_stage1)
  • Stage transitions should start with st_ and should be named after the stages they transition between (e.g., st_s_stage1_s_stage2)

Define the following modules:

  • metrics: Defines (or imports) metrics classes and how to calculate them from data
  • stages: Defines the different stages of the VR foraging task. This includes task settings and, optionally, policies
  • curriculum: Defines the transitions between the stages and generate entry point to the application

Contributors

Contributions to this repository are welcome! However, please ensure that your code adheres to the recommended DevOps practices below:

Linting

We use ruff as our primary linting tool.

Testing

Attempt to add tests when new features are added. To run the currently available tests, run uv run pytest from the root of the repository.

Lock files

We use uv to manage our lock files and therefore encourage everyone to use uv as a package manager as well.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aind_behavior_vr_foraging_curricula-1.1.1rc1.tar.gz (29.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file aind_behavior_vr_foraging_curricula-1.1.1rc1.tar.gz.

File metadata

  • Download URL: aind_behavior_vr_foraging_curricula-1.1.1rc1.tar.gz
  • Upload date:
  • Size: 29.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for aind_behavior_vr_foraging_curricula-1.1.1rc1.tar.gz
Algorithm Hash digest
SHA256 1a14abe7cd9e75ab06a31b89c32c339787dcac30035a24b7a4a884fbba4f86de
MD5 c8d632554b531aefbec25dd2f2c9c281
BLAKE2b-256 854813f1bdbd1f4367f203ee11fd249ab3e37b2c6169bda154850387929de0d9

See more details on using hashes here.

File details

Details for the file aind_behavior_vr_foraging_curricula-1.1.1rc1-py3-none-any.whl.

File metadata

  • Download URL: aind_behavior_vr_foraging_curricula-1.1.1rc1-py3-none-any.whl
  • Upload date:
  • Size: 50.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for aind_behavior_vr_foraging_curricula-1.1.1rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 2cd16aea5d789dc8fb645a967fc87a9fba536906c1b5c11353e704213019d085
MD5 58c857d005f22d02b63d38bb8244fe0d
BLAKE2b-256 2c5954365f8b7796e3f5cd64a8e83881e89333c7a6b2a739b2c4a7d2deba17f3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page