126 lines
2.3 KiB
Markdown
126 lines
2.3 KiB
Markdown
# Perplexica Web Reasearch AI
|
|
|
|
## Preperation
|
|
```
|
|
apt update && apt upgrade -y
|
|
apt install docker.io docker-compose git -y
|
|
```
|
|
|
|
## Download The Project
|
|
```
|
|
git clone https://github.com/ItzCrazyKns/Perplexica
|
|
cd Perplexica
|
|
mv sample.config.toml config.toml
|
|
mv .env.example .env
|
|
nano config.toml
|
|
```
|
|
|
|
### Edit config.toml
|
|
run the following command
|
|
```
|
|
nano config.toml
|
|
```
|
|
make sure it looks like the following
|
|
```yaml
|
|
[GENERAL]
|
|
SIMILARITY_MEASURE = "cosine"
|
|
KEEP_ALIVE = "5m"
|
|
|
|
[MODELS.OPENAI]
|
|
API_KEY = ""
|
|
|
|
[MODELS.GROQ]
|
|
API_KEY = ""
|
|
|
|
[MODELS.ANTHROPIC]
|
|
API_KEY = ""
|
|
|
|
[MODELS.GEMINI]
|
|
API_KEY = ""
|
|
|
|
[MODELS.CUSTOM_OPENAI]
|
|
API_KEY = ""
|
|
API_URL = ""
|
|
MODEL_NAME = ""
|
|
|
|
[MODELS.OLLAMA]
|
|
API_URL = "http://ollama:11434"
|
|
|
|
[API_ENDPOINTS]
|
|
SEARXNG = "http://searxng:8080"
|
|
|
|
```
|
|
|
|
### Edit The Docker Compose File
|
|
run the following command
|
|
```
|
|
nano docker-compose.yaml
|
|
```
|
|
Make Sure It Looks Like The following
|
|
```yaml
|
|
services:
|
|
searxng:
|
|
image: docker.io/searxng/searxng:latest
|
|
volumes:
|
|
- ./searxng:/etc/searxng:rw
|
|
ports:
|
|
- 4000:8080
|
|
networks:
|
|
- perplexica-network
|
|
restart: unless-stopped
|
|
|
|
ollama:
|
|
image: ollama/ollama:latest
|
|
ports:
|
|
- "11434:11434"
|
|
volumes:
|
|
- ollama_data:/root/.ollama
|
|
deploy:
|
|
resources:
|
|
reservations:
|
|
devices:
|
|
- driver: nvidia
|
|
count: all
|
|
capabilities: [gpu]
|
|
environment:
|
|
- OLLAMA_HOST=0.0.0.0:11434
|
|
networks:
|
|
- perplexica-network
|
|
restart: unless-stopped
|
|
|
|
app:
|
|
image: itzcrazykns1337/perplexica:main
|
|
build:
|
|
context: .
|
|
dockerfile: app.dockerfile
|
|
environment:
|
|
- SEARXNG_API_URL=http://searxng:8080
|
|
- OLLAMA_API_URL=http://ollama:11434 # Added Ollama API URL
|
|
ports:
|
|
- 3000:3000
|
|
networks:
|
|
- perplexica-network
|
|
volumes:
|
|
- backend-dbstore:/home/perplexica/data
|
|
- uploads:/home/perplexica/uploads
|
|
- ./config.toml:/home/perplexica/config.toml
|
|
depends_on:
|
|
- ollama #Ensure ollama is started first
|
|
restart: unless-stopped
|
|
|
|
networks:
|
|
perplexica-network:
|
|
|
|
volumes:
|
|
backend-dbstore:
|
|
uploads:
|
|
ollama_data: # Add ollama volume so it does not get lost
|
|
```
|
|
|
|
## Finally - Execute Docker Compose
|
|
|
|
run the following command
|
|
```
|
|
docker-compose down && docker-compose up --build -d
|
|
```
|