Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
An extension for oobabooga/text-generation-webui that enables the LLM to search the web
| Date | Stars |
|---|---|
| 2026-07-31 | 282 |
| 2026-08-06 | 282 |
Today
— stars today
This week
— stars this week
This month
— stars this month
Momentum
0.0
growth rate 0.00%/day
# Give your local LLM the ability to search the web!

This project gives local LLMs the ability to search the web, either by using native tool calls or by outputting a specific
command. Once a tool call has been issued or a command has been found in the model output using a regular expression, a web search is executed, returning a number of result pages. Finally, an
ensemble of a dense embedding model and
[Okapi BM25](https://en.wikipedia.org/wiki/Okapi_BM25) (Or alternatively, [SPLADE](https://github.com/naver/splade))
is used to extract the relevant parts (if any) of each web page in the search results
and the results are appended to the model's output.

* **[Table of Contents](#table-of-contents)**
* [Installation](#installation)
* [Usage](#usage)
+ [Native Tool Calling Mode](#native-tool-calling-mode)
+ [Legacy Mode](#legacy-mode)
+ [Using a custom regular expression](#using-a-custom-regular-expression)
+ [Reading web pages](#reading-web-pages)
* [Search backends](#search-backends)
+ [DuckDuckGo](#duckduckgo)
+ [SearXNG](#searxng)
+ [Search parameters](#search-parameters)
* [Search types](#search-types)
+ [Simple search](#simple-search)
+ [Full search](#full-search)
* [Keyword retrievers](#keyword-retrievers)
+ [Okapi BM25](#okapi-bm25)
+ [SPLADE](#splade)
* [Chunking Methods](#chunking-methods)
+ [Character-based Chunking](#character-based-chunking)
+ [Semantic Chunking](#semantic-chunking)
+ [Token Classification based Chunking](#token-classification-based-chunking)
* [Recommended models](#recommended-models)
## Installation
1. Go to the "Session" tab of the web UI and use "Install or update an extension"
to download the latest code for this extension.
2. Run the appropriate `update_wizard` script inside the text-generation-webui folder
and choose `Install/update extensions requirements`, then choose the name of this extension.
3. Launch the Web UI by running the appropriate `start` script and enable the extension under the session tab.
Alternatively,
you can also start the server directly using the following command (assuming you have activated your conda/virtual environment):
```python server.py --extension LLM_Web_search```
If the installation was successful and the extension was loaded, a new tab with the
title "Web Search" should be visible in the web UI.
See https://github.com/oobabooga/text-generation-webui/wiki/07-%E2%80%90-Extensions for more
information about extensions.
## Usage
### Native Tool Calling Mode
You can make this extension available as a tool by simply checking the "Add as tool when enabled" checkbox in the "Web Search" tab. Refresh the list of tools in the "Chat" tab if needed.
In native tool calling mode, the current date and time is provided to the model with each set of search results.
### Legacy Mode
Models that have not been trained with native tool calling can still be taught how to perform web searches via zero-shot learning, i.e., by prompting the model
to use a fixed search command (see `system_prompts/` for example prompts).
Search queries are then extracted from the model's output using a regular expression.
An example workflow of using this extension in legacy mode could be:
1. Load a model
2. Head over to the "Web Search" tab
3. Load a custom system message/prompt
4. Ensure that the query part of the command mentioned in the system message
can be matched using the current "Search command regex string"
(see "Using a custom regular expression" below)
5. Pick a generation parameter preset that works well for you. You can read more about generation parameters [here](https://github.com/oobabooga/text-generation-webui/wiki/03-%E2%80%90-Parameters-Tab#generation)
6. Choose "chat-inExcerpt of 9,268 characters
Read on GitHubWould you bet a product on this? Bounded 0–100 and slow moving.
matched fp:f37ffc34fb19f7c6, topic:llm, topic:gpt
matched fp:f37ffc34fb19f7c6, topic:faiss
matched fp:f37ffc34fb19f7c6, topic:rag
matched fp:f37ffc34fb19f7c6, topic:chatgpt