WOLFRAM

represents a prompt generator that uses the function f.

LLMPromptGenerator[f,inputspec]

provides the specified inputspec to f.

Details

  • LLMPromptGenerator is used to add message-dependent context to an LLM prompt.
  • Possible values for inputspec are:
  • "Input"the last user input (default)
    "Messages"the list of messages
    "LLMEvaluator"the current LLMConfiguration[]
    "ChatObject"the whole conversation as ChatObject[]
    {spec1,}an association of inputs
  • The result of f has to be valid prompt. Possible values include:
  • "text"static text
    LLMPrompt["name"]a repository prompt
    StringTemplate[]templated text
    TemplateObject[]template for creating a prompt
    Image[]an image
    SemanticSearchIndex[]a semantic search index
    {prompt1,}a list of prompts
  • Template objects are automatically converted to strings via TemplateObject[][].
  • A prompt created with TemplateObject can contain text and images.
  • Not every LLM supports image input.
  • If the result of f is not a string, a list of strings or an image, it will be converted using TextString.

Examples

open allclose all

Basic Examples  (1)Summary of the most common use cases

Define a prompt generator that always prepends the current evaluation date and time:

Out[1]=1

Test the generator:

Out[2]=2

Use the generator in an interaction with an LLM:

Out[3]=3

Scope  (5)Survey of the scope of standard use cases

Function  (3)

Use a simple prompt:

Out[4]=4

Use a function to define the tone of the answer at evaluation time based on the input:

Out[1]=1

Try with a cowboy role:

Out[2]=2

Define a generator on a SemanticSearchIndex:

Out[1]=1

Use it to add content semantically relevant to the query:

Out[2]=2

Compare with the uninformed LLM answer:

Out[3]=3

Input Specifications  (2)

Define a generator that echoes the calling function input (default argument):

Out[1]=1

Give a custom input specification:

Out[1]=1

Possible Issues  (1)Common pitfalls and unexpected behavior

A list of prompts does not evaluate when applied to the input:

Out[1]=1

Wrap the list using TemplateObject or Function:

Out[2]=2
Wolfram Research (2024), LLMPromptGenerator, Wolfram Language function, https://reference.wolfram.com/language/ref/LLMPromptGenerator.html.
Wolfram Research (2024), LLMPromptGenerator, Wolfram Language function, https://reference.wolfram.com/language/ref/LLMPromptGenerator.html.

Text

Wolfram Research (2024), LLMPromptGenerator, Wolfram Language function, https://reference.wolfram.com/language/ref/LLMPromptGenerator.html.

Wolfram Research (2024), LLMPromptGenerator, Wolfram Language function, https://reference.wolfram.com/language/ref/LLMPromptGenerator.html.

CMS

Wolfram Language. 2024. "LLMPromptGenerator." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/LLMPromptGenerator.html.

Wolfram Language. 2024. "LLMPromptGenerator." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/LLMPromptGenerator.html.

APA

Wolfram Language. (2024). LLMPromptGenerator. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/LLMPromptGenerator.html

Wolfram Language. (2024). LLMPromptGenerator. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/LLMPromptGenerator.html

BibTeX

@misc{reference.wolfram_2025_llmpromptgenerator, author="Wolfram Research", title="{LLMPromptGenerator}", year="2024", howpublished="\url{https://reference.wolfram.com/language/ref/LLMPromptGenerator.html}", note=[Accessed: 05-May-2025 ]}

@misc{reference.wolfram_2025_llmpromptgenerator, author="Wolfram Research", title="{LLMPromptGenerator}", year="2024", howpublished="\url{https://reference.wolfram.com/language/ref/LLMPromptGenerator.html}", note=[Accessed: 05-May-2025 ]}

BibLaTeX

@online{reference.wolfram_2025_llmpromptgenerator, organization={Wolfram Research}, title={LLMPromptGenerator}, year={2024}, url={https://reference.wolfram.com/language/ref/LLMPromptGenerator.html}, note=[Accessed: 05-May-2025 ]}

@online{reference.wolfram_2025_llmpromptgenerator, organization={Wolfram Research}, title={LLMPromptGenerator}, year={2024}, url={https://reference.wolfram.com/language/ref/LLMPromptGenerator.html}, note=[Accessed: 05-May-2025 ]}