LLM for Unity  v3.0.1
Create characters in Unity with LLMs!
Loading...
Searching...
No Matches
LLMUnity.LLMCharacter Class Reference
Inheritance diagram for LLMUnity.LLMCharacter:
[legend]

Public Member Functions

void SetPrompt (string newPrompt, bool clearChat=true)
 
- Public Member Functions inherited from LLMUnity.LLMAgent
override void Awake ()
 Unity Awake method that validates configuration and assigns local LLM if needed.
 
virtual string GetSavePath ()
 Gets the full path for a file in the persistent data directory.
 
virtual async Task ClearHistory ()
 Clears the entire conversation history.
 
virtual async Task AddUserMessage (string content)
 Adds a user message to the conversation history.
 
virtual async Task AddAssistantMessage (string content)
 Adds an AI assistant message to the conversation history.
 
virtual async Task< string > Chat (string query, Action< string > callback=null, Action completionCallback=null, bool addToHistory=true)
 Processes a user query asynchronously and generates an AI response using conversation context. The query and response are automatically added to chat history if specified.
 
virtual async Task Warmup (Action completionCallback=null)
 Warms up the model by processing the system prompt without generating output. This caches the system prompt processing for faster subsequent responses.
 
virtual async Task Warmup (string query, Action completionCallback=null)
 Warms up the model with a specific prompt without adding it to history. This pre-processes prompts for faster response times in subsequent interactions.
 
virtual async Task SaveHistory ()
 Saves the conversation history and optionally the LLM cache to disk.
 
virtual async Task LoadHistory ()
 Loads conversation history and optionally the LLM cache from disk.
 
void CancelRequests ()
 Cancels any active requests for this agent.
 
- Public Member Functions inherited from LLMUnity.LLMClient
virtual async void Start ()
 Unity Start method that initializes the LLM client connection.
 
virtual bool IsAutoAssignableLLM (LLM llmInstance)
 Determines if an LLM instance can be auto-assigned to this client. Override in derived classes to implement specific assignment logic.
 
virtual void SetGrammar (string grammarString)
 Sets grammar constraints for structured output generation.
 
virtual void LoadGrammar (string path)
 Loads grammar constraints from a file.
 
virtual async Task< List< int > > Tokenize (string query, Action< List< int > > callback=null)
 Converts text into a list of token IDs.
 
virtual async Task< string > Detokenize (List< int > tokens, Action< string > callback=null)
 Converts token IDs back to text.
 
virtual async Task< List< float > > Embeddings (string query, Action< List< float > > callback=null)
 Generates embedding vectors for the input text.
 
virtual async Task< string > Completion (string prompt, Action< string > callback=null, Action completionCallback=null, int id_slot=-1)
 Generates text completion.
 
void CancelRequest (int id_slot)
 Cancels an active request in the specified slot.
 

Properties

string prompt [get, set]
 
- Properties inherited from LLMUnity.LLMAgent
int slot [get, set]
 Server slot ID for this agent's requests.
 
string systemPrompt [get, set]
 System prompt defining the agent's behavior and personality.
 
UndreamAI.LlamaLib.LLMAgent llmAgent [get]
 The underlying LLMAgent instance from LlamaLib.
 
List< ChatMessagechat [get, set]
 Current conversation history as a list of chat messages.
 
- Properties inherited from LLMUnity.LLMClient
bool remote [get, set]
 Whether this client uses a remote server connection.
 
LLM llm [get, set]
 The local LLM instance (null if using remote)
 
string APIKey [get, set]
 API key for remote server authentication.
 
string host [get, set]
 Remote server hostname or IP address.
 
int port [get, set]
 Remote server port number.
 
string grammar [get, set]
 Current grammar constraints for output formatting.
 

Additional Inherited Members

- Public Attributes inherited from LLMUnity.LLMAgent
string save = ""
 Filename for saving chat history (saved in persistentDataPath)
 
bool debugPrompt = false
 Debug LLM prompts.
 
- Public Attributes inherited from LLMUnity.LLMClient
bool advancedOptions = false
 Show/hide advanced options in the inspector.
 
int numPredict = -1
 Maximum tokens to generate (-1 = unlimited)
 
bool cachePrompt = true
 Cache processed prompts to speed up subsequent requests.
 
int seed = 0
 Random seed for reproducible generation (0 = random)
 
float temperature = 0.2f
 Sampling temperature (0.0 = deterministic, higher = more creative)
 
int topK = 40
 Top-k sampling: limit to k most likely tokens (0 = disabled)
 
float topP = 0.9f
 Top-p (nucleus) sampling: cumulative probability threshold (1.0 = disabled)
 
float minP = 0.05f
 Minimum probability threshold for token selection.
 
float repeatPenalty = 1.1f
 Penalty for repeated tokens (1.0 = no penalty)
 
float presencePenalty = 0f
 Presence penalty: reduce likelihood of any repeated token (0.0 = disabled)
 
float frequencyPenalty = 0f
 Frequency penalty: reduce likelihood based on token frequency (0.0 = disabled)
 
float typicalP = 1f
 Locally typical sampling strength (1.0 = disabled)
 
int repeatLastN = 64
 Number of recent tokens to consider for repetition penalty (0 = disabled, -1 = context size)
 
int mirostat = 0
 Mirostat sampling mode (0 = disabled, 1 = Mirostat, 2 = Mirostat 2.0)
 
float mirostatTau = 5f
 Mirostat target entropy (tau) - balance between coherence and diversity.
 
float mirostatEta = 0.1f
 Mirostat learning rate (eta) - adaptation speed.
 
int nProbs = 0
 Include top N token probabilities in response (0 = disabled)
 
bool ignoreEos = false
 Ignore end-of-stream token and continue generating.
 

Detailed Description

Definition at line 5 of file LLMCharacter.cs.

Constructor & Destructor Documentation

◆ LLMCharacter()

LLMUnity.LLMCharacter.LLMCharacter ( )
inline

Definition at line 13 of file LLMCharacter.cs.

Member Function Documentation

◆ SetPrompt()

void LLMUnity.LLMCharacter.SetPrompt ( string newPrompt,
bool clearChat = true )
inline

Definition at line 18 of file LLMCharacter.cs.

Property Documentation

◆ prompt

string LLMUnity.LLMCharacter.prompt
getset

Definition at line 7 of file LLMCharacter.cs.


The documentation for this class was generated from the following file: