Package com.tnsai.prompt
Class PromptLoader
java.lang.Object
com.tnsai.prompt.PromptLoader
Loads prompt templates from files and resources.
Supports loading from:
- Classpath resources (e.g.,
prompts/agent.prompt) - File system paths
- Directories (recursively)
File Format
Prompt files can include YAML-style front matter for metadata:
---
version: 1.0.0
description: Agent system prompt
author: team-ai
required: task, context
tags: agent, system
---
You are an AI assistant. Your task is {{task}}.
Context:
{{context}}
Usage
PromptLoader loader = new PromptLoader();
// Load single file
PromptTemplate template = loader.loadFromResource("prompts/agent.prompt");
// Load from directory
Map<String, PromptTemplate> templates = loader.loadDirectory(Path.of("prompts"));
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionloadDirectory(Path directory) Loads all templates from a directory recursively.loadDirectory(Path directory, String glob) Loads templates from a directory matching a glob pattern.com.tnsai.prompt.PromptTemplateloadFromFile(Path path) Loads a template from a file path.com.tnsai.prompt.PromptTemplateloadFromResource(String resourcePath) Loads a template from a classpath resource.loadFromResources(String resourceDir, String... templateNames) Loads templates from classpath directory.com.tnsai.prompt.PromptTemplateparseTemplate(String name, String content) Parses a template from content string.
-
Constructor Details
-
PromptLoader
public PromptLoader()
-
-
Method Details
-
loadFromResource
Loads a template from a classpath resource.- Parameters:
resourcePath- the resource path- Returns:
- loaded template
- Throws:
com.tnsai.prompt.PromptException- if loading fails
-
loadFromFile
Loads a template from a file path.- Parameters:
path- the file path- Returns:
- loaded template
- Throws:
com.tnsai.prompt.PromptException- if loading fails
-
loadDirectory
Loads all templates from a directory recursively.- Parameters:
directory- the directory path- Returns:
- map of template name to template
- Throws:
com.tnsai.prompt.PromptException- if loading fails
-
loadDirectory
Loads templates from a directory matching a glob pattern.- Parameters:
directory- the directory pathglob- the glob pattern (e.g., "*.prompt", "**\/*.st")- Returns:
- map of template name to template
- Throws:
com.tnsai.prompt.PromptException- if loading fails
-
loadFromResources
public Map<String,com.tnsai.prompt.PromptTemplate> loadFromResources(String resourceDir, String... templateNames) Loads templates from classpath directory.- Parameters:
resourceDir- the resource directorytemplateNames- the template file names- Returns:
- map of template name to template
-
parseTemplate
Parses a template from content string.- Parameters:
name- the template namecontent- the content (may include front matter)- Returns:
- parsed template
-