(config ThinkingConfig)
| 476 | } |
| 477 | |
| 478 | func reasoningEffortFromConfig(config ThinkingConfig) string { |
| 479 | if !hasThinkingConfig(config) { |
| 480 | return "" |
| 481 | } |
| 482 | switch config.Mode { |
| 483 | case ModeNone: |
| 484 | return string(LevelNone) |
| 485 | case ModeAuto: |
| 486 | return string(LevelAuto) |
| 487 | case ModeLevel: |
| 488 | return strings.ToLower(strings.TrimSpace(string(config.Level))) |
| 489 | case ModeBudget: |
| 490 | level, ok := ConvertBudgetToLevel(config.Budget) |
| 491 | if !ok { |
| 492 | return "" |
| 493 | } |
| 494 | return level |
| 495 | default: |
| 496 | return "" |
| 497 | } |
| 498 | } |
| 499 | |
| 500 | // extractClaudeConfig extracts thinking configuration from Claude format request body. |
| 501 | // |
no test coverage detected