![]()  | 
  
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
 
      (DataFlex) AI: Diagnosing an Ask FailureSee more AI ExamplesDemonstrates how to get information about why a request to the AI provider failed.Note: This example requires Chilkat v11.2.0 or greater. 
 Use ChilkatAx-win32.pkg Procedure Test Boolean iSuccess Handle hoAi Variant vJson Handle hoJson Variant vSbResponse Handle hoSbResponse String sTemp1 Integer iTemp1 Move False To iSuccess // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. Get Create (RefClass(cComChilkatAi)) To hoAi If (Not(IsComObjectCreated(hoAi))) Begin Send CreateComObject of hoAi End // The provider can be "openai", "google", "claude", "deepseek", "xai", or "perplexity". // Support for additional providers will be added in future versions of Chilkat. Set ComProvider Of hoAi To "openai" // In this case, we're going to cause an intentional failure by using an invalid API key. Set ComApiKey Of hoAi To "sk-11111111111111111111111111111111111111111111111k" // Choose a model. Set ComModel Of hoAi To "gpt-4o" // Add a text input. Get ComInputAddText Of hoAi "Say Hello." To iSuccess // Ask the AI for text output. Get ComAsk Of hoAi "text" To iSuccess If (iSuccess = False) Begin // If the response status code equals 0, it means the error occurred before receiving the HTTP response. // For this case look at the LastErrorText. Get ComResponseStatusCode Of hoAi To iTemp1 If (iTemp1 = 0) Begin Get ComLastErrorText Of hoAi To sTemp1 Showln sTemp1 End Else Begin // If we received an error response, the status code will be >= 400. // (Ask would've returned True if the response status code was 200.) Get ComResponseStatusCode Of hoAi To iTemp1 Showln "Response status code: " iTemp1 // The error response (JSON) is available in the LastJsonData. Get Create (RefClass(cComChilkatJsonObject)) To hoJson If (Not(IsComObjectCreated(hoJson))) Begin Send CreateComObject of hoJson End Set ComEmitCompact Of hoJson To False Get pvComObject of hoJson to vJson Send ComGetLastJsonData To hoAi vJson Get ComEmit Of hoJson To sTemp1 Showln sTemp1 // Sample output: // { // "error": { // "message": "Incorrect API key provided: sk-11111***************************************111k. You can find your API key at https://platform.openai.com/account/api-keys.", // "type": "invalid_request_error", // "param": null, // "code": "invalid_api_key" // } // } End Procedure_Return End // Get the text response. Get Create (RefClass(cComChilkatStringBuilder)) To hoSbResponse If (Not(IsComObjectCreated(hoSbResponse))) Begin Send CreateComObject of hoSbResponse End Get pvComObject of hoSbResponse to vSbResponse Get ComGetOutputTextSb Of hoAi vSbResponse To iSuccess Get ComGetAsString Of hoSbResponse To sTemp1 Showln sTemp1 End_Procedure  | 
  ||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.