ccpoad / internal /testutil /types.go
anyalerob's picture
Upload folder using huggingface_hub
2986042 verified
Raw
History Blame Contribute Delete
1.45 kB
package testutil
import "fmt"
// TestChannelRequest 渠道测试请求结构
type TestChannelRequest struct {
Model string `json:"model" binding:"required"`
MaxTokens int `json:"max_tokens,omitempty"` // 可选,默认512
Stream bool `json:"stream,omitempty"` // 可选,流式响应
Content string `json:"content,omitempty"` // 可选,测试内容,默认"test"
Headers map[string]string `json:"headers,omitempty"` // 可选,自定义请求头
ChannelType string `json:"channel_type,omitempty"` // 可选,旧调用方兼容字段
ProtocolTransform string `json:"protocol_transform,omitempty"` // 可选,客户端协议;默认等于渠道原生协议
KeyIndex int `json:"key_index,omitempty"` // 可选,指定测试的Key索引,默认0(第一个)
APIKey string `json:"api_key,omitempty"` // 可选,测试当前编辑器中的未保存Key
BaseURL string `json:"base_url,omitempty"` // 可选,仅 /test-url 使用,强制指定测试URL(必须属于该渠道)
}
// Validate 实现RequestValidator接口
func (tr *TestChannelRequest) Validate() error {
if tr.Model == "" {
return fmt.Errorf("model cannot be empty")
}
return nil
}