Documentation
¶
Index ¶
- Variables
- type Adaptor
- func (a *Adaptor) ConvertAudioRequest(c *gin.Context, info *relaycommon.RelayInfo, request dto.AudioRequest) (io.Reader, error)
- func (a *Adaptor) ConvertClaudeRequest(c *gin.Context, info *relaycommon.RelayInfo, request *dto.ClaudeRequest) (any, error)
- func (a *Adaptor) ConvertEmbeddingRequest(c *gin.Context, info *relaycommon.RelayInfo, request dto.EmbeddingRequest) (any, error)
- func (a *Adaptor) ConvertGeminiRequest(*gin.Context, *relaycommon.RelayInfo, *dto.GeminiChatRequest) (any, error)
- func (a *Adaptor) ConvertImageRequest(c *gin.Context, info *relaycommon.RelayInfo, request dto.ImageRequest) (any, error)
- func (a *Adaptor) ConvertOpenAIRequest(c *gin.Context, info *relaycommon.RelayInfo, request *dto.GeneralOpenAIRequest) (any, error)
- func (a *Adaptor) ConvertOpenAIResponsesRequest(c *gin.Context, info *relaycommon.RelayInfo, ...) (any, error)
- func (a *Adaptor) ConvertRerankRequest(c *gin.Context, relayMode int, request dto.RerankRequest) (any, error)
- func (a *Adaptor) DoRequest(c *gin.Context, info *relaycommon.RelayInfo, requestBody io.Reader) (any, error)
- func (a *Adaptor) DoResponse(c *gin.Context, resp *http.Response, info *relaycommon.RelayInfo) (usage any, err *types.NewAPIError)
- func (a *Adaptor) GetChannelName() string
- func (a *Adaptor) GetModelList() (models []string)
- func (a *Adaptor) GetRequestURL(info *relaycommon.RelayInfo) (string, error)
- func (a *Adaptor) Init(info *relaycommon.RelayInfo)
- func (a *Adaptor) SetupRequestHeader(c *gin.Context, req *http.Header, info *relaycommon.RelayInfo) error
- type AwsClaudeRequest
- type ClientMode
- type NovaContent
- type NovaInferenceConfig
- type NovaMessage
- type NovaRequest
Constants ¶
This section is empty.
Variables ¶
View Source
var ChannelName = "aws"
Functions ¶
This section is empty.
Types ¶
type Adaptor ¶
type Adaptor struct {
ClientMode ClientMode
AwsClient *bedrockruntime.Client
AwsModelId string
AwsReq any
IsNova bool
}
func (*Adaptor) ConvertAudioRequest ¶
func (a *Adaptor) ConvertAudioRequest(c *gin.Context, info *relaycommon.RelayInfo, request dto.AudioRequest) (io.Reader, error)
func (*Adaptor) ConvertClaudeRequest ¶
func (a *Adaptor) ConvertClaudeRequest(c *gin.Context, info *relaycommon.RelayInfo, request *dto.ClaudeRequest) (any, error)
func (*Adaptor) ConvertEmbeddingRequest ¶
func (a *Adaptor) ConvertEmbeddingRequest(c *gin.Context, info *relaycommon.RelayInfo, request dto.EmbeddingRequest) (any, error)
func (*Adaptor) ConvertGeminiRequest ¶
func (a *Adaptor) ConvertGeminiRequest(*gin.Context, *relaycommon.RelayInfo, *dto.GeminiChatRequest) (any, error)
func (*Adaptor) ConvertImageRequest ¶
func (a *Adaptor) ConvertImageRequest(c *gin.Context, info *relaycommon.RelayInfo, request dto.ImageRequest) (any, error)
func (*Adaptor) ConvertOpenAIRequest ¶
func (a *Adaptor) ConvertOpenAIRequest(c *gin.Context, info *relaycommon.RelayInfo, request *dto.GeneralOpenAIRequest) (any, error)
func (*Adaptor) ConvertOpenAIResponsesRequest ¶
func (a *Adaptor) ConvertOpenAIResponsesRequest(c *gin.Context, info *relaycommon.RelayInfo, request dto.OpenAIResponsesRequest) (any, error)
func (*Adaptor) ConvertRerankRequest ¶
func (*Adaptor) DoResponse ¶
func (a *Adaptor) DoResponse(c *gin.Context, resp *http.Response, info *relaycommon.RelayInfo) (usage any, err *types.NewAPIError)
func (*Adaptor) GetChannelName ¶
func (*Adaptor) GetModelList ¶
func (*Adaptor) GetRequestURL ¶
func (a *Adaptor) GetRequestURL(info *relaycommon.RelayInfo) (string, error)
func (*Adaptor) Init ¶
func (a *Adaptor) Init(info *relaycommon.RelayInfo)
func (*Adaptor) SetupRequestHeader ¶
type AwsClaudeRequest ¶
type AwsClaudeRequest struct {
// AnthropicVersion should be "bedrock-2023-05-31"
AnthropicVersion string `json:"anthropic_version"`
AnthropicBeta json.RawMessage `json:"anthropic_beta,omitempty"`
System any `json:"system,omitempty"`
Messages []dto.ClaudeMessage `json:"messages"`
MaxTokens uint `json:"max_tokens,omitempty"`
Temperature *float64 `json:"temperature,omitempty"`
TopP float64 `json:"top_p,omitempty"`
TopK int `json:"top_k,omitempty"`
StopSequences []string `json:"stop_sequences,omitempty"`
Tools any `json:"tools,omitempty"`
ToolChoice any `json:"tool_choice,omitempty"`
Thinking *dto.Thinking `json:"thinking,omitempty"`
OutputConfig json.RawMessage `json:"output_config,omitempty"`
}
type ClientMode ¶
type ClientMode int
const ( ClientModeApiKey ClientMode = iota + 1 ClientModeAKSK )
type NovaContent ¶
type NovaContent struct {
Text string `json:"text"`
}
type NovaInferenceConfig ¶
type NovaInferenceConfig struct {
MaxTokens int `json:"maxTokens,omitempty"` // 最大生成的 token 数
Temperature float64 `json:"temperature,omitempty"` // 随机性 (默认 0.7, 范围 0-1)
TopP float64 `json:"topP,omitempty"` // nucleus sampling (默认 0.9, 范围 0-1)
TopK int `json:"topK,omitempty"` // 限制候选 token 数 (默认 50, 范围 0-128)
StopSequences []string `json:"stopSequences,omitempty"` // 停止生成的序列
}
type NovaMessage ¶
type NovaMessage struct {
Role string `json:"role"`
Content []NovaContent `json:"content"`
}
NovaMessage Nova模型使用messages-v1格式
type NovaRequest ¶
type NovaRequest struct {
SchemaVersion string `json:"schemaVersion"` // 请求版本,例如 "1.0"
Messages []NovaMessage `json:"messages"` // 对话消息列表
InferenceConfig *NovaInferenceConfig `json:"inferenceConfig,omitempty"` // 推理配置,可选
}
Click to show internal directories.
Click to hide internal directories.