42 lines
1.3 KiB
C++
42 lines
1.3 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "Engine/DataAsset.h"
|
|
#include "Templates/SubclassOf.h"
|
|
#include "BrainPromptDataAsset.generated.h"
|
|
|
|
class UBrainToolBase;
|
|
|
|
UCLASS(BlueprintType)
|
|
class FUNNYGIRL_API UBrainPromptDataAsset : public UPrimaryDataAsset
|
|
{
|
|
GENERATED_BODY()
|
|
|
|
public:
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Brain", meta = (DisplayPriority = "0"))
|
|
FString ID;
|
|
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Prompting", meta = (DisplayPriority = "20"))
|
|
FText Name;
|
|
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Prompting", meta = (MultiLine = "true", DisplayPriority = "10"))
|
|
FText SystemPrompt;
|
|
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Prompting|Tools", meta = (MultiLine = "true", DisplayPriority = "10"))
|
|
FText ToolsPromptHeader;
|
|
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Prompting|Tools", meta = (MultiLine = "true", DisplayPriority = "30"))
|
|
FText ToolsPromptFooter;
|
|
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Prompting|Tools", meta = (DisplayPriority = "20"))
|
|
TArray<TSubclassOf<UBrainToolBase>> AllowedTools;
|
|
|
|
UFUNCTION(BlueprintPure, Category = "Brain")
|
|
virtual FString BuildBrainPrompt() const;
|
|
|
|
UFUNCTION(BlueprintPure, Category = "Tools")
|
|
FString BuildToolsPrompt() const;
|
|
};
|