@@ -18,7 +18,9 @@ namespace OpenAI {
1818 */
1919enum class Model {
2020 // GPT-5 series (Latest - 2025)
21- GPT_5, // gpt-5 - Next-generation model
21+ GPT_5, // gpt-5 - Next-generation model
22+ GPT_5_Mini, // gpt-5-mini - Smaller, cost-effective variant
23+ GPT_5_Nano, // gpt-5-nano - Fastest and cheapest GPT-5 variant
2224
2325 // O3 series (Latest - 2025)
2426 O3, // o3 - Latest reasoning model
@@ -61,6 +63,10 @@ inline std::string toString(Model model) {
6163 switch (model) {
6264 case Model::GPT_5:
6365 return " gpt-5" ;
66+ case Model::GPT_5_Mini:
67+ return " gpt-5-mini" ;
68+ case Model::GPT_5_Nano:
69+ return " gpt-5-nano" ;
6470 case Model::O3:
6571 return " o3" ;
6672 case Model::O3_Mini:
@@ -102,6 +108,8 @@ inline std::string toString(Model model) {
102108 */
103109inline Model modelFromString (const std::string& modelStr) {
104110 if (modelStr == " gpt-5" ) return Model::GPT_5;
111+ if (modelStr == " gpt-5-mini" ) return Model::GPT_5_Mini;
112+ if (modelStr == " gpt-5-nano" ) return Model::GPT_5_Nano;
105113 if (modelStr == " o3" ) return Model::O3;
106114 if (modelStr == " o3-mini" ) return Model::O3_Mini;
107115 if (modelStr == " o1" ) return Model::O1;
@@ -126,6 +134,8 @@ inline Model modelFromString(const std::string& modelStr) {
126134inline bool supportsStructuredOutputs (Model model) {
127135 switch (model) {
128136 case Model::GPT_5:
137+ case Model::GPT_5_Mini:
138+ case Model::GPT_5_Nano:
129139 case Model::O3:
130140 case Model::O3_Mini:
131141 case Model::O1:
0 commit comments