![]() |
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
(DataFlex) Azure AI Foundry QueryThis is the simplest example of using Chilkat with Azure AI Foundry. Note: This example requires Chilkat v11.3.0 or greater.
Use ChilkatAx-win32.pkg Procedure Test Boolean iSuccess Handle hoAi Variant vAzureParams Handle hoAzureParams Variant vSbResponse Handle hoSbResponse String sTemp1 Move False To iSuccess // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. Get Create (RefClass(cComChilkatAi)) To hoAi If (Not(IsComObjectCreated(hoAi))) Begin Send CreateComObject of hoAi End // 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". Set ComProvider Of hoAi To "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" Set ComBaseUrl Of hoAi To "https://chilkat.cognitiveservices.azure.com/openai/deployments/{deployment}/chat/completions?api-version=2025-01-01-preview" Set ComApiSpec Of hoAi To "ChatCompletions" // Use your provider's API key. Set ComApiKey Of hoAi To "MY_API_KEY" // Set Azure Foundry specific params. Get Create (RefClass(cComChilkatJsonObject)) To hoAzureParams If (Not(IsComObjectCreated(hoAzureParams))) Begin Send CreateComObject of hoAzureParams End // The tenant ID is a GUID such as 17280f2d-f709-4a7b-af1d-9928190e13cf Get ComUpdateString Of hoAzureParams "azure.tenantId" "TENANT_ID" To iSuccess // The client ID is a GUID such as 4abd4bf6-5260-4795-90f6-1e91ce4f582c Get ComUpdateString Of hoAzureParams "azure.clientId" "CLIENT_ID" To iSuccess // Such as UZc8Q~YBrRIgfe_zbAOwWV.8ikuHa3JJF7LvCdt. (this is not a GUID) Get ComUpdateString Of hoAzureParams "azure.clientSecret" "CLIENT_SECRET" To iSuccess // The subscription ID is a GUID such as 4abd4bf6-5260-4795-90f6-1e91ce4f582c Get ComUpdateString Of hoAzureParams "azure.subscription" "SUBSCRIPTION_ID" To iSuccess // Such as eastus Get ComUpdateString Of hoAzureParams "azure.location" "LOCATION" To iSuccess // With the Azure-specific provider params specified, // Chilkat will internally fetch the OAuth2 access token using client credentials as needed. Get pvComObject of hoAzureParams to vAzureParams Get ComSetProviderParams Of hoAi vAzureParams To iSuccess // Choose a model. Set ComModel Of hoAi To "gpt-4o" // Add a text input. Get ComInputAddText Of hoAi "Say Hello." To iSuccess // Ask the AI for text output. Get ComAsk Of hoAi "text" To iSuccess If (iSuccess = False) Begin Get ComLastErrorText Of hoAi To sTemp1 Showln sTemp1 Procedure_Return End // Get the text response. Get Create (RefClass(cComChilkatStringBuilder)) To hoSbResponse If (Not(IsComObjectCreated(hoSbResponse))) Begin Send CreateComObject of hoSbResponse End Get pvComObject of hoSbResponse to vSbResponse Get ComGetOutputTextSb Of hoAi vSbResponse To iSuccess Get ComGetAsString Of hoSbResponse To sTemp1 Showln sTemp1 // Sample output: // Hello! How can I assist you today? // ------------------------------------------------------------- // The response is in markdown format. // Also see Markdown to HTML Conversion Examples. // ------------------------------------------------------------- End_Procedure |
||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.