文件历史

14 次代码提交

作者 SHA1 备注 提交日期
guspix 0cc26b3d4f Allow escaping a dollar sign in templates by adding another dollar sign (#876)
* Allow escaping a dollar sign in templates by adding another dollar sign
* Docs for escaping $$ in template, refs #876, #904

Closes #904

---------

Co-authored-by: Simon Willison <swillison@gmail.com>
2025-04-08 20:33:39 -07:00
Simon Willison 388a4ea9a2 Attachment and attachment type support for templates, closes #826 2025-04-07 07:20:49 -07:00
Simon Willison f740a5cbbd Fragments (#859)
* WIP fragments: schema plus reading but not yet writing, refs #617
* Unique index on fragments.alias, refs #617
* Fragments are now persisted, added basic CLI commands
* Fragment aliases work now, refs #617
* Improved help for -f/--fragment
* Support fragment hash as well
* Documentation for fragments
* Better non-JSON display of llm fragments list
* llm fragments -q search option
* _truncate_string is now truncate_string
* Use condense_json to avoid duplicate data in JSON in DB, refs #617
* Follow up to 3 redirects for fragments
* Python API docs for fragments= and system_fragments=
* Fragment aliases cannot contain a : - this is to ensure we can add custom fragment loaders later on, refs https://github.com/simonw/llm/pull/859#issuecomment-2761534692
* Use template fragments when running prompts
* llm fragments show command plus llm fragments group tests
* Tests for fragments family of commands
* Test for --save with fragments
* Add fragments tables to docs/logging.md
* Slightly better llm fragments --help
* Handle fragments in past conversations correctly
* Hint at llm prompt --help in llm --help, closes #868
* llm logs -f filter plus show fragments in llm logs --json
* Include prompt and system fragments in llm logs -s
* llm logs markdown fragment output and tests, refs #617
2025-04-05 17:22:37 -07:00
Simon Willison 1ad7bbd32a Ability to store options in templates (#845)
* llm prompt --save option support, closes #830
* Fix for templates with just a system prompt, closes #844
* Tests for options from template, refs #830
* Test and bug fix for --save with options, refs #830
* Docs for template options support, refs #830
2025-03-22 17:24:02 -07:00
Simon Willison bfbcc201b7 Don't require input if template does not use $input, closes #835 2025-03-15 19:17:36 -07:00
Simon Willison a0845874ec Schema template --save --schema support
* Don't hang on stdin if llm -t template-with-schema
* Docs on using schemas with templates
* Schema in template YAML file example
* Test for --save with --schema

Refs #778
2025-02-27 07:19:15 -08:00
Simon Willison 849c65fe9d Upgrade to Pydantic v2 (#775)
* Upgrade to Pydantic v2
* Stop testing against Pydantic v1

Closes #520
2025-02-26 10:05:54 -08:00
Simon Willison 656d8fa3c4 --xl/--extract-last flag for prompt and log list commands (#718)
Closes #717
2025-01-24 10:52:46 -08:00
Simon Willison 000e984def --extract support for templates, closes #681 2024-12-19 07:16:48 -08:00
Simon Willison adb900be1a Restore extra=forbid for Template, refs #169 2023-08-19 21:42:32 -07:00
Simon Willison 5bf0f4165f Removed incomplete model_config feature, refs #169 2023-08-19 21:38:09 -07:00
Simon Willison a421aab7f0 Renamed template.execute() to template.evaluate() and added type hints 2023-07-10 08:27:28 -07:00
Simon Willison 9ac120fae4 Upgrade to pydantic 2 using bump-pydantic, refs #74 2023-07-01 11:53:54 -07:00
Simon Willison 13fb4c2966 Refactor Template into templates.py 2023-07-01 08:27:45 -07:00