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
(Objective-C) OpenAI (ChatGTP) List ModelsSee more OpenAI ChatGPT ExamplesShow how to list available OpenAI models and shows how to parse the JSON model information. For more information, see https://platform.openai.com/docs/api-reference/models/list
#import <CkoHttp.h> #import <CkoStringBuilder.h> #import <CkoJsonObject.h> #import <NSString.h> // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. CkoHttp *http = [[CkoHttp alloc] init]; BOOL success; // Implements the following CURL command: // curl https://api.openai.com/v1/models \ // -H "Authorization: Bearer $OPENAI_API_KEY" // Use the following online tool to generate HTTP code from a CURL command // Convert a cURL Command to HTTP Source Code // Adds the "Authorization: Bearer $OPENAI_API_KEY" header. // This is NOT a real key. Change the "sk-vi...." to your own key. http.AuthToken = @"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"; CkoStringBuilder *sbResponseBody = [[CkoStringBuilder alloc] init]; success = [http QuickGetSb: @"https://api.openai.com/v1/models" sbContent: sbResponseBody]; if (success == NO) { NSLog(@"%@",http.LastErrorText); return; } CkoJsonObject *jResp = [[CkoJsonObject alloc] init]; [jResp LoadSb: sbResponseBody]; jResp.EmitCompact = NO; NSLog(@"%@",@"Response Body:"); NSLog(@"%@",[jResp Emit]); int respStatusCode = [http.LastStatus intValue]; NSLog(@"%@%d",@"Response Status Code = ",respStatusCode); if (respStatusCode >= 400) { NSLog(@"%@",@"Response Header:"); NSLog(@"%@",http.LastHeader); NSLog(@"%@",@"Failed."); return; } // Sample JSON response: // (Sample code for parsing the JSON response is shown below) // { // "object": "list", // "data": [ // { // "id": "babbage", // "object": "model", // "created": 1649358449, // "owned_by": "openai", // "permission": [ // { // "id": "modelperm-49FUp5v084tBB49tC4z8LPH5", // "object": "model_permission", // "created": 1669085501, // "allow_create_engine": false, // "allow_sampling": true, // "allow_logprobs": true, // "allow_search_indices": false, // "allow_view": true, // "allow_fine_tuning": false, // "organization": "*", // "group": null, // "is_blocking": false // } // ], // "root": "babbage", // "parent": null // }, // { // "id": "davinci", // "object": "model", // "created": 1649359874, // "owned_by": "openai", // "permission": [ // { // "id": "modelperm-U6ZwlyAd0LyMk4rcMdz33Yc3", // "object": "model_permission", // "created": 1669066355, // "allow_create_engine": false, // "allow_sampling": true, // "allow_logprobs": true, // "allow_search_indices": false, // "allow_view": true, // "allow_fine_tuning": false, // "organization": "*", // "group": null, // "is_blocking": false // } // ], // "root": "davinci", // "parent": null // }, // ... // ... // Sample code for parsing the JSON response... // Use the following online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON NSString *id = 0; int created; NSString *owned_by = 0; NSString *root = 0; NSString *parent = 0; int j; int count_j; BOOL allow_create_engine; BOOL allow_sampling; BOOL allow_logprobs; BOOL allow_search_indices; BOOL allow_view; BOOL allow_fine_tuning; NSString *organization = 0; NSString *group = 0; BOOL is_blocking; NSString *v_object = [jResp StringOf: @"object"]; int i = 0; int count_i = [[jResp SizeOfArray: @"data"] intValue]; while (i < count_i) { jResp.I = [NSNumber numberWithInt: i]; id = [jResp StringOf: @"data[i].id"]; v_object = [jResp StringOf: @"data[i].object"]; created = [[jResp IntOf: @"data[i].created"] intValue]; owned_by = [jResp StringOf: @"data[i].owned_by"]; root = [jResp StringOf: @"data[i].root"]; parent = [jResp StringOf: @"data[i].parent"]; j = 0; count_j = [[jResp SizeOfArray: @"data[i].permission"] intValue]; while (j < count_j) { jResp.J = [NSNumber numberWithInt: j]; id = [jResp StringOf: @"data[i].permission[j].id"]; v_object = [jResp StringOf: @"data[i].permission[j].object"]; created = [[jResp IntOf: @"data[i].permission[j].created"] intValue]; allow_create_engine = [jResp BoolOf: @"data[i].permission[j].allow_create_engine"]; allow_sampling = [jResp BoolOf: @"data[i].permission[j].allow_sampling"]; allow_logprobs = [jResp BoolOf: @"data[i].permission[j].allow_logprobs"]; allow_search_indices = [jResp BoolOf: @"data[i].permission[j].allow_search_indices"]; allow_view = [jResp BoolOf: @"data[i].permission[j].allow_view"]; allow_fine_tuning = [jResp BoolOf: @"data[i].permission[j].allow_fine_tuning"]; organization = [jResp StringOf: @"data[i].permission[j].organization"]; group = [jResp StringOf: @"data[i].permission[j].group"]; is_blocking = [jResp BoolOf: @"data[i].permission[j].is_blocking"]; j = j + 1; } i = i + 1; } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.