doubao

package
v1.0.3-preview.2 Latest Latest
Warning

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

Go to latest
Published: Jun 27, 2026 License: AGPL-3.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ChannelName = "doubao-video"
View Source
var ModelList = []string{
	"doubao-seedance-1-0-pro-250528",
	"doubao-seedance-1-0-lite-t2v",
	"doubao-seedance-1-0-lite-i2v",
	"doubao-seedance-1-5-pro-251215",
	"doubao-seedance-2-0-260128",
	"doubao-seedance-2-0-fast-260128",
}

Functions

func GetVideoInputRatio

func GetVideoInputRatio(modelName string) (float64, bool)

Types

type ContentItem

type ContentItem struct {
	Type     string    `json:"type,omitempty"`
	Text     string    `json:"text,omitempty"`
	ImageURL *MediaURL `json:"image_url,omitempty"`
	VideoURL *MediaURL `json:"video_url,omitempty"`
	AudioURL *MediaURL `json:"audio_url,omitempty"`
	Role     string    `json:"role,omitempty"`
}

type MediaURL

type MediaURL struct {
	URL string `json:"url,omitempty"`
}

type TaskAdaptor

type TaskAdaptor struct {
	taskcommon.BaseBilling
	ChannelType int
	// contains filtered or unexported fields
}

func (*TaskAdaptor) BuildRequestBody

func (a *TaskAdaptor) BuildRequestBody(c *gin.Context, info *relaycommon.RelayInfo) (io.Reader, error)

BuildRequestBody converts request into Doubao specific format.

func (*TaskAdaptor) BuildRequestHeader

func (a *TaskAdaptor) BuildRequestHeader(_ *gin.Context, req *http.Request, _ *relaycommon.RelayInfo) error

BuildRequestHeader sets required headers.

func (*TaskAdaptor) BuildRequestURL

func (a *TaskAdaptor) BuildRequestURL(info *relaycommon.RelayInfo) (string, error)

BuildRequestURL constructs the upstream URL.

func (*TaskAdaptor) ConvertToOpenAIVideo

func (a *TaskAdaptor) ConvertToOpenAIVideo(originTask *model.Task) ([]byte, error)

func (*TaskAdaptor) DoRequest

func (a *TaskAdaptor) DoRequest(c *gin.Context, info *relaycommon.RelayInfo, requestBody io.Reader) (*http.Response, error)

DoRequest delegates to common helper.

func (*TaskAdaptor) DoResponse

func (a *TaskAdaptor) DoResponse(c *gin.Context, resp *http.Response, info *relaycommon.RelayInfo) (taskID string, taskData []byte, taskErr *dto.TaskError)

DoResponse handles upstream response, returns taskID etc.

func (*TaskAdaptor) EstimateBilling

func (a *TaskAdaptor) EstimateBilling(c *gin.Context, info *relaycommon.RelayInfo) map[string]float64

EstimateBilling 检测请求 metadata 中是否包含视频输入,返回视频折扣 OtherRatio。

func (*TaskAdaptor) FetchTask

func (a *TaskAdaptor) FetchTask(baseUrl, key string, body map[string]any, proxy string) (*http.Response, error)

FetchTask fetch task status

func (*TaskAdaptor) GetChannelName

func (a *TaskAdaptor) GetChannelName() string

func (*TaskAdaptor) GetModelList

func (a *TaskAdaptor) GetModelList() []string

func (*TaskAdaptor) Init

func (a *TaskAdaptor) Init(info *relaycommon.RelayInfo)

func (*TaskAdaptor) ParseTaskResult

func (a *TaskAdaptor) ParseTaskResult(respBody []byte) (*relaycommon.TaskInfo, error)

func (*TaskAdaptor) ValidateRequestAndSetAction

func (a *TaskAdaptor) ValidateRequestAndSetAction(c *gin.Context, info *relaycommon.RelayInfo) (taskErr *dto.TaskError)

ValidateRequestAndSetAction parses body, validates fields and sets default action.

Jump to

Keyboard shortcuts

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