![]() |
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
(Unicode C++) Automatic JavaScript AI Tool Returning an ArraySee more AI ExamplesDemonstrates an automatic JavaScript tool function that returns an array. Automatic JavaScript tool calls are characterized by:
Note: This example requires Chilkat v11.4.0 or greater. For more information, see https://www.chilkatsoft.com/automatic_ai_javascript_tool_function_calling.asp
#include <CkStringBuilderW.h> #include <CkAiW.h> void ChilkatSample(void) { bool success = false; // ---------------------------------------------------------------------------------- // The Javascript file loaded here is shown at the bottom of this page. // ----------------------------------------------------------------------------------- // In this example, we'll load the Javascript tool functions and registry from a file. // It doesn't need to come from a file. It could just as easily be loaded from a string. CkStringBuilderW sbJs; success = sbJs.LoadFile(L"qa_data/js_tools/toolset_3.js",L"utf-8"); if (success == false) { wprintf(L"%s\n",sbJs.lastErrorText()); return; } CkAiW ai; // Register the tools that will be made available to the AI. bool evalOnly = false; bool allowAllKeyword = true; ai.RegisterJsTools(sbJs,evalOnly,allowAllKeyword); // The provider can be "openai", "google", "claude", "grok", "mistral", "custom", etc. ai.put_Provider(L"openai"); // Use your provider's API key. ai.put_ApiKey(L"MY_API_KEY"); // Choose a model. ai.put_Model(L"gpt-5-mini"); // Tool function calling must always occur within a conversation. const wchar_t *conversation_name = L"convo_3"; const wchar_t *sysMessage = L"You are a helpful system admin"; const wchar_t *devMessage = L"Respond only with markdown."; ai.NewConvo(conversation_name,sysMessage,devMessage); // Provide inputs ai.InputAddText(L"List the files in the directory c:/temp/abc"); // 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(L"text"); if (success == false) { wprintf(L"%s\n",ai.lastErrorText()); return; } // Get the AI response. CkStringBuilderW sbResponse; ai.GetOutputTextSb(sbResponse); wprintf(L"%s\n",sbResponse.getAsString()); }
|
||||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.