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
945f14e120
Test to close #854
2025-03-27 21:47:36 -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
4a45bc6efc
Move new truncate_string to llm.utils, add tests
...
Refs #759
2025-03-22 16:30:34 -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
807f863850
Note that simplify_usage_dict is used by a plugin
2025-03-21 15:19:24 -07:00
Simon Willison
3541415db4
llm prompt -q X -q Y option, closes #841
2025-03-21 15:17:16 -07:00
Simon Willison
63e5dff774
Update test, regs #834
2025-03-19 20:47:51 -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
bc692e1f19
Templates only require input if they use $input
2025-03-15 19:06:41 -07:00
Simon Willison
1d552aeacc
llm models -m option, closes #825
2025-03-10 14:18:50 -07: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
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
8d32b71ef1
Renamed build_json_schema to schema_dsl
2025-02-27 10:22:29 -08:00
Simon Willison
7e819c2ffa
Implemented --schema-multi, closes #791
2025-02-27 10:12:21 -08:00
Simon Willison
321636e791
New schema DSL, closes #790
...
Plus made a start on schemas.md refs #788
2025-02-27 09:48:44 -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
02999e398d
Refactor tests to new test_llm_logs.py module
...
Refs #785
2025-02-26 20:23:55 -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
Simon Willison
7bf1ea665e
Made load_conversation() async_ aware, closes #742
2025-02-16 20:19:38 -08:00
Simon Willison
3445f9a112
Test for async model conversations Python API, refs #742
2025-02-16 19:48:25 -08:00
Simon Willison
24b250506b
Better __repr__ and __str__ for conversation and model
...
Inspired by work on #752
2025-02-16 15:45:08 -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
Simon Willison
6c6b100f3e
KeyModel and AsyncKeyModel classes for models that taken keys ( #753 )
...
* New KeyModel and AsyncKeyModel classes for models that taken keys - closes #744
* llm prompt --key now uses new mechanism, including for async
* use new key mechanism in llm chat command
* Python API tests for llm.KeyModel and llm.AsyncKeyModel
* Python API docs for for prompt(... key="")
* Mention await model.prompt() takes other parameters, reorg sections
* Better title for the model tutorial
* Docs on writing model plugins that take a key
2025-02-16 14:38:51 -08:00
Simon Willison
31e900e9e1
llm aliases set -q option, refs #749
2025-02-13 15:49:47 -08:00
Simon Willison
20c18a716d
-q multiple option for llm models and llm embed-models
...
Refs #748
2025-02-13 15:35:18 -08:00
Simon Willison
9a1374b447
llm embed-multi --prepend option ( #746 )
...
* llm embed-multi --prepend option
Closes #745
2025-02-12 15:19:18 -08:00
Simon Willison
41d64a8f12
llm logs --prompts option ( #737 )
...
Closes #736
2025-02-02 12:03:01 -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
web-sst
6f7ea406bf
Register full embedding model names ( #654 )
...
Provide backward compatible aliases.
This makes available the same model names that ttok uses.
2025-01-22 20:14:03 -08:00
Csaba Henk
88a8cfd9e4
llm logs -x/--extract option ( #693 )
...
* llm logs -x/--extract option
* Update docs/help.md for llm logs -x
* Added test for llm logs -x/--extract, refs #693
* llm logs -xr behaves same as llm logs -x
* -x/--extract in llm logging docs
---------
Co-authored-by: Simon Willison <swillison@gmail.com >
2025-01-10 15:53:04 -08:00
Simon Willison
b452effa09
llm models -q/--query option, closes #700
2025-01-09 11:37:33 -08:00
Simon Willison
000e984def
--extract support for templates, closes #681
2024-12-19 07:16:48 -08:00
Simon Willison
67d4a99645
llm prompt -x/--extract option, closes #681
2024-12-19 06:40:05 -08:00
Simon Willison
571f4b2a4d
Fix for UTC warnings
...
Closes #672
2024-12-12 14:57:23 -08:00
Simon Willison
b6be09aa28
Fix get_models() and get_async_models() duplicates bug
...
Closes #667 , refs #640
2024-12-05 13:44:07 -08:00
Simon Willison
f9af563df5
response.on_done() mechanism, closes #653
2024-12-01 15:47:23 -08:00
Simon Willison
c52cfee881
llm.get_models() and llm.get_async_models(), closes #640
2024-11-20 20:09:06 -08:00
Simon Willison
8a7b0c4f5d
response.usage() and await aresponse.usage(), closes #644
2024-11-19 21:25:37 -08:00
Simon Willison
cfb10f4afd
Log input tokens, output tokens and token details ( #642 )
...
* Store input_tokens, output_tokens, token_details on Response, closes #610
* llm prompt -u/--usage option
* llm logs -u/--usage option
* Docs on tracking token usage in plugins
* OpenAI default plugin logs usage
2024-11-19 20:21:59 -08:00