fal

package
v0.38.0 Latest Latest
Warning

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

Go to latest
Published: Jun 4, 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 DefaultProvider added in v0.15.0

func DefaultProvider() engine.Provider

DefaultProvider returns preset engine configurations for fal.

func ModelInfos added in v0.16.0

func ModelInfos() []engine.ModelInfo

ModelInfos returns i18n metadata for all Fal.ai models.

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