Components
Find reusable building blocks for designing your own AI systems.
315 components available

Generate Text (Ollama)
@ollamaDrives a chat turn against a locally served Ollama model from a user and system String, streaming the reply as String chunks and closing with a StreamEnd; for a bundled GPU sidecar prefer generate_text_sglang.

Detect Voice Activity (Silero VAD)
@sileroDownmixes each AudioFrame to mono at 16 kHz and runs Silero VAD, emitting speech spans as [{start: Double, end: Double}] in seconds relative to the frame — local speech intervals for trimming, gating, or routing.

Convert Value
Casts a primitive scalar stream t1 to another primitive scalar type t2 tick-for-tick, following standard C++ conversion rules. Acts as a type bridge between mismatched primitive streams; both sides are drawn from Int32/Int64/UInt32/UInt64/Bool/Char/Float/Double.
Detect Text Language (HuggingFace)
@huggingfaceIdentifies the language of a String (or [String]) with a fine-tuned HuggingFace classifier and emits the model's own language code by output slot: a top-1 String, a per-segment [String], a Classification, or a [Classification].

Estimate Density Map Peaks
@bleencoPicks discrete peaks from a DensityMap given a requested UInt64 count, locating local maxima as weighted centroids and emitting, by deploy-time arm, the top-N [Point<Double>], a peak count, or a [Landmark] list with density as confidence.

Recognize Action Skeleton (PoseC3D)
@kennymckormickBuffers a sliding window of per-frame Landmarks2d.Human22 skeletons, renders them into pseudo-heatmap volumes, and runs a PoseC3D 3D-CNN to emit a ranked [Classification] or a single top-1 Classification of NTU RGB+D 60 actions.

Extract Text Embedding (Ollama)
@ollamaSends each String to a co-located Ollama runtime and returns its embedding as an Embedding, optionally L2-normalised. Suited to fully local RAG backends where an Ollama service runs alongside the component.

Detect Wake Word (openWakeWord)
@dscripkaScores each AudioFrame against one or more openWakeWord models and emits a [Classification] entry for every wake word whose score clears the cutoff — a hot-mic gate or push-to-talk replacement for voice agents.

Collect
Buffers items of any type while a Bool gate stays true and emits the accumulated [t] list the moment the gate goes false, turning a windowed run of single values into one batched list.

Label COCO Body Landmarks
@bleencoReindexes a flat [Landmark] keypoint list in COCO-body order into a named Landmarks2d.Human17 record, exposing the 17 joints by field name instead of array position. A Maybe<Landmarks2d.Human17> sink instead yields an empty result when the list is short.

Unpack Tuple
Splits a tuple-typed stream ($ts...) into one output per element, preserving positional order. Each output port carries that element's type $ts verbatim, so arity equals the tuple length. Inverse of pack_tuple.

Measure Image Quality (OpenCV)
@opencvComputes no-reference quality metrics over an Image — a blur proxy plus brightness, contrast, and dark/blown pixel ratios — emitting a five-field record or a [Analytics.Metric] list per the downstream connection. No GPU.

Track Objects (OpenCV CSRT)
@opencvPairs an Image frame with a [BoundingBox] detection list, running one OpenCV single-object correlation filter (tracker) per object. The oneof output resolves to [Track] (default), [TrackedObject], [BoundingBox], or [UInt64]. Box-only: no mask.

Extract Text (EasyOCR)
@jaidedDetects and recognises text in each Image with EasyOCR and emits either a joined String transcript or per-line regions carrying Polygon<Double> or Rectangle<Double> bounds with optional confidence. Supports multi-language reading.

Interpolate Frames (FILM)
@googleTemporal frame interpolation using FILM. Synthesizes num_intermediate in-between Image frames per input, multiplying frame rate for slow-motion, fps boost, or smoothing a low-fps source before display or recording.

Estimate Crowd Count (CLIP EBC)
Density-based crowd counter: reads each Image and emits a head-density DensityMap, a per-class probability DensityMap, and a UInt64 total. Use where occlusion or distance defeats per-head bounding-box detection.

Input Video URL (FFmpeg)
@ffmpegOpens a network video source through FFmpeg and emits a VideoFrame stream, applying scheme-aware defaults for RTSP, RTMP, HTTP, and HLS and auto-reconnecting after a silence. Use it for FFmpeg-only network decode.

Denoise Audio (MP SENet)
@yxlu_0102MP-SENet magnitude-and-phase spectral denoiser: each AudioFrame is mixed to mono, resampled to 16 kHz, run through the network, and emitted as a denoised 16 kHz AudioFrame. Pick this for narrowband cleanup before ASR or VAD.
Ready to Build?
Join the technical teams using Pipelogic to ship AI systems faster.








