VexaSearch is a simple AI-powered search application designed to determine the actions to perform based on a function call.
Currently, the application is able to perform the following tasks:
- Generate images
- Search the internet
- Retrieve information about a specific URL
- firefunction-v1 (for function calls)
- Mixtral for text generation
- stable-diffusion-xl-1024-v1-0 (for image generation)
- nomic-ai/nomic-embed-text-v1.5 (for RAG)
- Supabase account
- Firework account
- Google Custom Search Engine API key and Search Engine ID
- Bing Search API key
-
Create a new project on Supabase
-
Create a
Search
table with the following columns:
id
(Primary Key)response
(Text)links
(Text Array)query
(Text)slug
(Text)created_at
(Timestamp)
CREATE TABLE Search (
id SERIAL PRIMARY KEY,
response TEXT,
links TEXT[],
query TEXT,
slug TEXT,
created_at TIMESTAMP DEFAULT now()
);
- Create a
Query
table with the following columns:
id
(Primary Key)query
(Text)slug
(Text)
CREATE TABLE Query (
id SERIAL PRIMARY KEY,
query TEXT,
slug TEXT
);
- Clone the repository
git clone https://github.com/n4ze3m/vexasearch.git
- Copy the
.env.example
file to.env
and fill in the required information
cp .env.example .env
- Open the
.env
file and fill in the required information
- Install the required packages
npm install
- Start the application
npm run dev
This will start the application on http://localhost:3000
or you can start the application using Docker
docker-compose up
This will start the application on http://localhost:3000
If you like the project and want to support it, you can buy me a coffee. It will help me to keep working on the project.