Sample code for 30+ languages & platforms
Perl Requires Chilkat v11.3.0+

Azure AI Foundry Query

See more AI Examples

This is the simplest example of using Chilkat with Azure AI Foundry.

Chilkat Perl Downloads

Chilkat2 Perl
use strict;
use warnings;
use Chilkat2;

# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

my $ai = Chilkat2::Ai->new;

# 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-5.6-terra".  After substitution the base URL becomes:
# https://chilkat.cognitiveservices.azure.com/openai/deployments/gpt-5.6-terra/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');

# Choose a model.
$ai->Model('gpt-5.6-terra');

# Add a text input.
$ai->InputAddText('Say Hello.');

# Ask the AI for text output.
my $success = $ai->Ask('text');
if (!$success) {
    print $ai->LastErrorText, "\n";
    exit;
}

# Get the text response.
my $sbResponse = Chilkat2::StringBuilder->new;
$ai->GetOutputTextSb($sbResponse);
print $sbResponse->GetAsString(), "\n";

# Sample output:
# Hello! How can I assist you today?

# -------------------------------------------------------------
# The response is in markdown format.
# Also see Markdown to HTML Conversion Examples.
# -------------------------------------------------------------