Commit graph

962 commits

Author SHA1 Message Date
Simon Willison
36477cf9e5 llm chat -c and llm -c carry forward tools, closes #1020 2025-05-23 21:10:51 -07:00
Simon Willison
0da2072ade docs: Saving reusable schemas in templates, refs #1069 2025-05-23 18:37:15 -07:00
Simon Willison
3cbc37a470 Log tool plugin to database
Refs https://github.com/simonw/llm/issues/1020#issuecomment-2905968166
2025-05-23 15:59:43 -07:00
Simon Willison
d2886d4692 Record which plugin a tool came from, including in DB - refs #1020 2025-05-23 15:44:12 -07:00
Simon Willison
cb94047b46 Removed obsolete code I accidentally added in #1070 2025-05-23 15:22:32 -07:00
Simon Willison
f6fefb3816 llm schemas list --json/--nl options, closes #1070 2025-05-23 15:17:32 -07:00
Simon Willison
e18eb3a595 Include tools in documented schema 2025-05-22 07:43:12 -07:00
Simon Willison
3e3492898c Conversations using tools in Python API
Refs #1033
2025-05-21 23:05:16 -07:00
Simon Willison
5f44f89de2 Ident + tests for tool logging, closes #1042 2025-05-21 22:04:12 -07:00
Simon Willison
e90705ebf1 Respect name= for register_tools, closes #1032 2025-05-21 21:53:22 -07:00
Simon Willison
e172e9e52d Clean up one more comment 2025-05-21 21:42:46 -07:00
Simon Willison
3cb875fa3d
Async tool support (#1063)
* Sync models can now call async tools, refs #987
* Test for async tool functions in sync context, refs #987
* Test for asyncio tools, plus test that they run in parallel
* Docs for async tool usage
2025-05-21 21:42:19 -07:00
Simon Willison
0ee1ba3a65 Ditch SimpleEcho entirely for Echo, closes #1061 2025-05-20 22:02:04 -07:00
Simon Willison
bd2180df7d
llm chat --tool and --functions (#1062)
* Tool support for llm chat, closes #1004
2025-05-20 21:30:27 -07:00
Simon Willison
e48a5b9f11 Rename "echo" to "simple-echo", refs #1061 2025-05-20 20:55:54 -07:00
Simon Willison
4be2bbdc0e Ensure test does not fail due to random sort order of plugins 2025-05-20 20:53:35 -07:00
Simon Willison
a31ae86c20 Refactor in prep for chat tools, refs #1004 2025-05-20 20:23:48 -07:00
Simon Willison
a3414ed15d llm install --pre option, closes #1060 2025-05-20 18:25:42 -07:00
Simon Willison
f879b816e4 llm plugins --hook X option, closes #1047 2025-05-18 14:50:34 -04:00
Simon Willison
f320de1b0c LLM_TOOLS_DEBUG env var, closes #1045 2025-05-17 22:38:15 -04:00
Simon Willison
a888efa271 Ran cog, refs #1037 2025-05-15 10:41:06 -04:00
Simon Willison
ad7dc2ef71 Enable vision for o3 and o4-mini, closes #1037 2025-05-15 10:22:13 -04:00
Simon Willison
2df619e7d8 --chain-limit option, closes #1025 2025-05-13 21:52:39 -04:00
Simon Willison
114d567da5 Release 0.26a0
Refs #937, #988, #991, #992, #994, #995, #997, #998, #999, #1002, #1003, #1005, #1007, #1008, #1010, #1012, #1016, #1017, #1019, #1021, #1022, #1023, #1024
2025-05-13 20:37:22 -04:00
Simon Willison
471eb67326 Slim initial python API docs for tools and chains, closes #1022 2025-05-13 17:19:30 -07:00
Simon Willison
92b0c6b99c Basic tool usage docs using --functions
Refs #1022, #995, #1016
2025-05-13 17:19:30 -07:00
Simon Willison
c1a66eed60 Tests run on Click < 8.2.0
Refs #1024, #1023
2025-05-13 17:19:30 -07:00
Simon Willison
c81f0560e0 Fixed remaining mypy problems, refs #1023
Refs https://github.com/simonw/llm/pull/996#issuecomment-2878191352
2025-05-13 17:19:30 -07:00
Simon Willison
96f910bb30 Fix for TypeError: 'coroutine' object is not iterable 2025-05-13 17:19:30 -07:00
Simon Willison
511892b30c Fix for Error binding parameter 2: type 'coroutine' is not supported 2025-05-13 17:19:30 -07:00
Simon Willison
a029e0b70c AsyncModel.chain() raises NotImplementedError, closes #1021 2025-05-13 17:19:30 -07:00
github-actions[bot]
89c99df39c Ran cog 2025-05-13 17:19:30 -07:00
Simon Willison
bed617cd62 Enable tools for o3, o3-mini, o4-mini, refs #988 2025-05-13 17:19:30 -07:00
Simon Willison
c586f389e1 Better display of --tools-debug/--td
Refs https://github.com/simonw/llm/issues/1005#issuecomment-2878164610
2025-05-13 17:19:30 -07:00
Simon Willison
d986f98416 Better output for --ta/--tools-approve
Refs https://github.com/simonw/llm/issues/1005#issuecomment-2878163701
2025-05-13 17:19:30 -07:00
Simon Willison
88b806ae1a Got multi-tool OpenAI chat working, in no-stream mode too
Refs #1017, #1019
2025-05-13 17:19:30 -07:00
Simon Willison
5ae20bd549 Guard against chunk=None from models
Bug that I encountered while working on #1019
2025-05-13 17:19:30 -07:00
Simon Willison
a880c123bd --tools is now --functions, can be path, can be multiple
Closes #1016
2025-05-13 17:19:30 -07:00
Simon Willison
1efb14f294 Upgrade condense-json
Refs https://github.com/simonw/llm/issues/1003#issuecomment-2873322525
Refs https://github.com/simonw/condense-json/issues/5
2025-05-13 17:19:30 -07:00
Simon Willison
a50de8b57a ChainResponse.log_to_db() method and test, refs #1017, #1003 2025-05-13 17:19:30 -07:00
Simon Willison
5162cabbe1 First test for tools, plus vcr+syrupy, refs #1017 2025-05-13 17:19:30 -07:00
Simon Willison
0ff24b34c4 dict() is now model_dump() 2025-05-13 17:19:30 -07:00
Simon Willison
9dae58d05d llm logs tool output, long form, refs #1012 2025-05-13 17:19:30 -07:00
Simon Willison
d9629167bd llm logs tools output for --json and --short
Refs #1012
2025-05-13 17:19:30 -07:00
Simon Willison
7efe51fcb4 Rename --python-tools to --tools, closes #1008 2025-05-13 17:19:30 -07:00
Simon Willison
336948f8fe Better visible error message for cancel
Refs #1005
2025-05-13 17:19:30 -07:00
Simon Willison
9650c5de10 Removed obsolete details() method, closes #1007 2025-05-13 17:19:30 -07:00
Simon Willison
e319069503 Initial implementation of --td and --ta, refs #1005
Uses new mechanism from #1007
2025-05-13 17:19:30 -07:00
Simon Willison
ea4df34563 New response.excute_tool_calls(), refs #1007 2025-05-13 17:19:30 -07:00
Simon Willison
387f89d88b Load tool stuff from database, refs #1010 2025-05-13 17:19:30 -07:00