SearchPhi

Open source and AI-powered web search engine: local, private, dockerized and supported by a fluffy llamašŸ¦™

View the Project on GitHub AstraBert/SearchPhi

SearchPhi

Open source and AI-powered web search enginešŸŒ

GitHub top language GitHub commit activity Static Badge Static Badge Docker image size Static Badge
Logo

About SearchPhi

SearchPhi is a Streamlit application that aims to implement similar features to SearchGPT, but in an open-source, local and private way.

Installation and usage

Source code

  1. Clone the repository:
git clone https://github.com/AstraBert/SearchPhi.git
cd SearchPhi
  1. Create a model folder, download this GGUF file and move the GGUF file in the model folder:
mkdir model
mv /path/to/Downloads/Phi-3-mini-4k-instruct-q4.gguf model/
  1. Install necessary dependencies:
    • Linux:
      python3 -m venv /path/to/SearchPhi
      source /path/to/SearchPhi/bin/activate
      python3 -m pip install -r requirements.txt
      
    • Windows: ```bash python3 -m venv c:\path\to\SearchPhi c:\path\to\SearchPhi\Scripts\activate # For Command Prompt

      or

      c:\path\to\SearchPhi\Scripts\Activate.ps1 # For PowerShell

      or

      source c:\path\to\SearchPhi\Scripts\activate # For Git

python3 -m pip install -r requirements.txt



4. Run the application:

```bash
python3 -m streamlit run app.py

Youā€™ll see the application on http://localhost:8501.

PROs: You can customize the application code (change the GGUF model, change CPU/GPU settings, change generation kwargs, modify the app interfaceā€¦)

CONs: Longer and more complex installation process

Docker

  1. Pull the image
docker pull astrabert/searchphi:latest
  1. Run the container:
docker run -p 8501:8501 astrabert/searchphi:latest

Shortly after you submit the docker run command, the container logs will tell you that the application is up and running on http://localhost:8501.

PROs: Shorter and simpler installation process

CONs: You cannot customize the application code

Run in cloud

PROs: No local installation and you can exploit better hardwares

CONs: Limited resources

Usage note

āš ļø The Streamlit application was successfully developed and tested on a Windows 10.0.22631 machine, with 32GB RAM, 16 core CPU and Nvidia GEFORCE RTX4050 GPU (6GB, cuda version 12.3), python version 3.11.9

āš ļø The Docker container was successfully tested on a Windows 10.0.22631 machine and on a Ubuntu 22.04.3 machine

Although being at a good stage of development, the application is a beta and might still contain bugs and have OS/hardware/python version incompatibilities.

Demo

You can try out SearchPhi on this HuggingFace Space.

Hereā€™s a video demo of what it can do:

Video demo for SearechPhi

Contributions

Contributions are more than welcome! See contribution guidelines for more information :)

Funding

If you found this project useful, please consider to fund it and make it grow: letā€™s support open-source together!šŸ˜Š

License and rights of usage

This project is provided under MIT license: it will always be open-source and free to use.

If you use this project, please cite the author: Astra Clelia Bertelli