![]() |
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
(Swift) 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
func chilkatTest() { var success: Bool = false // ---------------------------------------------------------------------------------- // The Javascript file loaded here is shown at the bottom of this page. // ----------------------------------------------------------------------------------- // Load JavaScript containing the tool functions. let sbJs = CkoStringBuilder()! success = sbJs.loadFile("qa_data/js_tools/toolset_6.js", charset: "utf-8") if success == false { print("\(sbJs.lastErrorText!)") return } let ai = CkoAi()! // Register the tools that will be made available to the AI. var evalOnly: Bool = false var allowAllKeyword: Bool = true ai.registerJsTools(sbJs, evalOnly: evalOnly, allowAllKeyword: allowAllKeyword) // The provider can be "openai", "google", "claude", "grok", "mistral", "custom", etc. ai.provider = "openai" // Use your provider's API key. ai.apiKey = "MY_API_KEY" // Choose a model. ai.model = "gpt-5-mini" // Tool function calling must always occur within a conversation. var conversation_name: String? = "example_convo" var sysMessage: String? = "You are a helpful assistant" var devMessage: String? = "Respond with markdown" ai.newConvo(conversation_name, sysMsg: sysMessage, devMsg: 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!)") return } // Get the AI response. let sbResponse = CkoStringBuilder()! ai.getOutputTextSb(sbResponse) print("\(sbResponse.getAsString()!)") }
|
||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.