文件历史

提交图

569 次代码提交

作者 SHA1 备注 提交日期
Simon Willison 290c0f13f3 register_tools() hook, get_tools() utility
Refs #991
2025-05-13 17:19:30 -07:00
Simon Willison 8a3c461e46 model.chain() method, tools=[func1, func2]
Also fixed mypy errors, but had to drop AsyncResponse for the moment.

Refs https://github.com/simonw/llm/issues/937#issuecomment-2870479021
2025-05-13 17:19:30 -07:00
Simon Willison 619daa6ff2 .chain().details() debug method
https://github.com/simonw/llm/issues/937#issuecomment-2870465951
2025-05-13 17:19:30 -07:00
Simon Willison 7dbf0b8586 Got a tool call to run through OpenAI
Refs https://github.com/simonw/llm/issues/937#issuecomment-2870434157
2025-05-13 17:19:30 -07:00
Simon Willison c0ef4f4da1 Enforce chain limit of 5
Refs https://github.com/simonw/llm/issues/937#issuecomment-2870390330
2025-05-13 17:19:30 -07:00
Simon Willison 3b37854c26 Initial Conversation.chain() and ChainResponse
Refs https://github.com/simonw/llm/issues/937#issuecomment-2870365809
2025-05-13 17:19:30 -07:00
Simon Willison c990578934 ToolCall.tool_call_id property, refs #937 2025-05-13 17:19:30 -07:00
Simon Willison 290c311ce1 prompt.tools and prompt.tool_results no longer optional
They will always be at least an empty list
2025-05-13 17:19:30 -07:00
Simon Willison 7e574e59b7 Prompt.tool_results property
Refs https://github.com/simonw/llm/issues/937#issuecomment-2869124983
2025-05-13 17:19:30 -07:00
Simon Willison 6ad5e7936f ToolResult dataclass
Refs https://github.com/simonw/llm/issues/937#issuecomment-2869123620
2025-05-13 17:19:30 -07:00
Simon Willison 8b57c2b226 Dropped Tool.output_schema
Refs https://github.com/simonw/llm/issues/935#issuecomment-2869120546
2025-05-13 17:19:30 -07:00
Simon Willison 8c2393f909 Stash function in tool.implementation
Refs https://github.com/simonw/llm/issues/935#issuecomment-2869084490
2025-05-13 17:19:30 -07:00
Simon Willison 5aac6b76f0 response.tool_calls() methods
Refs https://github.com/simonw/llm/issues/936#issuecomment-2869082672
2025-05-13 17:19:30 -07:00
Simon Willison 7bc2f78156 Capture tool calls from OpenAI streaming sync responses
Refs https://github.com/simonw/llm/issues/988#issuecomment-2869079084
2025-05-13 17:19:30 -07:00
Simon Willison 7b450c8215 Response.add_tool_call() method and ToolCall class
Refs https://github.com/simonw/llm/issues/936#issuecomment-2869064678
2025-05-13 17:19:30 -07:00
Simon Willison 84ab4cd409 supports_tools Model property, Tool.function(..., name=) option
Refs https://github.com/simonw/llm/issues/935#issuecomment-2869042481
2025-05-13 17:19:30 -07:00
Simon Willison fc76048b37 Pass tools around a bit
Refs https://github.com/simonw/llm/issues/935#issuecomment-2869032532
2025-05-13 17:19:30 -07:00
Simon Willison 51e2c714d1 WIP Tool definition class
Refs https://github.com/simonw/llm/issues/935#issuecomment-2869002227
2025-05-13 17:19:30 -07:00
Simon Willison 8e68c5e2d9 o4-mini, closes #976 2025-05-04 16:04:28 -07:00
Kevin Burke 5d0a2bba59 llm/default_plugins: add o3 model (#945)
* llm/default_plugins: add o3 model

This is the newest model released by OpenAI and is available through
the API.

* Ran cog

---------

Co-authored-by: Simon Willison <swillison@gmail.com>
2025-05-04 16:01:55 -07:00
Sukhbinder Singh 8c7d33ee52 Fixes --continue bug and adds --database argument to llm chat
* Fix database bug in continue conversation and adds --database to llm chat
* Move the --database to proper place and update help.

Closes #933
2025-05-04 15:57:13 -07:00
Simon Willison e02863c1ca Fragment plugins can now optionally return attachments (#974)
Closes #972
2025-05-04 14:50:27 -07:00
Simon Willison 768a1789a2 llm fragments list should order fragments by date
Closes #973
2025-05-04 12:46:27 -07:00
Abizer Lokhandwala 0b37123a38 Add GPT-4.1 model family to default OpenAI plugin (#965)
* openai: add gpt-4.1 models
* Refactor and run cog

---------

Co-authored-by: Simon Willison <swillison@gmail.com>
2025-05-04 10:27:12 -07:00
Benedikt Willi 7dcfa31143 Add '!edit' command to modify prompts in chat sessions using default editor (#969)
* Add '!edit' command to modify prompts in chat sessions
2025-05-04 10:19:48 -07:00
Simon Willison 16770611ca Fixed bug with model default options and aliases, closes #968 2025-05-04 09:30:44 -07:00
Simon Willison c9f64096c9 llm fragments loaders, closes #941 2025-04-20 07:56:27 -07:00
Simon Willison e78e1fceb2 LLM_MODEL and LLM_EMBEDDING_MODEL environment vars, closes #932 2025-04-19 20:41:24 -07:00
Simon Willison 4279df23a4 Allow -t and --system to be used together, refs #916 2025-04-13 20:27:41 -07:00
Simon Willison e9b002d997 py.typed marker file
Closes #887
2025-04-10 17:19:36 -07:00
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
Steve Morin 4894b13414 llm models --options now shows keys and environment variables
Closes #903
2025-04-08 20:15:56 -07:00
Simon Willison 454eadddff On Windows check for c:... path existence before executing plugins
Closes #901
2025-04-08 19:57:29 -07:00
Simon Willison 56d7f2f13a llm prompt -t filepath.yaml support, closes #897 2025-04-08 13:36:48 -07:00
Simon Willison 0fbbe6a054 llm logs backup command, closes #879 2025-04-07 21:45:52 -07:00
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 3de33be74f Support multiple fragments with same content, closes #888 2025-04-06 16:26:57 -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