Unreal OpenAI API 1.0.0
RetrieveModelAction.h
1// OpenAI, Copyright LifeEXE. All Rights Reserved.
2
3#pragma once
4
5#include "Kismet/BlueprintAsyncActionBase.h"
6#include "Provider/Types/ModelTypes.h"
7#include "Provider/Types/CommonTypes.h"
8#include "RetrieveModelAction.generated.h"
9
10DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams(FOnRetrieveModel, const FRetrieveModelResponse&, Response, const FOpenAIResponseMetadata&,
11 ResponseMetadata, const FOpenAIError&, RawError);
12
13class UOpenAIProvider;
14
15UCLASS()
16class URetrieveModelAction : public UBlueprintAsyncActionBase
17{
18 GENERATED_BODY()
19
20public:
21 UPROPERTY(BlueprintAssignable)
22 FOnRetrieveModel OnCompleted;
23
24 virtual void Activate() override;
25
26private:
31 UFUNCTION(BlueprintCallable, meta = (BlueprintInternalUseOnly = "true"), Category = "OpenAI | Models")
32 static URetrieveModelAction* RetrieveModel(const FString& ModelName, const FOpenAIAuth& Auth, const FString& URLOverride);
33
34 void TryToOverrideURL(UOpenAIProvider* Provider);
35
36 void OnRetrieveModelCompleted(const FRetrieveModelResponse& Response, const FOpenAIResponseMetadata& ResponseMetadata);
37 void OnRequestError(const FString& URL, const FString& Content);
38
39private:
40 FString ModelName;
41 FOpenAIAuth Auth;
42 FString URLOverride{};
43};
Definition: OpenAIProvider.h:45
void RetrieveModel(const FString &ModelName, const FOpenAIAuth &Auth)
Definition: OpenAIProvider.cpp:37
Definition: RetrieveModelAction.h:17
Definition: CommonTypes.h:11
Definition: CommonTypes.h:28
Definition: CommonTypes.h:49
Definition: ModelTypes.h:140