Documentation
¶
Index ¶
- Variables
- type Adaptor
- func (a *Adaptor) ConvertAudioRequest(c context.Context, info *common.RelayInfo, request dto.AudioRequest) (io.Reader, error)
- func (a *Adaptor) ConvertClaudeRequest(c context.Context, info *common.RelayInfo, request *dto.ClaudeRequest) (any, error)
- func (a *Adaptor) ConvertEmbeddingRequest(c context.Context, info *common.RelayInfo, request dto.EmbeddingRequest) (any, error)
- func (a *Adaptor) ConvertGeminiRequest(context.Context, *common.RelayInfo, *dto.GeminiChatRequest) (any, error)
- func (a *Adaptor) ConvertImageRequest(c context.Context, info *common.RelayInfo, request dto.ImageRequest) (any, error)
- func (a *Adaptor) ConvertOpenAIRequest(c context.Context, info *common.RelayInfo, request *dto.GeneralOpenAIRequest) (any, error)
- func (a *Adaptor) ConvertOpenAIResponsesRequest(c context.Context, info *common.RelayInfo, request dto.OpenAIResponsesRequest) (any, error)
- func (a *Adaptor) ConvertRerankRequest(c context.Context, relayMode int, request dto.RerankRequest) (any, error)
- func (a *Adaptor) DoRequest(c context.Context, info *common.RelayInfo, requestBody io.Reader) (*http.Response, error)
- func (a *Adaptor) DoResponse(c context.Context, resp *http.Response, info *common.RelayInfo, ...) (usage any, err *types.NewAPIError)
- func (a *Adaptor) GetChannelName() string
- func (a *Adaptor) GetModelList() (models []string)
- func (a *Adaptor) GetRequestURL(info *common.RelayInfo) (string, error)
- func (a *Adaptor) Init(info *common.RelayInfo)
- func (a *Adaptor) SetupRequestHeader(c context.Context, req *http.Header, info *common.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 (*Adaptor) ConvertClaudeRequest ¶
func (*Adaptor) ConvertEmbeddingRequest ¶
func (*Adaptor) ConvertGeminiRequest ¶
func (*Adaptor) ConvertImageRequest ¶
func (*Adaptor) ConvertOpenAIRequest ¶
func (*Adaptor) ConvertOpenAIResponsesRequest ¶
func (*Adaptor) ConvertRerankRequest ¶
func (*Adaptor) DoResponse ¶
func (*Adaptor) GetChannelName ¶
func (*Adaptor) GetModelList ¶
func (*Adaptor) GetRequestURL ¶
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"`
ContextManagement json.RawMessage `json:"context_management,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.