apache / apache/texera

Add Hugging Face inference operator

Open
#5,041 5 comments 0 reactions 0 assignees View on GitHub
Dominant language
Scala
Stars
314
Forks
187
Avg merge
1d 21h
Merged PRs (30d)
214

Description

### Feature Summary

Add a Hugging Face operator to Texera so users can run pretrained models from the Hugging Face Hub directly inside workflows. This feature makes model inference a first-class workflow step, so users can apply text, image, video and audio models without writing code.

The operator would let users:

- Pick a Hugging Face task such as text generation, summarization, image classification, ASR, or VQA
- Browse/search available models for that task
- Provide the right input column or upload media when the task requires it via property panel
- Configure model-specific parameters like prompt, temperature, token limits, and output column name
- Produce a workflow output that can be chained into downstream operators

### Proposed Solution or Design

The operator should work as a guided, task-aware inference component rather than a generic API wrapper. The user picks a task first, then the UI only shows the fields that matter for that task.

A simple flow would look like this:

Image
This is a screenshot of a selected text-generation task where the user asks a question via the input operator and the selected Hugging Face model based on the models list produces the answer as workflow output.
Image
This is a screenshot of a selected image-classification task where the user provides an image in the property panel and the chosen model outputs JSON predictions (predicted breeds with confidence).

Here are some examples of task-based flows:
- Text generation: select a prompt column, choose a model, set max tokens and temperature, get generated text in a result column
- Summarization: select a text column, choose a summarization model, emit the summary
- Image classification: upload or reference an image, choose an image model, output labels or captions

A task-aware configuration layout could be:
1. Task
2. Model
3. Input source
4. Task-specific options
5. Result column

The design should include a few key behaviors:

- Model discovery and search from the Hugging Face Hub
- Backend proxying for Hugging Face API calls so the UI does not talk to Hugging Face directly
- API token support, with token fallback from environment or deployment config
- Caching of model and task metadata to reduce repeated remote calls
- Task-based validation so invalid combinations are rejected early, for example requiring an image upload for image-only tasks

### Affected Area

Workflow Engine (Amber), Workflow UI, Storage / Metadata, Deployment / Infrastructure

Contributor guide

Open the contributing guide

Research direction

Start by mapping the Workflow Engine (Amber), Workflow UI, Storage / Metadata, and Deployment / Infrastructure areas named in the issue. Identify the existing operator, property-panel, metadata, and remote-service entry points before proposing a design. Done means a task-aware Hugging Face operator supports model discovery, validation, configuration, and chained workflow output across the requested task types.

Written by the indexing model from the issue text.

Assessment

Tech stack
huggingface
Domain
full-stack, infrastructure, machine-learning
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.