dto.go 1.3 KB

123456789101112131415161718192021222324252627282930313233343536
  1. package aws
  2. import (
  3. "one-api/dto"
  4. )
  5. type AwsClaudeRequest struct {
  6. // AnthropicVersion should be "bedrock-2023-05-31"
  7. AnthropicVersion string `json:"anthropic_version"`
  8. System any `json:"system,omitempty"`
  9. Messages []dto.ClaudeMessage `json:"messages"`
  10. MaxTokens uint `json:"max_tokens,omitempty"`
  11. Temperature *float64 `json:"temperature,omitempty"`
  12. TopP float64 `json:"top_p,omitempty"`
  13. TopK int `json:"top_k,omitempty"`
  14. StopSequences []string `json:"stop_sequences,omitempty"`
  15. Tools any `json:"tools,omitempty"`
  16. ToolChoice any `json:"tool_choice,omitempty"`
  17. Thinking *dto.Thinking `json:"thinking,omitempty"`
  18. }
  19. func copyRequest(req *dto.ClaudeRequest) *AwsClaudeRequest {
  20. return &AwsClaudeRequest{
  21. AnthropicVersion: "bedrock-2023-05-31",
  22. System: req.System,
  23. Messages: req.Messages,
  24. MaxTokens: req.MaxTokens,
  25. Temperature: req.Temperature,
  26. TopP: req.TopP,
  27. TopK: req.TopK,
  28. StopSequences: req.StopSequences,
  29. Tools: req.Tools,
  30. ToolChoice: req.ToolChoice,
  31. Thinking: req.Thinking,
  32. }
  33. }