![]()  | 
  
Chilkat  HOME  Android™  AutoIt  C  C#  C++  Chilkat2-Python  CkPython  Classic ASP  DataFlex  Delphi DLL  Go  Java  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
 
      (PureBasic) Multimodal Input: Image DataSee more AI ExamplesDemonstrates sending a request that includes both text and image data for the AI to analyze.Note: This example requires Chilkat v11.2.0 or greater. 
 IncludeFile "CkBinData.pb" IncludeFile "CkStringBuilder.pb" IncludeFile "CkAi.pb" Procedure ChilkatExample() success.i = 0 ; This example assumes the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. ai.i = CkAi::ckCreate() If ai.i = 0 Debug "Failed to create object." ProcedureReturn EndIf ; The provider can be "openai", "google", "claude", "deepseek", "xai", or "perplexity". ; Support for additional providers will be added in future versions of Chilkat. ; xAI (Grok) will be used here.. CkAi::setCkProvider(ai, "xai") ; Use your provider's API key. CkAi::setCkApiKey(ai, "MY_API_KEY") ; Choose a model. CkAi::setCkModel(ai, "grok-4") ; Add both text input, and image data CkAi::ckInputAddText(ai,"Describe what you see in the following image.") bd.i = CkBinData::ckCreate() If bd.i = 0 Debug "Failed to create object." ProcedureReturn EndIf ; We're passing a relative local file path here.. (relative the the app's current working directory) success = CkBinData::ckLoadFile(bd,"qa_data/jpg/starfish.jpg") If success = 0 Debug CkBinData::ckLastErrorText(bd) CkAi::ckDispose(ai) CkBinData::ckDispose(bd) ProcedureReturn EndIf CkAi::ckInputAddImageData(ai,bd,"") ; Ask the AI for text output. success = CkAi::ckAsk(ai,"text") If success = 0 Debug CkAi::ckLastErrorText(ai) CkAi::ckDispose(ai) CkBinData::ckDispose(bd) ProcedureReturn EndIf ; Get the text response. sbResponse.i = CkStringBuilder::ckCreate() If sbResponse.i = 0 Debug "Failed to create object." ProcedureReturn EndIf CkAi::ckGetOutputTextSb(ai,sbResponse) Debug CkStringBuilder::ckGetAsString(sbResponse) ; ------------------------------------------------------------- ; The response is in markdown format. ; Also see Markdown to HTML Conversion Examples. ; ------------------------------------------------------------- ; Sample output: ; The image depicts a small, bright orange starfish (also known as a sea star) with five symmetrical arms radiating from a central disc. ; It has a textured, bumpy surface that gives it a realistic, almost spiky appearance, and there's a small hole or indentation at the center, ; which might represent the mouth or a natural feature. The starfish is shown against a plain white background, and it appears to be a simple, ; illustrative or clipart-style graphic rather than a photograph. CkAi::ckDispose(ai) CkBinData::ckDispose(bd) CkStringBuilder::ckDispose(sbResponse) ProcedureReturn EndProcedure  | 
  ||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.