feat: initial code for fal.ai integration

This commit is contained in:
2024-07-25 10:36:24 +01:00
parent 9869c3524e
commit 0e744af73f
4 changed files with 48 additions and 9 deletions

35
fal_app.py Normal file
View File

@@ -0,0 +1,35 @@
import io
import fal
import torch
from fal.toolkit import File
from prompts import PROMPTS
class InfinifiFalApp(fal.App, keep_alive=300):
machine_type = "GPU-A6000"
requirements = [
"torch==2.1.0",
"audiocraft==1.3.0",
"torchaudio==2.1.0",
"websockets==11.0.3",
]
def setup(self):
import torchaudio
from audiocraft.models.musicgen import MusicGen
self.model = MusicGen.get_pretrained("facebook/musicgen-large")
self.model.set_generation_params(duration=60)
@fal.endpoint("/generate")
def run(self):
wav = self.model.generate(PROMPTS)
serialized = []
for one_wav in wav:
buf = io.BytesIO()
torch.save(one_wav.cpu(), buf)
serialized.append(buf.getvalue())
return serialized