brendon9x

brendon9x

Understanding the FLAME/fly runner model for container dependencies

Apologies if this is obvious, but I am trying to understand Fly, Flame and dependencies. The tl;dr is that I’m trying to scale a large amount of image captioning similar to Chris’s recent talk. The bit that is confusing me is how to install container dependencies such as FFmpeg and Ollama.

The mental model I’ve developed so far from watching talks and reading docs is as follows:

  1. KinoFlame needs to run inside Fly so that it can connect easily to the nodes
  2. Therefore, I should switch my Livebook to Remote/Fly-hosted
  3. This creates a machine using a livebook image matching the desktop version

Where my mental model ends is on FLAME runner instances. The bits confusing me:

  1. FLAME documentation implies the image is by default the same as the calling app, though it is possible to override
  2. In theory, if I want to create thumbnails using FFmpeg, I will need that installed. Outside of Livebook, I would just make this part of the application Dockerfile even if it’s only on FLAME nodes.
  3. But this doesn’t seem possible in the Livebook ecosystem because the parent image is either “Livebook” or “Livebook + CUDA”
  4. I’m also not sure how FLAME nodes find each other – the bit that is confusing is that you can specify a custom image, but then I’m not sure what the constraints are for that image? Same Elixir version? Must join a cluster? etc.

Somewhat ironically, what I need to do is pretty much exactly what Chris demo’d recently (except I’m transcribing audio as well – you’d be surprised how much better the summaries are with audio). I’m just missing a piece of the puzzle.

Thanks in advance,
Brendon.

Where Next?

Popular in Questions Top

jononomo
I am trying to figure out how Mix knows whether the environment is test, dev, or prod – where is this set? Thanks.
New
hariharasudhan94
lets say i have a sample like a = 20; b = 10; if (a > b) do {:ok, "a"} end if (a < b) do {:ok, b} end if (a == b) do {:ok, "equa...
New
Brian
What is the proper way to load a module from a file in to IEX? In the python world, doing something like this pretty standard: from ....
New
ashish173
I am using Ecto timestamps with postgres, I can see the timestamps() use the :naive_dateime but for my use case I wanted to store the ti...
New
PeterCarter
There are pre-rolled solutions for other frameworks that do work. However, Phoenix does not seem to have these. Have people had good expe...
New
SoCreat
i’m a new one to elixir which editor can i use vs code? or atom? Thanks! :smiley:
New
JorisKok
I have a server on AWS, and was running a load test using artillery. When looking at the Phoenix dashboard I see the Ports going to 100% ...
New

Other popular topics Top

baxterw3b
Hi guys, i’m new in the Elixir world, and i have to say, that i love it! i’m having some problem to understand anonymous functions with ...
New
Qqwy
Original source of discussion: This topic on the Pragmatic Programmers’ Functional Web Development with Elixir, OTP, and Phoenix forum. ...
New
vonH
When I run the Plug and I recompile I wind up having to use Ctrl C to quit iex and start again. Witht the help of rlwrap I can use the cu...
New
Brian
What is the proper way to load a module from a file in to IEX? In the python world, doing something like this pretty standard: from ....
New
nsuchy
Hi. I’ve noticed that Windows Powershell has it’s own IEX command and you cannot access Elixir’s IEX due to the conflict. This isn’t a cr...
New
sen
Hi All, I set a environment variables in dev.exs , like below code. when i start server, how can i set the ${enable} value? thanks. d...
New

We're in Beta

About us Mission Statement