Unreal OpenAI API 1.0.0
Loading...
Searching...
No Matches
ChatCompletionAction.h
1// OpenAI, Copyright LifeEXE. All Rights Reserved.
2
3#pragma once
4
5#include "BlueprintAsyncActions/OpenAIActionBase.h"
6#include "Provider/Types/Chat/ChatCompletionTypes.h"
7#include "Provider/Types/Chat/ChatCompletionChunkTypes.h"
8#include "Provider/Types/OpenAICommonTypes.h"
9#include "ChatCompletionAction.generated.h"
10
11USTRUCT(BlueprintType)
13{
14 GENERATED_BODY()
15
16
17 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
19
21 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
23
25 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
27
28 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
29 bool bStream{};
30
31 UPROPERTY(BlueprintReadOnly, Category = "OpenAI")
32 bool bCompleted{};
33};
34
35DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams(FOnChatCompletion, const FChatCompletionPayload&, Payload, const FOpenAIResponseMetadata&,
36 ResponseMetadata, const FOpenAIError&, RawError);
37
38UCLASS()
40{
41 GENERATED_BODY()
42
43public:
44 UPROPERTY(BlueprintAssignable)
45 FOnChatCompletion OnUpdate;
46
47 virtual void Activate() override;
48
49private:
54 UFUNCTION(BlueprintCallable, meta = (BlueprintInternalUseOnly = "true"), Category = "OpenAI | Chat")
56 const FChatCompletion& ChatCompletion, const FOpenAIAuth& Auth, const FString& URLOverride);
57
58 void OnCreateChatCompletionCompleted(const FChatCompletionResponse& Response, const FOpenAIResponseMetadata& ResponseMetadata);
59 void OnCreateChatCompletionStreamProgresses(
60 const TArray<FChatCompletionStreamResponse>& Responses, const FOpenAIResponseMetadata& ResponseMetadata);
61 void OnCreateChatCompletionStreamCompleted(
62 const TArray<FChatCompletionStreamResponse>& Responses, const FOpenAIResponseMetadata& ResponseMetadata);
63 virtual void OnRequestError(const FString& URL, const FString& Content) override;
64 virtual void SetEndpoint(OpenAI::V1::FOpenAIEndpoints& Endpoints, const FString& URL) const override;
65
66private:
67 FChatCompletion ChatCompletion;
68};
Definition ChatCompletionAction.h:40
static UChatCompletionAction * CreateChatCompletion(const FChatCompletion &ChatCompletion, const FOpenAIAuth &Auth, const FString &URLOverride)
Definition ChatCompletionAction.cpp:20
Definition OpenAIActionBase.h:12
Definition ChatCommonTypes.h:173
Definition ChatCompletionAction.h:13
FString StreamResponseString
Definition ChatCompletionAction.h:26
TArray< FChatCompletionStreamResponse > StreamResponse
Definition ChatCompletionAction.h:22
FChatCompletionResponse Response
Definition ChatCompletionAction.h:18
Definition ChatCompletionTypes.h:116
Definition ChatCompletionChunkTypes.h:77
Definition OpenAICommonTypes.h:11
Definition OpenAICommonTypes.h:28
Definition OpenAICommonTypes.h:49
Definition API.h:127