![]() |
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
(Tcl) 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
load ./chilkat.dll set success 0 # ---------------------------------------------------------------------------------- # The Javascript file loaded here is shown at the bottom of this page. # ----------------------------------------------------------------------------------- # Load JavaScript containing the tool functions. set sbJs [new_CkStringBuilder] set success [CkStringBuilder_LoadFile $sbJs "qa_data/js_tools/toolset_6.js" "utf-8"] if {$success == 0} then { puts [CkStringBuilder_lastErrorText $sbJs] delete_CkStringBuilder $sbJs exit } set ai [new_CkAi] # Register the tools that will be made available to the AI. set evalOnly 0 set allowAllKeyword 1 CkAi_RegisterJsTools $ai $sbJs $evalOnly $allowAllKeyword # The provider can be "openai", "google", "claude", "grok", "mistral", "custom", etc. CkAi_put_Provider $ai "openai" # Use your provider's API key. CkAi_put_ApiKey $ai "MY_API_KEY" # Choose a model. CkAi_put_Model $ai "gpt-5-mini" # Tool function calling must always occur within a conversation. set conversation_name "example_convo" set sysMessage "You are a helpful assistant" set devMessage "Respond with markdown" CkAi_NewConvo $ai $conversation_name $sysMessage $devMessage # Provide inputs CkAi_InputAddText $ai "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. set success [CkAi_Ask $ai "text"] if {$success == 0} then { puts [CkAi_lastErrorText $ai] delete_CkStringBuilder $sbJs delete_CkAi $ai exit } # Get the AI response. set sbResponse [new_CkStringBuilder] CkAi_GetOutputTextSb $ai $sbResponse puts [CkStringBuilder_getAsString $sbResponse] delete_CkStringBuilder $sbJs delete_CkAi $ai delete_CkStringBuilder $sbResponse
|
||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.