2
0

reasonmap.go 826 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. package reasonmap
  2. import (
  3. "strings"
  4. "github.com/QuantumNous/new-api/constant"
  5. )
  6. func ClaudeStopReasonToOpenAIFinishReason(stopReason string) string {
  7. switch strings.ToLower(stopReason) {
  8. case "stop_sequence":
  9. return "stop"
  10. case "end_turn":
  11. return "stop"
  12. case "max_tokens":
  13. return "length"
  14. case "tool_use":
  15. return "tool_calls"
  16. case "refusal":
  17. return constant.FinishReasonContentFilter
  18. default:
  19. return stopReason
  20. }
  21. }
  22. func OpenAIFinishReasonToClaudeStopReason(finishReason string) string {
  23. switch strings.ToLower(finishReason) {
  24. case "stop":
  25. return "end_turn"
  26. case "stop_sequence":
  27. return "stop_sequence"
  28. case "length", "max_tokens":
  29. return "max_tokens"
  30. case constant.FinishReasonContentFilter:
  31. return "refusal"
  32. case "tool_calls":
  33. return "tool_use"
  34. default:
  35. return finishReason
  36. }
  37. }