Unreal OpenAI API 1.0.0
Loading...
Searching...
No Matches
ChatCommonTypes.h
1// OpenAI, Copyright LifeEXE. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "Provider/Types/OpenAICommonTypes.h"
7#include "Provider/Types/ToolsTypes.h"
8#include "Provider/OpenAIOptional.h"
9#include "ChatCommonTypes.generated.h"
10
11UENUM(BlueprintType)
12enum class EMessageContentType : uint8
13{
14 Text,
15 Image_URL
16};
17
18UENUM(BlueprintType)
19enum class EChatResponseFormat : uint8
20{
21 Text = 0,
22 JSON_Object
23};
24
25UENUM(BlueprintType)
26enum class EServiceTier : uint8
27{
28 Auto = 0,
29 Default
30};
31
32USTRUCT(BlueprintType)
34{
35 GENERATED_BODY()
39 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Required")
40 FString URL;
41
45 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Required")
46 FString Detail{"auto"};
47};
48
49USTRUCT(BlueprintType)
51{
52 GENERATED_BODY()
53
54
57 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Required")
58 FString Text;
59
63 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Required")
65
69 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Required")
70 FString Type{"text"};
71};
72
73USTRUCT(BlueprintType)
75{
76 GENERATED_BODY()
77
78 // ========================== content ===============================
79
80
84 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Required")
85 FString Content;
86
93 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Required")
95
96 // ========================== common ===============================
97
101 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Required")
102 FString Role;
103
108 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
110
114 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
116
117 // ========================== tools ===============================
118
122 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
124
128 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
130};
131
133// REQUEST TYPES
135
136USTRUCT(BlueprintType)
138{
139 GENERATED_BODY()
140
141
144 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Required")
145 FString Type{"text"};
146};
147
148USTRUCT(BlueprintType)
150{
151 GENERATED_BODY()
152
153
158 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
160
167 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
169};
170
171USTRUCT(BlueprintType)
173{
174 GENERATED_BODY()
175
176
179 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Required")
180 TArray<FMessage> Messages; //@todo: check
181
186 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Required")
187 FString Model;
188
193 // FChatCompletionAudioParam Audio; // @todo: implement optional struct pattern
194
200 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
201 float Frequency_Penalty{0.0f};
202
207 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
209
214 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
215 TMap<FString, FString> Metadata;
216
220 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
221 TArray<FString> Modalities;
222
232 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
233 TMap<FString, int32> Logit_Bias;
234
239 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
240 bool Logprobs{false};
241
247 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
249
254 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
256
262 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
263 int32 N{1};
264
270 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
271 float Presence_Penalty{0.0f};
272
284 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
286
293 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
295
313 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
315
319 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
320 TArray<FString> Stop;
321
329 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
330 bool Stream{false};
331
335 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
337
343 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
344 float Temperature{1.0f};
345
352 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
353 float Top_P{1.0f};
354
361 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
362 TArray<FTools> Tools;
363
374 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
375 FToolChoice Tool_Choice; // @todo: none option
376
380 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
382
387 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
389
393 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
395
400 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
402
407 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
409
414 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
416
420 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
422
427 UPROPERTY(BlueprintReadWrite, Category = "OpenAI | Optional")
429
434 // FWebSearchOptions Web_Search_Options; // @todo: implement
435
440 // FChatCompletionPrediction Prediction; // @todo: implement
441};
442
444// RESPONSE TYPES
446
447USTRUCT(BlueprintType)
448struct FUsage
449{
450 GENERATED_BODY()
451
452
455 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
457
461 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
463
467 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
469};
470
474USTRUCT(BlueprintType)
476{
477 GENERATED_BODY()
478
479
482 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
483 FString Token;
484
490 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
491 float Logprob{};
492
500 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
501 TArray<uint8> Bytes;
502};
503
504USTRUCT(BlueprintType)
506{
507 GENERATED_BODY()
508
509
513 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
515};
516
517USTRUCT(BlueprintType)
519{
520 GENERATED_BODY()
521
522
525 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
527
531 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
533};
534
535USTRUCT(BlueprintType)
537{
538 GENERATED_BODY()
539
540
543 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
544 FString ID;
545
549 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
550 int32 Created{};
551
555 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
556 FString Model;
557
562 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
564
570 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
572
576 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
577 FString Object;
578};
Definition ChatCommonTypes.h:173
float Top_P
Definition ChatCommonTypes.h:353
bool Logprobs
Definition ChatCommonTypes.h:240
float Temperature
Definition ChatCommonTypes.h:344
FString Model
Definition ChatCommonTypes.h:187
FOptionalString User
Definition ChatCommonTypes.h:388
FOptionalString Verbosity
Definition ChatCommonTypes.h:428
int32 N
Definition ChatCommonTypes.h:263
FOptionalBool Parallel_Tool_Calls
Definition ChatCommonTypes.h:381
TArray< FMessage > Messages
Definition ChatCommonTypes.h:180
float Presence_Penalty
Definition ChatCommonTypes.h:271
FChatCompletionResponseFormat Response_Format
Definition ChatCommonTypes.h:285
FOptionalString Service_Tier
Definition ChatCommonTypes.h:314
TMap< FString, int32 > Logit_Bias
Definition ChatCommonTypes.h:233
FOptionalInt Max_Tokens
Definition ChatCommonTypes.h:208
FStreamOptions Stream_Options
Definition ChatCommonTypes.h:336
TArray< FString > Modalities
Definition ChatCommonTypes.h:221
FOptionalString Prompt_Cache_Key
Definition ChatCommonTypes.h:394
FOptionalInt Top_Logprobs
Definition ChatCommonTypes.h:248
FOptionalInt Max_Completion_Tokens
Definition ChatCommonTypes.h:255
float Frequency_Penalty
Definition ChatCommonTypes.h:201
FOptionalString Reasoning_Effort
Definition ChatCommonTypes.h:408
FOptionalString Safety_Identifier
Definition ChatCommonTypes.h:415
TMap< FString, FString > Metadata
Definition ChatCommonTypes.h:215
bool Stream
Definition ChatCommonTypes.h:330
FOptionalInt Seed
Definition ChatCommonTypes.h:294
FOptionalBool Store
Definition ChatCommonTypes.h:421
FOptionalString Prompt_Cache_Retention
Definition ChatCommonTypes.h:401
TArray< FTools > Tools
Definition ChatCommonTypes.h:362
TArray< FString > Stop
Definition ChatCommonTypes.h:320
FToolChoice Tool_Choice
Definition ChatCommonTypes.h:375
Definition ChatCommonTypes.h:537
FString ID
Definition ChatCommonTypes.h:544
FString Service_Tier
Definition ChatCommonTypes.h:563
int32 Created
Definition ChatCommonTypes.h:550
FString Model
Definition ChatCommonTypes.h:556
FString System_Fingerprint
Definition ChatCommonTypes.h:571
FString Object
Definition ChatCommonTypes.h:577
Definition ChatCommonTypes.h:138
FString Type
Definition ChatCommonTypes.h:145
Definition ChatCommonTypes.h:34
FString URL
Definition ChatCommonTypes.h:40
FString Detail
Definition ChatCommonTypes.h:46
Definition ChatCommonTypes.h:506
TArray< FLogProb > Top_Logprobs
Definition ChatCommonTypes.h:514
Definition ChatCommonTypes.h:476
FString Token
Definition ChatCommonTypes.h:483
float Logprob
Definition ChatCommonTypes.h:491
TArray< uint8 > Bytes
Definition ChatCommonTypes.h:501
Definition ChatCommonTypes.h:519
TArray< FLogProbExtent > Refusal
Definition ChatCommonTypes.h:532
TArray< FLogProbExtent > Content
Definition ChatCommonTypes.h:526
Definition ChatCommonTypes.h:51
FString Text
Definition ChatCommonTypes.h:58
FImageURL Image_URL
Definition ChatCommonTypes.h:64
FString Type
Definition ChatCommonTypes.h:70
Definition ChatCommonTypes.h:75
FOptionalString Name
Definition ChatCommonTypes.h:109
FOptionalString Refusal
Definition ChatCommonTypes.h:115
FOptionalString Tool_Call_ID
Definition ChatCommonTypes.h:129
TArray< FMessageContent > ContentArray
Definition ChatCommonTypes.h:94
FString Role
Definition ChatCommonTypes.h:102
FString Content
Definition ChatCommonTypes.h:85
TArray< FToolCalls > Tool_Calls
Definition ChatCommonTypes.h:123
Definition OpenAIOptional.h:58
Definition OpenAIOptional.h:34
Definition OpenAIOptional.h:10
Definition ChatCommonTypes.h:150
FOptionalBool Include_Obfuscation
Definition ChatCommonTypes.h:159
FOptionalBool Include_Usage
Definition ChatCommonTypes.h:168
Definition ToolsTypes.h:32
Definition ToolsTypes.h:123
Definition ToolsTypes.h:108
Definition ChatCommonTypes.h:449
int32 Prompt_Tokens
Definition ChatCommonTypes.h:462
int32 Total_Tokens
Definition ChatCommonTypes.h:468
int32 Completion_Tokens
Definition ChatCommonTypes.h:456