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) Create Chat CompletionSee more OpenAI ChatGPT ExamplesShows how to create a model response for a given chat conversation. For more information, see https://platform.openai.com/docs/api-reference/chat/create
; 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": "Hello!"}] ; }' ; 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": "Hello!" ; } ; ] ; } $oJson = ObjCreate("Chilkat.JsonObject") $oJson.UpdateString("model","gpt-3.5-turbo") $oJson.UpdateString("messages[0].role","user") $oJson.UpdateString("messages[0].content","Hello!") ; 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-123", ; "object": "chat.completion", ; "created": 1677652288, ; "choices": [ ; { ; "index": 0, ; "message": { ; "role": "assistant", ; "content": "\n\nHello there, how may I assist you today?" ; }, ; "finish_reason": "stop" ; } ; ], ; "usage": { ; "prompt_tokens": 9, ; "completion_tokens": 12, ; "total_tokens": 21 ; } ; } ; 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 $index Local $sRole Local $sContent Local $sFinish_reason Local $sId = $oJResp.StringOf("id") Local $sV_object = $oJResp.StringOf("object") Local $iCreated = $oJResp.IntOf("created") 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 $index = $oJResp.IntOf("choices[i].index") $sRole = $oJResp.StringOf("choices[i].message.role") $sContent = $oJResp.StringOf("choices[i].message.content") $sFinish_reason = $oJResp.StringOf("choices[i].finish_reason") $i = $i + 1 Wend |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.