Discover Packages
github.com/LingByte/ling-base/relay
task
directory
Version:
v0.1.1
Opens a new window with list of versions in this module.
Published: Sep 3, 2026
License: MIT
Opens a new window with license information.
README
README
¶
task
Async task adaptor implementations for providers that use a submit-then-poll lifecycle (video generation, music generation, image generation). Each subdirectory implements common.TaskAdaptor for one provider.
Subdirectories
Directory
Provider
ali/
Alibaba Tongyi Wanxiang (video)
doubao/
ByteDance Doubao (video)
gemini/
Google Gemini (image/video)
hailuo/
Hailuo (MiniMax video)
jimeng/
Jimeng (ByteDance image)
kling/
Kuaishou Kling (video)
sora/
OpenAI Sora (video)
suno/
Suno (music)
vertex/
Google Vertex AI (video)
vidu/
Vidu (video)
taskcommon/
Shared helpers (UnmarshalMetadata, DefaultString, EncodeLocalTaskID)
taskmodel/
Task struct and TaskStatus constants
TaskAdaptor Lifecycle
Init -- initialize with RelayInfo
ValidateRequestAndSetAction -- validate and set action type
BuildRequestURL / BuildRequestHeader / BuildRequestBody -- construct the upstream request
DoRequest / DoResponse -- submit task, receive task ID
FetchTask / ParseTaskResult -- poll for completion
Usage
adaptor := common.GetTaskAdaptor(constant.APITypeGemini)
adaptor.Init(info)
adaptor.ValidateRequestAndSetAction(ctx, info)
// ... build and send request, then poll with FetchTask
Expand ▾
Collapse ▴
Directories
¶
Package taskcommon provides shared utilities for task providers.
Package taskcommon provides shared utilities for task providers.
Package taskmodel provides a minimal Task struct and status constants for async task providers.
Package taskmodel provides a minimal Task struct and status constants for async task providers.
Click to show internal directories.
Click to hide internal directories.