- Built-in support for LLM
- Built-in support for search engine
- Customizable pretty UI interface
- Shareable, cached search results
There are two default supported search engines: Bing and Google.
To use the Bing Web Search API, please visit this link to obtain your Bing subscription key.
You have three options for Google Search: you can use the SearchApi Google Search API from SearchApi, Serper Google Search API from Serper, or opt for the Programmable Search Engine provided by Google.
Note
We recommend using the built-in llm and kv functions with Lepton. Running the following commands to set up them automatically.
pip install -U leptonai openai && lep login
You can copy your workspace toke from the Lepton AI Dashboard → Settings → Tokens.
- Set Bing subscription key
export BING_SEARCH_V7_SUBSCRIPTION_KEY=YOUR_BING_SUBSCRIPTION_KEY
- Set Lepton AI workspace token
export LEPTON_WORKSPACE_TOKEN=YOUR_LEPTON_WORKSPACE_TOKEN
- Build web
cd web && npm install && npm run build
- Run server
BACKEND=BING python search_with_lepton.py
For Google Search using SearchApi:
export SEARCHAPI_API_KEY=YOUR_SEARCHAPI_API_KEY
BACKEND=SEARCHAPI python search_with_lepton.py
For Google Search using Serper:
export SERPER_SEARCH_API_KEY=YOUR_SERPER_API_KEY
BACKEND=SERPER python search_with_lepton.py
For Google Search using Programmable Search Engine:
export GOOGLE_SEARCH_API_KEY=YOUR_GOOGLE_SEARCH_API_KEY
export GOOGLE_SEARCH_CX=YOUR_GOOGLE_SEARCH_ENGINE_ID
BACKEND=GOOGLE python search_with_lepton.py
You can deploy this to Lepton AI with one click:
You can also deploy your own version via
lep photon run -n search-with-lepton-modified -m search_with_lepton.py --env BACKEND=BING --env BING_SEARCH_V7_SUBSCRIPTION_KEY=YOUR_BING_SUBSCRIPTION_KEY
Learn more about lep photon
here.
The following commands are available in the Makefile to help you set up and run the project:
-
make env
: Creates a new Python virtual environment in the.venv
directory. This helps to isolate the project dependencies from other Python projects on your system. -
make activate
: Activates the Python virtual environment created by themake env
command. This command should be run before executing any Python scripts to ensure that the correct dependencies are used. -
make install
: Installs the required Python packages listed inrequirements.txt
. This command is essential for setting up the environment with all necessary dependencies. -
make build
: Installs the necessary Node.js packages and builds the frontend application. This command should be run after making changes to the frontend code or when setting up the project for the first time. -
make ai
: Runs the main application scriptsearch_with_lepton.py
. This command starts the server for the conversational search engine. -
make clean
: Uninstalls all Python packages listed inrequirements.txt
. This command can be used to clean up the environment if needed.