modal-examples icon indicating copy to clipboard operation
modal-examples copied to clipboard

Add Nerf Studio Example

Open nbardy opened this issue 1 year ago • 2 comments

This adds a nerf studio example to modal.

Setting this up for myself and the build setup got a little complicated.

Type of Change

  • [X] New example
  • [ ] Example updates (Bug fixes, new features, etc.)
  • [ ] Other (changes to the codebase, but not to examples)

Checklist

  • [ ] Example is testable in synthetic monitoring system, or lambda-test: false is added to example frontmatter (---)
    • [ ] Example is tested by executing with modal run or an alternative cmd is provided in the example frontmatter (e.g. cmd: ["modal", "deploy"])
    • [ ] Example is tested by running with no arguments or the args are provided in the example frontmatter (e.g. args: ["--prompt", "Formula for room temperature superconductor:"]
  • [ ] Example is documented with comments throughout, in a Literate Programming style.
  • [ ] Example does not require third-party dependencies to be installed locally
  • [ ] Example pins its dependencies
    • [ ] Example pins container images to a stable tag, not a dynamic tag like latest
    • [ ] Example specifies a python_version for the base image, if it is used
    • [ ] Example pins all dependencies to at least minor version, ~=x.y.z or ==x.y
    • [ ] Example dependencies with version < 1 are pinned to patch version, ==0.y.z

Outside contributors

You're great! Thanks for your contribution.

nbardy avatar Apr 29 '24 06:04 nbardy

Would love to get a NeRF example in!

The install does seem kinda messy though.

Looking at their docs, I see

pip install torch==2.1.2+cu118 torchvision==0.16.2+cu118 --extra-index-url https://download.pytorch.org/whl/cu118

Torch now bundles the CUDA toolkit, including nvcc, so the above should work to get you everything. Maybe it's just a matter of setting CUDA_HOME and symlinking?

I also don't think we to install the editable version of the library, since folks won't be editing the library on Modal.

So I think we can shrink this down to a few pip_installs -- one for main deps (torch, transformers, ninja), one for tiny-cuda-nn, one for nerfstudio, and maybe one more for kplanes-nerfstudio.

HMU in the Modal Slack if you want to pair on it for a bit.

charlesfrye avatar Apr 29 '24 07:04 charlesfrye

dromni/nerfstudio

I ended up finding a docker image. I think this is probably the better way to do it.

I also don't think we to install the editable version of the library, since folks won't be editing the library on Modal.

I do want to fork the repo and develop on it from this setup. Probably should move that out to an optional flag to use a local version.

@charlesfrye Hoping to pick this up in the evenings after work this week. But not so much time this week.

nbardy avatar Apr 29 '24 17:04 nbardy

@nbardy closing this one for now but keeping the branch around in case you want to pick it up again!

charlesfrye avatar Sep 11 '24 21:09 charlesfrye