文件历史

234 次代码提交

作者 SHA1 备注 提交日期
Simon Willison 631835ef71 If template has no $input variable prompt is still concatenated, closes #878 2025-04-07 07:31:28 -07:00
Simon Willison 388a4ea9a2 Attachment and attachment type support for templates, closes #826 2025-04-07 07:20:49 -07:00
Simon Willison d0255a1eda llm fragments --aliases option, closes #891 2025-04-06 22:30:27 -07:00
Simon Willison b011ed8352 Multpile llm logs -f are now ANDed together, closes #889 2025-04-06 22:22:30 -07:00
Simon Willison a571a4e948 register_fragment_loaders() hook (#886)
* Docs and shape of register_fragment_loaders hook, refs #863
* Update docs for fragment loaders returning a list of FragmentString
* Support multiple fragments with same content, closes #888
* Call the pm.hook.register_fragment_loaders hook
* Test for register_fragment_loaders hook
* Rename FragmentString to Fragment

Closes #863
2025-04-06 17:03:34 -07:00
Simon Willison ac49075129 llm logs -e/--expand option, closes #881 2025-04-06 00:25:28 -07:00
Simon Willison b7f54028e2 Better help for --at option 2025-04-05 17:29:10 -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 dda24010a3 Removed rogue garg=[], refs #880 2025-04-05 11:33:34 -07:00
Simon Willison cc94111892 Skip invalid templates in llm templates list, closes #880 2025-04-05 11:32:35 -07:00
Simon Willison 70e0799821 Hint at llm prompt --help in llm --help, closes #868 2025-03-29 21:00:41 -07:00
Simon Willison f641b89882 llm similar -p/--plain option, closes #853 2025-03-28 00:36:08 -07:00
Simon Willison 5b2c611c82 llm prompt -d/--database option, closes #858 2025-03-28 00:20:31 -07:00
Simon Willison 7e7ccdc19a Hide -p/--path in favor of standard -d/--database, closes #857
Spotted while working on #853
2025-03-28 00:11:01 -07:00
Simon Willison 9a24605996 Allow -t to take a URL to a template, closes #856 2025-03-27 20:36:58 -07:00
Simon Willison 468b0551ee llm models options commands for setting default model options
Closes #829
2025-03-22 18:28:45 -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 a1ffd0dbbc Fixed ruff error, refs #759 2025-03-22 16:40:39 -07:00
Simon Willison 4a45bc6efc Move new truncate_string to llm.utils, add tests
Refs #759
2025-03-22 16:30:34 -07:00
Sukhbinder Singh 8244091854 --short now shows the end of the prompt too (#820)
* --short now gives end of the prompt - closes #759
2025-03-22 16:24:39 -07:00
Simon Willison 6c9a8efb50 register_template_loaders plugin hook, closes #809
* Moved templates CLI commands next to each other
* llm templates loaders command
* Template loader tests
* Documentation for template loaders
2025-03-21 16:46:44 -07:00
Simon Willison 3541415db4 llm prompt -q X -q Y option, closes #841 2025-03-21 15:17:16 -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 1d552aeacc llm models -m option, closes #825 2025-03-10 14:18:50 -07:00
Simon Willison 31d264d9a9 Improved llm embed-multi docs, closes #824 2025-03-09 18:56:20 -05:00
Simon Willison 0865c2d939 LLM_RAISE_ERRORS debug feature, closes #817 2025-03-04 20:14:32 -08:00
Simon Willison b829cd92e0 Show async in list of features, closes #806 2025-02-28 06:44:09 -08:00
Simon Willison 3a60290c82 llm logs --id-gt and --id-gte options, closes #801 2025-02-28 00:15:59 -08:00
Simon Willison 48f67f4085 llm logs --data-ids flag, closes #800 2025-02-27 20:31:50 -08:00
Simon Willison 1bebf8b34a --schema t:template-name option, plus improved schema docs
Closes #799, refs #788
2025-02-27 17:25:31 -08:00
Simon Willison b1fe2e9857 sort_keys=False in --save, closes #798 2025-02-27 16:51:43 -08:00
Simon Willison 98cccd294a llm models list --schemas option, closes #797
Also fixed bug where features showed even without --options, refs #796
2025-02-27 15:50:28 -08:00
Simon Willison 4a7a1f19ed Show features (including streaming) in llm models --options, closes #796 2025-02-27 15:44:38 -08:00
Simon Willison a1ea85ecbd llm logs --schema-multi option 2025-02-27 11:20:23 -08:00
Simon Willison 9a38021218 llm schemas dsl command, closes #793
Refs #790
2025-02-27 10:46:56 -08:00
Simon Willison eb2b243fdf schema_dsl(..., multi=True) parameter, refs #790 2025-02-27 10:28:42 -08:00
Simon Willison 7e819c2ffa Implemented --schema-multi, closes #791 2025-02-27 10:12:21 -08:00
Simon Willison e20bd45cb5 Fix for mypy and ruff, refs #790 2025-02-27 10:01:24 -08:00
Simon Willison c126b5d04c llm schemas list --full option
Refs https://github.com/simonw/llm/issues/781#issuecomment-2688342157
2025-02-27 07:43:41 -08:00
Simon Willison 4908cdfbd2 llm schemas show X command, refs #781 2025-02-27 07:39:36 -08:00
Simon Willison 99a1adcece Initial llm schemas list implementation, refs #781 2025-02-27 07:35:48 -08: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 f35ac31c21 llm logs --schema, --data, --data-array and --data-key options (#785)
* llm logs --schema option, refs #782
* --data and --data-array and --data-key options, refs #782
* Tests for llm logs --schema options, refs #785
* Also implemented --schema ID lookup, refs #780
* Using --data-key implies --data
* Docs for llm logs --schema and --data etc
2025-02-26 21:51:08 -08:00
Simon Willison c58e3a2246 Use -- none -- for no prompt
Refs https://github.com/simonw/llm/issues/783#issuecomment-2686760812
2025-02-26 19:28:19 -08:00
Simon Willison 3d4871f163 Improved log Markdown, closes #783 2025-02-26 19:25:25 -08:00
Simon Willison 62c90dd472 llm prompt --schema X option and model.prompt(..., schema=) parameter (#777)
Refs #776

* Implemented new llm prompt --schema and model.prompt(schema=)
* Log schema to responses.schema_id and schemas table
* Include schema in llm logs Markdown output
* Test for schema=pydantic_model
* Initial --schema CLI documentation
* Python docs for schema=
* Advanced plugin docs on schemas
2025-02-26 16:58:28 -08:00
Tomoko Uchida eda1f4f588 Add note about similarity function in "similar" command's doc (#774)
* note about similarity function in similar command doc
* Link to Wikipedia definition

---------

Co-authored-by: Simon Willison <swillison@gmail.com>
2025-02-26 10:07:10 -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 7bf1ea665e Made load_conversation() async_ aware, closes #742 2025-02-16 20:19:38 -08:00
Simon Willison 2066397aae llm logs --prompts is now -s/--short - also supports --usage
Refs #736, closes #756
2025-02-16 15:12:28 -08:00