Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(AutoIt) OpenAI (ChatGTP) Simple RequestSee more OpenAI ChatGPT ExamplesDemonstrate a simple ChatGPT request with authentication using your OPENAI_API_KEY. For more information, see https://platform.openai.com/docs/api-reference/making-requests
; This example assumes the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. $oHttp = ObjCreate("Chilkat.Http") Local $bSuccess ; Implements the following CURL command: ; curl https://api.openai.com/v1/chat/completions \ ; -H "Content-Type: application/json" \ ; -H "Authorization: Bearer $OPENAI_API_KEY" \ ; -d '{ ; "model": "gpt-3.5-turbo", ; "messages": [{"role": "user", "content": "Say this is a test!"}], ; "temperature": 0.7 ; }' ; Use the following online tool to generate HTTP code from a CURL command ; Convert a cURL Command to HTTP Source Code ; Use this online tool to generate code from sample JSON: ; Generate Code to Create JSON ; The following JSON is sent in the request body. ; { ; "model": "gpt-3.5-turbo", ; "messages": [ ; { ; "role": "user", ; "content": "Say this is a test!" ; } ; ], ; "temperature": 0.7 ; } $oJson = ObjCreate("Chilkat.JsonObject") $oJson.UpdateString("model","gpt-3.5-turbo") $oJson.UpdateString("messages[0].role","user") $oJson.UpdateString("messages[0].content","Say this is a test!") $oJson.UpdateNumber("temperature","0.7") ; Adds the "Authorization: Bearer $OPENAI_API_KEY" header. ; This is NOT a real key. Change the "sk-vi...." to your own key. $oHttp.AuthToken = "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" $oHttp.SetRequestHeader "Content-Type","application/json" Local $oResp = $oHttp.PostJson3("https://api.openai.com/v1/chat/completions","application/json",$oJson) If ($oHttp.LastMethodSuccess = False) Then ConsoleWrite($oHttp.LastErrorText & @CRLF) Exit EndIf $oSbResponseBody = ObjCreate("Chilkat.StringBuilder") $oResp.GetBodySb($oSbResponseBody) $oJResp = ObjCreate("Chilkat.JsonObject") $oJResp.LoadSb($oSbResponseBody) $oJResp.EmitCompact = False ConsoleWrite("Response Body:" & @CRLF) ConsoleWrite($oJResp.Emit() & @CRLF) Local $iRespStatusCode = $oResp.StatusCode ConsoleWrite("Response Status Code = " & $iRespStatusCode & @CRLF) If ($iRespStatusCode >= 400) Then ConsoleWrite("Response Header:" & @CRLF) ConsoleWrite($oResp.Header & @CRLF) ConsoleWrite("Failed." & @CRLF) Exit EndIf ; Sample JSON response: ; (Sample code for parsing the JSON response is shown below) ; { ; "id": "chatcmpl-abc123", ; "object": "chat.completion", ; "created": 1677858242, ; "model": "gpt-3.5-turbo-0301", ; "usage": { ; "prompt_tokens": 13, ; "completion_tokens": 7, ; "total_tokens": 20 ; }, ; "choices": [ ; { ; "message": { ; "role": "assistant", ; "content": "\n\nThis is a test!" ; }, ; "finish_reason": "stop", ; "index": 0 ; } ; ] ; } ; Sample code for parsing the JSON response... ; Use the following online tool to generate parsing code from sample JSON: ; Generate Parsing Code from JSON Local $sRole Local $sContent Local $sFinish_reason Local $index Local $sId = $oJResp.StringOf("id") Local $sV_object = $oJResp.StringOf("object") Local $iCreated = $oJResp.IntOf("created") Local $sModel = $oJResp.StringOf("model") Local $iPrompt_tokens = $oJResp.IntOf("usage.prompt_tokens") Local $iCompletion_tokens = $oJResp.IntOf("usage.completion_tokens") Local $iTotal_tokens = $oJResp.IntOf("usage.total_tokens") Local $i = 0 Local $iCount_i = $oJResp.SizeOfArray("choices") While $i < $iCount_i $oJResp.I = $i $sRole = $oJResp.StringOf("choices[i].message.role") $sContent = $oJResp.StringOf("choices[i].message.content") $sFinish_reason = $oJResp.StringOf("choices[i].finish_reason") $index = $oJResp.IntOf("choices[i].index") $i = $i + 1 Wend |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.