![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java JavaScript 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
(PHP Extension) AI Ask with Multiple Tool Function CallbacksSee more AI ExamplesThis example demonstrates asking a two-part question that should cause the AI to respond with two tool call requests.Note: This example requires Chilkat v11.4.0 or greater. For more information, see https://www.chilkatsoft.com/ai_javascript_tool_function_calling.asp
<?php include("chilkat.php"); $success = false; // ---------------------------------------------------------------------------------- // The Javascript file loaded here is shown at the bottom of this page. // ----------------------------------------------------------------------------------- // Load JavaScript containing the tool functions. $sbJs = new CkStringBuilder(); $success = $sbJs->LoadFile('qa_data/js_tools/toolset_6.js','utf-8'); if ($success == false) { print $sbJs->lastErrorText() . "\n"; exit; } $ai = new CkAi(); // Register the tools that will be made available to the AI. $evalOnly = false; $allowAllKeyword = true; $ai->RegisterJsTools($sbJs,$evalOnly,$allowAllKeyword); // The provider can be "openai", "google", "claude", "grok", "mistral", "custom", etc. $ai->put_Provider('openai'); // Use your provider's API key. $ai->put_ApiKey('MY_API_KEY'); // Choose a model. $ai->put_Model('gpt-5-mini'); // Tool function calling must always occur within a conversation. $conversation_name = 'example_convo'; $sysMessage = 'You are a helpful assistant'; $devMessage = 'Respond with markdown'; $ai->NewConvo($conversation_name,$sysMessage,$devMessage); // Provide inputs $ai->InputAddText('What is my horoscope? I am an Aquarius. Also, what's the weather in Chicago?'); // Send inputs, tool functions, etc. and ask for a "text" response. // If the AI responds with tool calls, Chilkat automatically handles them by calling your JavaScript // tool functions as directed by the AI, and sending results back to the AI until the final // response is received. $success = $ai->Ask('text'); if ($success == false) { print $ai->lastErrorText() . "\n"; exit; } // Get the AI response. $sbResponse = new CkStringBuilder(); $ai->GetOutputTextSb($sbResponse); print $sbResponse->getAsString() . "\n"; ?>
|
||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.