fal

package
v0.14.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 16, 2026 License: MIT Imports: 16 Imported by: 0

Documentation

Overview

Package fal implements engine.Engine for the Fal.ai inference platform.

Execution is async via the queue API: POST https://queue.fal.run/{model} submits a request, GET https://queue.fal.run/{model}/requests/{id}/status polls for completion, GET https://queue.fal.run/{model}/requests/{id} retrieves the result. Auth: Authorization: Key {key}, env FAL_KEY.

Index

Constants

View Source
const (
	ModelFluxDev     = "fal-ai/flux/dev"
	ModelFluxSchnell = "fal-ai/flux/schnell"
	ModelFluxPro     = "fal-ai/flux-pro"
	ModelSDXL        = "fal-ai/fast-sdxl"
	ModelKling       = "fal-ai/kling-video/v2/master/text-to-video"
	ModelMinimax     = "fal-ai/minimax/video-01"
)

Model constants for popular Fal.ai models.

Variables

View Source
var (
	ErrMissingModel  = errors.New("fal: missing model")
	ErrMissingPrompt = errors.New("fal: missing prompt in workflow graph")
)

Functions

func ConfigSchema

func ConfigSchema() []engine.ConfigField

ConfigSchema returns the configuration fields required by the Fal.ai engine.

func ModelsByCapability

func ModelsByCapability() map[string][]string

ModelsByCapability returns popular Fal.ai models grouped by capability.

Types

type Config

type Config struct {
	APIKey            string
	QueueURL          string // e.g. "https://queue.fal.run"
	Model             string // e.g. "fal-ai/flux/dev"
	HTTPClient        *http.Client
	WaitForCompletion bool
	PollInterval      time.Duration
	OnProgress        epoll.OnProgress
}

Config configures the Fal.ai engine.

type Engine

type Engine struct {
	// contains filtered or unexported fields
}

Engine implements engine.Engine for Fal.ai.

func New

func New(cfg Config) *Engine

New creates a Fal.ai engine instance.

func (*Engine) Capabilities

func (e *Engine) Capabilities() engine.Capability

Capabilities implements engine.Describer.

func (*Engine) Execute

func (e *Engine) Execute(ctx context.Context, g workflow.Graph) (engine.Result, error)

Execute submits a generation request to Fal.ai.

func (*Engine) Resume

func (e *Engine) Resume(ctx context.Context, remoteID string) (engine.Result, error)

Resume implements engine.Resumer — resumes polling a previously submitted task.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL