Commit graph

165 commits

Author SHA1 Message Date
Simon Willison
d2d7b6e808 Fix a warning about _static in docs builds 2023-07-10 21:45:07 -07:00
Simon Willison
aa37d3307f Example for logit_bias, closes #36 2023-07-10 15:43:44 -07:00
Simon Willison
bee1817284 Added a . for consistency 2023-07-10 15:32:07 -07:00
Simon Willison
898418a518 Fix for cogapp on Python 3.8, refs #82 2023-07-10 14:12:20 -07:00
Simon Willison
9f25cde60e Show cog on usage.md to help debug #82 2023-07-10 14:00:21 -07:00
Simon Willison
18f34b5df2 How to add docs to options, refs #82 2023-07-10 13:51:33 -07:00
Simon Willison
8f7c3a9797 llm models list --options - closes #82 2023-07-10 13:40:27 -07:00
Simon Willison
a2a97b6c7d Removed duplicated tutorial page 2023-07-10 13:39:59 -07:00
Simon Willison
d5743641e6 Expanded plugins/ docs into several pages
Refs #87
2023-07-10 12:48:25 -07:00
Simon Willison
4a46bf40b6 Capitalize Homepage in example pyproject.toml 2023-07-10 12:25:36 -07:00
Simon Willison
35827a5d43 Basic Python API usage instructions
Closes #75
2023-07-10 11:42:23 -07:00
Simon Willison
6cdbc7a270 Show error for --continue mode, remove deleted code 2023-07-10 08:34:36 -07:00
Simon Willison
02a930dd8e Updated Gist example for tutorial 2023-07-10 08:31:50 -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
199f7e0767 Renamed iter_prompt() to execute() and updated tutorial 2023-07-10 07:59:12 -07:00
Simon Willison
ae87f978bd Moved iter_prompt from Response to Model, moved a lot of other stuff
- Moved a whole bunch of things from llm/cli.py into llm/__init__.py
- Switched plugin listings to use importlib.metadata to avoid deprecation warning
- iter_prompt() is now a method on Model, not on Response
2023-07-10 07:45:11 -07:00
Simon Willison
282b3af45d Run black at end of just fix
To ensure any changes made by ruff --fix are reformatted.
2023-07-10 07:41:49 -07:00
Simon Willison
ccda1eec73 Switch tutorial from setup.py to pyproject.toml
Refs #53

Based on https://til.simonwillison.net/python/pyproject

Closes #81
2023-07-08 15:34:19 -07:00
Simon Willison
902cf6010c Fixed type hint on Prompt 2023-07-07 20:38:53 -07:00
Simon Willison
5e1b528ebb Snappier tutorial title 2023-07-07 08:13:45 -07:00
Simon Willison
40f3892e19 Fix lin to Gist in tutorial 2023-07-06 21:11:05 -07:00
Simon Willison
94b13ab872 types-click 2023-07-06 20:45:10 -07:00
Simon Willison
c1e3cbf2e9 Detailed tutorial on writing plugins 2023-07-06 20:38:12 -07:00
Simon Willison
3d5c9b2d3b Read prompt after validating options
This means that if you do this:

    llm -m markov -o length -1

You will see an error message rather than have the command hang
waiting for a prompt to be entered on stdin.
2023-07-06 19:57:04 -07:00
Simon Willison
04568115b8 Options base class is now llm.Options not Model.Options 2023-07-05 20:47:36 -07:00
Simon Willison
b4248df72a Markov plugin now lives in llm-markov repo 2023-07-05 20:46:53 -07:00
Simon Willison
4611bff412 iter_prompt() now takes prompt 2023-07-05 20:46:17 -07:00
Simon Willison
c08344f986 llm logs now decodes JSON for prompt_json etc 2023-07-05 18:31:38 -07:00
Simon Willison
b88906d459 Default __str__ method for models 2023-07-05 18:26:16 -07:00
Simon Willison
6ef6b343a9 Improved how keys work, execute() now has default implementation 2023-07-05 18:25:57 -07:00
Simon Willison
f193468f76 llm install -e/--editable option 2023-07-05 17:58:19 -07:00
Simon Willison
78c93b9e23 Model.execute() model now defaults to using self.Response 2023-07-05 16:57:10 -07:00
Simon Willison
23886e04ae Better error message display
Refs https://github.com/pydantic/pydantic/issues/6441
2023-07-05 16:36:38 -07:00
Simon Willison
bc8dad1e33 stream defaults to True on prompt() method 2023-07-04 08:14:00 -07:00
Simon Willison
49e4d688c6 Removed .stream() method in favor of .prompt(stream=False) 2023-07-04 07:50:31 -07:00
Simon Willison
3136948408 Moved things into inner classes, log_message is now defined on base Response 2023-07-03 21:25:19 -07:00
Simon Willison
de81cc9a9e Test messages logged in new format 2023-07-03 08:12:04 -07:00
Simon Willison
307af2474c Fix column order in logs 2023-07-03 07:29:58 -07:00
Simon Willison
345ad0d2dc Implemented new logs database schema 2023-07-03 07:27:47 -07:00
Simon Willison
b1c51df3f1 New LogMessage design, plus Response.json() method 2023-07-03 06:46:51 -07:00
Simon Willison
61dd8afc60 Drop the debug field from the logs, combine chunks from stream 2023-07-03 06:39:54 -07:00
Simon Willison
84b99f8baf -o/--option, implemented for OpenAI models - closes #63 2023-07-02 17:42:22 -07:00
Simon Willison
e485eadf14 just fix command 2023-07-02 17:40:45 -07:00
Simon Willison
52add96ec1 Rough initial version of new logging, to log2 table 2023-07-02 16:35:36 -07:00
Simon Willison
4a9f7f4908 Lint using Ruff, refs #78 2023-07-02 12:41:40 -07:00
Simon Willison
9eeebfa020 type stubs for PyYAML and requests, refs #77 2023-07-02 12:39:37 -07:00
Simon Willison
3ed86e403d Added mypy, plus some fixes to make it happy - refs #77 2023-07-02 12:36:22 -07:00
Simon Willison
7054c673e1 Better type hint for iter_prompt method
The Generator thing is only useful if the method uses the send mechanism

Declaring it an Iterator gives people more flexibility for how they implement it.
2023-07-02 11:18:31 -07:00
Simon Willison
9a180e65a8 llm models default command, plus refactored env variables
Closes #76
Closes #31
2023-07-01 14:01:29 -07:00
Simon Willison
f3f38c0c02 Initial experimental response.reply() method 2023-07-01 13:29:54 -07:00