@@ -130,7 +130,112 @@ export const MODEL_LIST = {
130130    'mistral-moderation-2411' , 
131131    'mistral-moderation-latest' 
132132  ] , 
133-   deepseek : [ 'deepseek-chat' ,  'deepseek-reasoner' ] 
133+   deepseek : [ 'deepseek-chat' ,  'deepseek-reasoner' ] , 
134+ 
135+   // AI/ML API available chat-completion models 
136+   // https://api.aimlapi.com/v1/models 
137+   aimlapi : [ 
138+     'openai/gpt-4o' , 
139+     'gpt-4o-2024-08-06' , 
140+     'gpt-4o-2024-05-13' , 
141+     'gpt-4o-mini' , 
142+     'gpt-4o-mini-2024-07-18' , 
143+     'chatgpt-4o-latest' , 
144+     'gpt-4-turbo' , 
145+     'gpt-4-turbo-2024-04-09' , 
146+     'gpt-4' , 
147+     'gpt-4-0125-preview' , 
148+     'gpt-4-1106-preview' , 
149+     'gpt-3.5-turbo' , 
150+     'gpt-3.5-turbo-0125' , 
151+     'gpt-3.5-turbo-1106' , 
152+     'o1-preview' , 
153+     'o1-preview-2024-09-12' , 
154+     'o1-mini' , 
155+     'o1-mini-2024-09-12' , 
156+     'o3-mini' , 
157+     'gpt-4o-audio-preview' , 
158+     'gpt-4o-mini-audio-preview' , 
159+     'gpt-4o-search-preview' , 
160+     'gpt-4o-mini-search-preview' , 
161+     'openai/gpt-4.1-2025-04-14' , 
162+     'openai/gpt-4.1-mini-2025-04-14' , 
163+     'openai/gpt-4.1-nano-2025-04-14' , 
164+     'openai/o4-mini-2025-04-16' , 
165+     'openai/o3-2025-04-16' , 
166+     'o1' , 
167+     'openai/o3-pro' , 
168+     'meta-llama/Llama-3.2-90B-Vision-Instruct-Turbo' , 
169+     'google/gemma-2-27b-it' , 
170+     'meta-llama/Llama-Vision-Free' , 
171+     'Qwen/Qwen2-72B-Instruct' , 
172+     'mistralai/Mixtral-8x7B-Instruct-v0.1' , 
173+     'nvidia/Llama-3.1-Nemotron-70B-Instruct-HF' , 
174+     'NousResearch/Nous-Hermes-2-Mixtral-8x7B-DPO' , 
175+     'meta-llama/Llama-3.3-70B-Instruct-Turbo' , 
176+     'meta-llama/Llama-3.2-3B-Instruct-Turbo' , 
177+     'meta-llama/Llama-3.2-11B-Vision-Instruct-Turbo' , 
178+     'meta-llama/Llama-Guard-3-11B-Vision-Turbo' , 
179+     'Qwen/Qwen2.5-7B-Instruct-Turbo' , 
180+     'Qwen/Qwen2.5-Coder-32B-Instruct' , 
181+     'meta-llama/Meta-Llama-3-8B-Instruct-Lite' , 
182+     'meta-llama/Llama-3-8b-chat-hf' , 
183+     'meta-llama/Llama-3-70b-chat-hf' , 
184+     'Qwen/Qwen2.5-72B-Instruct-Turbo' , 
185+     'Qwen/QwQ-32B' , 
186+     'meta-llama/Meta-Llama-3.1-405B-Instruct-Turbo' , 
187+     'meta-llama/Meta-Llama-3.1-8B-Instruct-Turbo' , 
188+     'meta-llama/Meta-Llama-3.1-70B-Instruct-Turbo' , 
189+     'mistralai/Mistral-7B-Instruct-v0.2' , 
190+     'meta-llama/LlamaGuard-2-8b' , 
191+     'mistralai/Mistral-7B-Instruct-v0.1' , 
192+     'mistralai/Mistral-7B-Instruct-v0.3' , 
193+     'meta-llama/Meta-Llama-Guard-3-8B' , 
194+     'meta-llama/llama-4-scout' , 
195+     'meta-llama/llama-4-maverick' , 
196+     'Qwen/Qwen3-235B-A22B-fp8-tput' , 
197+     'claude-3-opus-20240229' , 
198+     'claude-3-haiku-20240307' , 
199+     'claude-3-5-sonnet-20240620' , 
200+     'claude-3-5-sonnet-20241022' , 
201+     'claude-3-5-haiku-20241022' , 
202+     'claude-3-7-sonnet-20250219' , 
203+     'claude-sonnet-4-20250514' , 
204+     'claude-opus-4-20250514' , 
205+     'google/gemini-2.0-flash-exp' , 
206+     'google/gemini-2.0-flash' , 
207+     'google/gemini-2.5-pro' , 
208+     'google/gemini-2.5-flash' , 
209+     'deepseek-chat' , 
210+     'deepseek-reasoner' , 
211+     'qwen-max' , 
212+     'qwen-plus' , 
213+     'qwen-turbo' , 
214+     'qwen-max-2025-01-25' , 
215+     'mistralai/mistral-tiny' , 
216+     'mistralai/mistral-nemo' , 
217+     'anthracite-org/magnum-v4-72b' , 
218+     'nvidia/llama-3.1-nemotron-70b-instruct' , 
219+     'cohere/command-r-plus' , 
220+     'mistralai/codestral-2501' , 
221+     'google/gemma-3-4b-it' , 
222+     'google/gemma-3-12b-it' , 
223+     'google/gemma-3-27b-it' , 
224+     'google/gemini-2.5-flash-lite-preview' , 
225+     'deepseek/deepseek-prover-v2' , 
226+     'google/gemma-3n-e4b-it' , 
227+     'cohere/command-a' , 
228+     'MiniMax-Text-01' , 
229+     'abab6.5s-chat' , 
230+     'minimax/m1' , 
231+     'bagoodex/bagoodex-search-v1' , 
232+     'moonshot/kimi-k2-preview' , 
233+     'perplexity/sonar' , 
234+     'perplexity/sonar-pro' , 
235+     'x-ai/grok-4-07-09' , 
236+     'x-ai/grok-3-beta' , 
237+     'x-ai/grok-3-mini-beta' , 
238+   ] , 
134239} ; 
135240
136241const  getDefaultModel  =  ( provider : string  |  undefined ) : string  =>  { 
@@ -149,6 +254,8 @@ const getDefaultModel = (provider: string | undefined): string => {
149254      return  MODEL_LIST . mistral [ 0 ] ; 
150255    case  'deepseek' :
151256      return  MODEL_LIST . deepseek [ 0 ] ; 
257+     case  'aimlapi' :
258+       return  MODEL_LIST . aimlapi [ 0 ] ; 
152259    default :
153260      return  MODEL_LIST . openai [ 0 ] ; 
154261  } 
@@ -322,9 +429,10 @@ export const configValidators = {
322429        'test' , 
323430        'flowise' , 
324431        'groq' , 
325-         'deepseek' 
432+         'deepseek' , 
433+         'aimlapi' , 
326434      ] . includes ( value )  ||  value . startsWith ( 'ollama' ) , 
327-       `${ value }  
435+       `${ value } , 'aimlapi'  or 'openai' (default)` 
328436    ) ; 
329437
330438    return  value ; 
@@ -372,7 +480,8 @@ export enum OCO_AI_PROVIDER_ENUM {
372480  GROQ  =  'groq' , 
373481  MISTRAL  =  'mistral' , 
374482  MLX  =  'mlx' , 
375-   DEEPSEEK  =  'deepseek' 
483+   DEEPSEEK  =  'deepseek' , 
484+   AIMLAPI  =  'aimlapi' , 
376485} 
377486
378487export  type  ConfigType  =  { 
0 commit comments