diff --git a/README.md b/README.md index e6f4a11..c8d434a 100644 --- a/README.md +++ b/README.md @@ -32,6 +32,38 @@ llm -m command-r 'Say hello from Command R' llm -m command-r-plus 'Say hello from Command R Plus' ``` +The Command R models have the ability to search the web as part of answering a prompt. + +You can enable this feature using the `-o websearch 1` option to the models: + +```bash +llm -m command-r 'What is the LLM CLI tool?' -o websearch 1 +``` +Running a search costs more as it involves spending tokens including the search results in the prompt. + +The full search results are stored as JSON [in the LLM logs](https://llm.datasette.io/en/stable/logging.html). + +You can also use the `command-r-search` command provided by this plugin to see a list of documents that were used to answer your question as part of the output: + +```bash +llm command-r-search 'What is the LLM CLI tool by simonw?' +``` +Example output: + +> The LLM CLI tool is a command-line utility that allows users to access large language models. It was created by Simon Willison and can be installed via pip, Homebrew or pipx. The tool supports interactions with remote APIs and models that can be locally installed and run. Users can run prompts from the command line and even build an image search engine using the CLI tool. +> +> Sources: +> +> - GitHub - simonw/llm: Access large language models from the command-line - https://github.com/simonw/llm +> - llm, ttok and strip-tags—CLI tools for working with ChatGPT and other LLMs - https://simonwillison.net/2023/May/18/cli-tools-for-llms/ +> - Sherwood Callaway on LinkedIn: GitHub - simonw/llm: Access large language models from the command-line - https://www.linkedin.com/posts/sherwoodcallaway_github-simonwllm-access-large-language-activity-7104448041041960960-2WRG +> - LLM Python/CLI tool adds support for embeddings | Hacker News - https://news.ycombinator.com/item?id=37384797 +> - CLI tools for working with ChatGPT and other LLMs | Hacker News - https://news.ycombinator.com/item?id=35994037 +> - GitHub - simonw/homebrew-llm: Homebrew formulas for installing LLM and related tools - https://github.com/simonw/homebrew-llm +> - LLM: A CLI utility and Python library for interacting with Large Language Models - https://llm.datasette.io/en/stable/ +> - GitHub - simonw/llm-prompts: A collection of prompts for use with the LLM CLI tool - https://github.com/simonw/llm-prompts +> - GitHub - simonw/llm-cmd: Use LLM to generate and execute commands in your shell - https://github.com/simonw/llm-cmd + ## Development To set up this plugin locally, first checkout the code. Then create a new virtual environment: diff --git a/llm_command_r.py b/llm_command_r.py index 454a488..c935729 100644 --- a/llm_command_r.py +++ b/llm_command_r.py @@ -64,7 +64,7 @@ def command_r_search(prompt, system, model_id, options, no_log, key): print("Sources:") print() for doc in documents: - print(doc["title"], "-", doc["url"]) + print("-", doc["title"], "-", doc["url"]) @llm.hookimpl