![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Objective-C) Azure AI Foundry List ModelsSee more AI ExamplesDemonstrates how to list available models in Azure AI Foundry.Note: This example requires Chilkat v11.3.0 or greater.
#import <CkoAi.h> #import <CkoJsonObject.h> #import <CkoStringTable.h> BOOL success = NO; // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. CkoAi *ai = [[CkoAi alloc] init]; // Before running the code, ensure the following prerequisites for App Registration in Microsoft Entra ID for Azure AI Foundry: // 1. Register an app for Azure AI Foundry. // 2. Assign an IAM Role to the resource to enable OAuth2 Client-Credentials for calling Azure AI Foundry. // For Azure AI Foundry we use "custom". ai.Provider = @"custom"; // The base URL format for the Chat Completions API when using the cognitiveservices.azure.com domain is: // https://{resource-name}.cognitiveservices.azure.com/openai/deployments/{deployment-id}/chat/completions?api-version={api-version} // The string "{deployment}" in the base URL is dynamically replaced with the selected AI model each time a request is sent. // In this case, the chosen model (below) is "gpt-4o". After substitution the base URL becomes: // https://chilkat.cognitiveservices.azure.com/openai/deployments/gpt-4o/chat/completions?api-version=2025-01-01-preview // In this example, our resource name is "chilkat", and the api-version is "2025-01-01-preview" ai.BaseUrl = @"https://chilkat.cognitiveservices.azure.com/openai/deployments/{deployment}/chat/completions?api-version=2025-01-01-preview"; ai.ApiSpec = @"ChatCompletions"; // Use your provider's API key. ai.ApiKey = @"MY_API_KEY"; // Set Azure Foundry specific params. CkoJsonObject *azureParams = [[CkoJsonObject alloc] init]; // The tenant ID is a GUID such as 17280f2d-f709-4a7b-af1d-9928190e13cf [azureParams UpdateString: @"azure.tenantId" value: @"TENANT_ID"]; // The client ID is a GUID such as 4abd4bf6-5260-4795-90f6-1e91ce4f582c [azureParams UpdateString: @"azure.clientId" value: @"CLIENT_ID"]; // Such as UZc8Q~YBrRIgfe_zbAOwWV.8ikuHa3JJF7LvCdt. (this is not a GUID) [azureParams UpdateString: @"azure.clientSecret" value: @"CLIENT_SECRET"]; // The subscription ID is a GUID such as 4abd4bf6-5260-4795-90f6-1e91ce4f582c [azureParams UpdateString: @"azure.subscription" value: @"SUBSCRIPTION_ID"]; // Such as eastus [azureParams UpdateString: @"azure.location" value: @"LOCATION"]; // With the Azure-specific provider params specified, // Chilkat will internally fetch the OAuth2 access token using client credentials as needed. [ai SetProviderParams: azureParams]; CkoStringTable *st = [[CkoStringTable alloc] init]; success = [ai GetModels: st]; if (success == NO) { NSLog(@"%@",ai.LastErrorText); return; } int count = [st.Count intValue]; int i = 0; while (i < count) { NSLog(@"%@",[st StringAt: [NSNumber numberWithInt: i]]); i = i + 1; } // Sample output: // dall-e-3 // dall-e-2 // code-cushman-fine-tune-002 // whisper // gpt-4 // gpt-4 // gpt-4 // gpt-4-32k // gpt-4 // gpt-4o // gpt-4o // gpt-4o-mini // gpt-4o // gpt-4o-audio-preview // gpt-4o-mini-audio-preview // gpt-35-turbo // gpt-35-turbo // gpt-35-turbo // gpt-35-turbo // gpt-35-turbo-instruct // gpt-35-turbo-16k // davinci // text-davinci-002 // text-davinci-003 // text-davinci-fine-tune-002 // code-davinci-002 // code-davinci-fine-tune-002 // babbage // text-babbage-001 // ada // text-ada-001 // text-similarity-ada-001 // text-embedding-ada-002 // text-embedding-ada-002 // curie // text-curie-001 // text-similarity-curie-001 // text-embedding-3-small // text-embedding-3-large // o1-mini // o1 // o3-mini // o4-mini // gpt-4.1 // gpt-4.1-mini // gpt-4.1-nano // gpt-5-mini // gpt-5-nano // dall-e-3 // dall-e-2 // code-cushman-fine-tune-002 // whisper // gpt-4 // gpt-4 // gpt-4 // gpt-4-32k // gpt-4 // gpt-4o // gpt-4o // gpt-4o-mini // gpt-4o // gpt-4o-audio-preview // gpt-4o-mini-audio-preview // gpt-35-turbo // gpt-35-turbo // gpt-35-turbo // gpt-35-turbo // gpt-35-turbo-instruct // gpt-35-turbo-16k // davinci // text-davinci-002 // text-davinci-003 // text-davinci-fine-tune-002 // code-davinci-002 // code-davinci-fine-tune-002 // babbage // text-babbage-001 // ada // text-ada-001 // text-similarity-ada-001 // text-embedding-ada-002 // text-embedding-ada-002 // curie // text-curie-001 // text-similarity-curie-001 // text-embedding-3-small // text-embedding-3-large // o1-mini // o1 // o3-mini // o4-mini // gpt-4.1 // gpt-4.1-mini // gpt-4.1-nano // gpt-5-mini // gpt-5-nano // AI21-Jamba-1.5-Large // AI21-Jamba-1.5-Mini // AI21-Jamba-Instruct // qwen3-32b // Codestral-2501 // cohere-command-a // Cohere-command-r // Cohere-command-r-08-2024 // Cohere-command-r-plus // Cohere-command-r-plus-08-2024 // Cohere-embed-v3-english // Cohere-embed-v3-multilingual // DeepSeek-R1 // DeepSeek-R1-0528 // DeepSeek-V3 // DeepSeek-V3-0324 // DeepSeek-V3.1 // embed-v-4-0 // jais-30b-chat // jais-30b-chat // jais-30b-chat // Llama-3.2-11B-Vision-Instruct // Llama-3.2-11B-Vision-Instruct // Llama-3.2-90B-Vision-Instruct // Llama-3.2-90B-Vision-Instruct // Llama-3.2-90B-Vision-Instruct // Llama-3.3-70B-Instruct // Llama-3.3-70B-Instruct // Llama-3.3-70B-Instruct // Llama-3.3-70B-Instruct // Llama-3.3-70B-Instruct // MAI-DS-R1 // Meta-Llama-3-70B-Instruct // Meta-Llama-3-70B-Instruct // Meta-Llama-3-70B-Instruct // Meta-Llama-3-70B-Instruct // Meta-Llama-3-8B-Instruct // Meta-Llama-3-8B-Instruct // Meta-Llama-3-8B-Instruct // Meta-Llama-3-8B-Instruct // Meta-Llama-3.1-405B-Instruct // Meta-Llama-3.1-70B-Instruct // Meta-Llama-3.1-70B-Instruct // Meta-Llama-3.1-70B-Instruct // Meta-Llama-3.1-70B-Instruct // Meta-Llama-3.1-8B-Instruct // Meta-Llama-3.1-8B-Instruct // Meta-Llama-3.1-8B-Instruct // Meta-Llama-3.1-8B-Instruct // Meta-Llama-3.1-8B-Instruct // Ministral-3B // Mistral-large // Mistral-large-2407 // Mistral-Large-2411 // Mistral-Nemo // Mistral-small // mistral-small-2503 // Mistral-Large-3 // Phi-3-medium-128k-instruct // Phi-3-medium-128k-instruct // Phi-3-medium-128k-instruct // Phi-3-medium-128k-instruct // Phi-3-medium-128k-instruct // Phi-3-medium-4k-instruct // Phi-3-medium-4k-instruct // Phi-3-medium-4k-instruct // Phi-3-medium-4k-instruct // Phi-3-mini-128k-instruct // Phi-3-mini-128k-instruct // Phi-3-mini-128k-instruct // Phi-3-mini-128k-instruct // Phi-3-mini-4k-instruct // Phi-3-mini-4k-instruct // Phi-3-mini-4k-instruct // Phi-3-mini-4k-instruct // Phi-3-mini-4k-instruct // Phi-3-small-128k-instruct // Phi-3-small-128k-instruct // Phi-3-small-128k-instruct // Phi-3-small-8k-instruct // Phi-3-small-8k-instruct // Phi-3-small-8k-instruct // Phi-3.5-mini-instruct // Phi-3.5-mini-instruct // Phi-3.5-mini-instruct // Phi-3.5-mini-instruct // Phi-3.5-mini-instruct // Phi-3.5-MoE-instruct // Phi-3.5-MoE-instruct // Phi-3.5-MoE-instruct // Phi-3.5-MoE-instruct // Phi-3.5-vision-instruct // Phi-3.5-vision-instruct // Phi-4 // Phi-4 // Phi-4 // Phi-4 // Phi-4 // Phi-4 // Phi-4-mini-instruct // Phi-4-multimodal-instruct // Phi-4-reasoning // Phi-4-mini-reasoning // Llama-4-Maverick-17B-128E-Instruct-FP8 // Llama-4-Scout-17B-16E-Instruct // mistral-medium-2505 // mistral-document-ai-2505 // grok-3 // grok-3-mini // FLUX-1.1-pro // FLUX.1-Kontext-pro // grok-4-fast-reasoning // grok-4-fast-non-reasoning // gpt-oss-120b // Kimi-K2-Thinking // Cohere-rerank-v4.0-pro // Cohere-rerank-v4.0-fast // DeepSeek-V3.2-Speciale // DeepSeek-V3.2 // FLUX.2-pro // AI21-Jamba-1.5-Large // AI21-Jamba-1.5-Mini // AI21-Jamba-Instruct // qwen3-32b // Codestral-2501 // cohere-command-a // Cohere-command-r // Cohere-command-r-08-2024 // Cohere-command-r-plus // Cohere-command-r-plus-08-2024 // Cohere-embed-v3-english // Cohere-embed-v3-multilingual // DeepSeek-R1 // DeepSeek-R1-0528 // DeepSeek-V3 // DeepSeek-V3-0324 // DeepSeek-V3.1 // embed-v-4-0 // jais-30b-chat // jais-30b-chat // jais-30b-chat // Llama-3.2-11B-Vision-Instruct // Llama-3.2-11B-Vision-Instruct // Llama-3.2-90B-Vision-Instruct // Llama-3.2-90B-Vision-Instruct // Llama-3.2-90B-Vision-Instruct // Llama-3.3-70B-Instruct // Llama-3.3-70B-Instruct // Llama-3.3-70B-Instruct // Llama-3.3-70B-Instruct // Llama-3.3-70B-Instruct // MAI-DS-R1 // Meta-Llama-3-70B-Instruct // Meta-Llama-3-70B-Instruct // Meta-Llama-3-70B-Instruct // Meta-Llama-3-70B-Instruct // Meta-Llama-3-8B-Instruct // Meta-Llama-3-8B-Instruct // Meta-Llama-3-8B-Instruct // Meta-Llama-3-8B-Instruct // Meta-Llama-3.1-405B-Instruct // Meta-Llama-3.1-70B-Instruct // Meta-Llama-3.1-70B-Instruct // Meta-Llama-3.1-70B-Instruct // Meta-Llama-3.1-70B-Instruct // Meta-Llama-3.1-8B-Instruct // Meta-Llama-3.1-8B-Instruct // Meta-Llama-3.1-8B-Instruct // Meta-Llama-3.1-8B-Instruct // Meta-Llama-3.1-8B-Instruct // Ministral-3B // Mistral-large // Mistral-large-2407 // Mistral-Large-2411 // Mistral-Nemo // Mistral-small // mistral-small-2503 // Mistral-Large-3 // Phi-3-medium-128k-instruct // Phi-3-medium-128k-instruct // Phi-3-medium-128k-instruct // Phi-3-medium-128k-instruct // Phi-3-medium-128k-instruct // Phi-3-medium-4k-instruct // Phi-3-medium-4k-instruct // Phi-3-medium-4k-instruct // Phi-3-medium-4k-instruct // Phi-3-mini-128k-instruct // Phi-3-mini-128k-instruct // Phi-3-mini-128k-instruct // Phi-3-mini-128k-instruct // Phi-3-mini-4k-instruct // Phi-3-mini-4k-instruct // Phi-3-mini-4k-instruct // Phi-3-mini-4k-instruct // Phi-3-mini-4k-instruct // Phi-3-small-128k-instruct // Phi-3-small-128k-instruct // Phi-3-small-128k-instruct // Phi-3-small-8k-instruct // Phi-3-small-8k-instruct // Phi-3-small-8k-instruct // Phi-3.5-mini-instruct // Phi-3.5-mini-instruct // Phi-3.5-mini-instruct // Phi-3.5-mini-instruct // Phi-3.5-mini-instruct // Phi-3.5-MoE-instruct // Phi-3.5-MoE-instruct // Phi-3.5-MoE-instruct // Phi-3.5-MoE-instruct // Phi-3.5-vision-instruct // Phi-3.5-vision-instruct // Phi-4 // Phi-4 // Phi-4 // Phi-4 // Phi-4 // Phi-4 // Phi-4-mini-instruct // Phi-4-multimodal-instruct // Phi-4-reasoning // Phi-4-mini-reasoning // Llama-4-Maverick-17B-128E-Instruct-FP8 // Llama-4-Scout-17B-16E-Instruct // mistral-medium-2505 // mistral-document-ai-2505 // grok-3 // grok-3-mini // FLUX-1.1-pro // FLUX.1-Kontext-pro // grok-4-fast-reasoning // grok-4-fast-non-reasoning // gpt-oss-120b // Kimi-K2-Thinking // Cohere-rerank-v4.0-pro // Cohere-rerank-v4.0-fast // DeepSeek-V3.2-Speciale // DeepSeek-V3.2 // FLUX.2-pro |
||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.