浏览代码

feat: amazon.nova-premier-v1:0

huanghejian 5 月之前
父节点
当前提交
684caa3673
共有 2 个文件被更改,包括 13 次插入10 次删除
  1. 4 3
      relay/channel/aws/constants.go
  2. 9 7
      relay/channel/aws/dto.go

+ 4 - 3
relay/channel/aws/constants.go

@@ -17,9 +17,10 @@ var awsModelIDMap = map[string]string{
 	"claude-opus-4-20250514":     "anthropic.claude-opus-4-20250514-v1:0",
 	"claude-opus-4-1-20250805":   "anthropic.claude-opus-4-1-20250805-v1:0",
 	// Nova models
-	"amazon.nova-micro-v1:0": "us.amazon.nova-micro-v1:0",
-	"amazon.nova-lite-v1:0":  "us.amazon.nova-lite-v1:0",
-	"amazon.nova-pro-v1:0":   "us.amazon.nova-pro-v1:0",
+	"amazon.nova-micro-v1:0":   "us.amazon.nova-micro-v1:0",
+	"amazon.nova-lite-v1:0":    "us.amazon.nova-lite-v1:0",
+	"amazon.nova-pro-v1:0":     "us.amazon.nova-pro-v1:0",
+	"amazon.nova-premier-v1:0": "us.amazon.nova-premier-v1:0",
 }
 
 var awsModelCanCrossRegionMap = map[string]map[string]bool{

+ 9 - 7
relay/channel/aws/dto.go

@@ -35,7 +35,7 @@ func copyRequest(req *dto.ClaudeRequest) *AwsClaudeRequest {
 	}
 }
 
-// Nova模型使用messages-v1格式
+// NovaMessage Nova模型使用messages-v1格式
 type NovaMessage struct {
 	Role    string        `json:"role"`
 	Content []NovaContent `json:"content"`
@@ -46,15 +46,17 @@ type NovaContent struct {
 }
 
 type NovaRequest struct {
-	SchemaVersion   string              `json:"schemaVersion"`
-	Messages        []NovaMessage       `json:"messages"`
-	InferenceConfig NovaInferenceConfig `json:"inferenceConfig,omitempty"`
+	SchemaVersion   string               `json:"schemaVersion"`             // 请求版本,例如 "1.0"
+	Messages        []NovaMessage        `json:"messages"`                  // 对话消息列表
+	InferenceConfig *NovaInferenceConfig `json:"inferenceConfig,omitempty"` // 推理配置,可选
 }
 
 type NovaInferenceConfig struct {
-	MaxTokens   int     `json:"maxTokens,omitempty"`
-	Temperature float64 `json:"temperature,omitempty"`
-	TopP        float64 `json:"topP,omitempty"`
+	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"` // 停止生成的序列
 }
 
 // 转换OpenAI请求为Nova格式