Module: Langchain::Prompt::Loading::ClassMethods
- Defined in:
- lib/langchain/prompt/loading.rb
Instance Method Summary collapse
-
#load_few_shot_prompt(config) ⇒ FewShotPromptTemplate
Loads a prompt template with the given configuration.
-
#load_from_path(file_path:) ⇒ Object
Load prompt from file.
-
#load_prompt(config) ⇒ PromptTemplate
Loads a prompt template with the given configuration.
Instance Method Details
#load_few_shot_prompt(config) ⇒ FewShotPromptTemplate
Loads a prompt template with the given configuration.
62 63 64 65 66 |
# File 'lib/langchain/prompt/loading.rb', line 62 def load_few_shot_prompt(config) prefix, suffix, example_prompt, examples, input_variables = config.values_at("prefix", "suffix", "example_prompt", "examples", "input_variables") example_prompt = load_prompt(example_prompt) FewShotPromptTemplate.new(prefix: prefix, suffix: suffix, example_prompt: example_prompt, examples: examples, input_variables: input_variables) end |
#load_from_path(file_path:) ⇒ Object
Load prompt from file.
28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/langchain/prompt/loading.rb', line 28 def load_from_path(file_path:) file_path = file_path.is_a?(String) ? Pathname.new(file_path) : file_path case file_path.extname when ".json" config = JSON.parse(File.read(file_path)) when ".yaml", ".yml" config = YAML.safe_load_file(file_path) else raise ArgumentError, "Got unsupported file type #{file_path.extname}" end load_from_config(config) end |
#load_prompt(config) ⇒ PromptTemplate
Loads a prompt template with the given configuration.
50 51 52 53 |
# File 'lib/langchain/prompt/loading.rb', line 50 def load_prompt(config) template, input_variables = config.values_at("template", "input_variables") PromptTemplate.new(template: template, input_variables: input_variables) end |