| 1647 | 1647 | |
| 1648 | 1648 | // A few of OpenAIs reasoning models support reasoning effort |
| 1649 | 1649 | if (request.body.reasoning_effort && [CHAT_COMPLETION_SOURCES.CUSTOM, CHAT_COMPLETION_SOURCES.OPENAI].includes(request.body.chat_completion_source)) { |
| 1650 | | - if (['o1', 'o3-mini', 'o3-mini-2025-01-31', 'o4-mini', 'o4-mini-2025-04-16', 'o3', 'o3-2025-04-16'].includes(request.body.model)) { |
| 1650 | + const reasoningEffortModels = [ |
| 1651 | | - bodyParams['reasoning_effort'] = request.body.reasoning_effort; |
| 1651 | + 'o1', |
| 1652 | + 'o3-mini', |
| 1653 | + 'o3-mini-2025-01-31', |
| 1654 | + 'o4-mini', |
| 1655 | + 'o4-mini-2025-04-16', |
| 1656 | + 'o3', |
| 1657 | + 'o3-2025-04-16', |
| 1658 | + 'gpt-5', |
| 1659 | + 'gpt-5-2025-08-07', |
| 1660 | + 'gpt-5-mini', |
| 1661 | + 'gpt-5-mini-2025-08-07', |
| 1662 | + 'gpt-5-nano', |
| 1663 | + 'gpt-5-nano-2025-08-07', |
| 1664 | + ]; |
| 1665 | + const reasoningEffortMap = { |
| 1666 | + min: 'minimal', |
| 1667 | + }; |
| 1668 | + if (reasoningEffortModels.includes(request.body.model)) { |
| 1669 | + bodyParams['reasoning_effort'] = reasoningEffortMap[request.body.reasoning_effort] ?? request.body.reasoning_effort; |
| 1652 | 1670 | } |
| 1653 | 1671 | } |
| 1654 | 1672 | |