These functions are lightweight wrappers around
glue that make it easier to interpolate
dynamic data into a static prompt. Compared to glue, these functions
expect you to wrap dynamic values in {{ }}
, making it easier to include
R code and JSON in your prompt.
Usage
interpolate(prompt, ..., .envir = parent.frame())
interpolate_file(path, ..., .envir = parent.frame())
Arguments
- prompt
A prompt string. You should not generally expose this to the end user, since glue interpolation makes it easy to run arbitrary code.
- ...
Define additional temporary variables for substitution.
- .envir
Environment to evaluate
...
expressions in. Used when wrapping in another function. Seevignette("wrappers", package = "glue")
for more details.- path
A path to a prompt file (often a
.md
).
Examples
joke <- "You're a cool dude who loves to make jokes. Tell me a joke about {{topic}}."
# You can supply valuese directly:
interpolate(joke, topic = "bananas")
#> You're a cool dude who loves to make jokes. Tell me a joke about bananas.
# Or allow interpolate to find them in the current environment:
topic <- "applies"
interpolate(joke)
#> You're a cool dude who loves to make jokes. Tell me a joke about applies.