Revert "Merge remote-tracking branch 'origin/master' into ollama-auth"
This reverts commit3631e537d4
, reversing changes made tob86cf3c315
.
This commit is contained in:
parent
3631e537d4
commit
d75f1c743e
|
@ -1,70 +0,0 @@
|
||||||
name: Build & Push Docker Images
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- master
|
|
||||||
release:
|
|
||||||
types: [published]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build-and-push:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
strategy:
|
|
||||||
matrix:
|
|
||||||
service: [backend, app]
|
|
||||||
steps:
|
|
||||||
- name: Checkout code
|
|
||||||
uses: actions/checkout@v3
|
|
||||||
|
|
||||||
- name: Set up Docker Buildx
|
|
||||||
uses: docker/setup-buildx-action@v2
|
|
||||||
with:
|
|
||||||
install: true
|
|
||||||
|
|
||||||
- name: Log in to DockerHub
|
|
||||||
uses: docker/login-action@v2
|
|
||||||
with:
|
|
||||||
username: ${{ secrets.DOCKER_USERNAME }}
|
|
||||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
|
||||||
|
|
||||||
- name: Extract version from release tag
|
|
||||||
if: github.event_name == 'release'
|
|
||||||
id: version
|
|
||||||
run: echo "RELEASE_VERSION=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV
|
|
||||||
|
|
||||||
- name: Build and push Docker image for ${{ matrix.service }}
|
|
||||||
if: github.ref == 'refs/heads/master' && github.event_name == 'push'
|
|
||||||
run: |
|
|
||||||
docker buildx create --use
|
|
||||||
if [[ "${{ matrix.service }}" == "backend" ]]; then \
|
|
||||||
DOCKERFILE=backend.dockerfile; \
|
|
||||||
IMAGE_NAME=perplexica-backend; \
|
|
||||||
else \
|
|
||||||
DOCKERFILE=app.dockerfile; \
|
|
||||||
IMAGE_NAME=perplexica-frontend; \
|
|
||||||
fi
|
|
||||||
docker buildx build --platform linux/amd64,linux/arm64 \
|
|
||||||
--cache-from=type=registry,ref=itzcrazykns1337/${IMAGE_NAME}:main \
|
|
||||||
--cache-to=type=inline \
|
|
||||||
-f $DOCKERFILE \
|
|
||||||
-t itzcrazykns1337/${IMAGE_NAME}:main \
|
|
||||||
--push .
|
|
||||||
|
|
||||||
- name: Build and push release Docker image for ${{ matrix.service }}
|
|
||||||
if: github.event_name == 'release'
|
|
||||||
run: |
|
|
||||||
docker buildx create --use
|
|
||||||
if [[ "${{ matrix.service }}" == "backend" ]]; then \
|
|
||||||
DOCKERFILE=backend.dockerfile; \
|
|
||||||
IMAGE_NAME=perplexica-backend; \
|
|
||||||
else \
|
|
||||||
DOCKERFILE=app.dockerfile; \
|
|
||||||
IMAGE_NAME=perplexica-frontend; \
|
|
||||||
fi
|
|
||||||
docker buildx build --platform linux/amd64,linux/arm64 \
|
|
||||||
--cache-from=type=registry,ref=itzcrazykns1337/${IMAGE_NAME}:${{ env.RELEASE_VERSION }} \
|
|
||||||
--cache-to=type=inline \
|
|
||||||
-f $DOCKERFILE \
|
|
||||||
-t itzcrazykns1337/${IMAGE_NAME}:${{ env.RELEASE_VERSION }} \
|
|
||||||
--push .
|
|
|
@ -36,4 +36,3 @@ Thumbs.db
|
||||||
|
|
||||||
# Db
|
# Db
|
||||||
db.sqlite
|
db.sqlite
|
||||||
/searxng
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
FROM node:alpine
|
FROM node:alpine
|
||||||
|
|
||||||
ARG NEXT_PUBLIC_WS_URL=ws://127.0.0.1:3001
|
ARG NEXT_PUBLIC_WS_URL
|
||||||
ARG NEXT_PUBLIC_API_URL=http://127.0.0.1:3001/api
|
ARG NEXT_PUBLIC_API_URL
|
||||||
ENV NEXT_PUBLIC_WS_URL=${NEXT_PUBLIC_WS_URL}
|
ENV NEXT_PUBLIC_WS_URL=${NEXT_PUBLIC_WS_URL}
|
||||||
ENV NEXT_PUBLIC_API_URL=${NEXT_PUBLIC_API_URL}
|
ENV NEXT_PUBLIC_API_URL=${NEXT_PUBLIC_API_URL}
|
||||||
|
|
||||||
|
@ -9,7 +9,7 @@ WORKDIR /home/perplexica
|
||||||
|
|
||||||
COPY ui /home/perplexica/
|
COPY ui /home/perplexica/
|
||||||
|
|
||||||
RUN yarn install --frozen-lockfile
|
RUN yarn install
|
||||||
RUN yarn build
|
RUN yarn build
|
||||||
|
|
||||||
CMD ["yarn", "start"]
|
CMD ["yarn", "start"]
|
|
@ -1,16 +1,20 @@
|
||||||
FROM node:slim
|
FROM node:slim
|
||||||
|
|
||||||
|
ARG SEARXNG_API_URL
|
||||||
|
ENV SEARXNG_API_URL=${SEARXNG_API_URL}
|
||||||
|
|
||||||
WORKDIR /home/perplexica
|
WORKDIR /home/perplexica
|
||||||
|
|
||||||
COPY src /home/perplexica/src
|
COPY src /home/perplexica/src
|
||||||
COPY tsconfig.json /home/perplexica/
|
COPY tsconfig.json /home/perplexica/
|
||||||
|
COPY config.toml /home/perplexica/
|
||||||
COPY drizzle.config.ts /home/perplexica/
|
COPY drizzle.config.ts /home/perplexica/
|
||||||
COPY package.json /home/perplexica/
|
COPY package.json /home/perplexica/
|
||||||
COPY yarn.lock /home/perplexica/
|
COPY yarn.lock /home/perplexica/
|
||||||
|
|
||||||
RUN mkdir /home/perplexica/data
|
RUN mkdir /home/perplexica/data
|
||||||
|
|
||||||
RUN yarn install --frozen-lockfile
|
RUN yarn install
|
||||||
RUN yarn build
|
RUN yarn build
|
||||||
|
|
||||||
CMD ["yarn", "start"]
|
CMD ["yarn", "start"]
|
|
@ -13,9 +13,8 @@ services:
|
||||||
build:
|
build:
|
||||||
context: .
|
context: .
|
||||||
dockerfile: backend.dockerfile
|
dockerfile: backend.dockerfile
|
||||||
image: itzcrazykns1337/perplexica-backend:main
|
args:
|
||||||
environment:
|
- SEARXNG_API_URL=http://searxng:8080
|
||||||
- SEARXNG_API_URL=http://searxng:8080
|
|
||||||
depends_on:
|
depends_on:
|
||||||
- searxng
|
- searxng
|
||||||
ports:
|
ports:
|
||||||
|
@ -36,7 +35,6 @@ services:
|
||||||
args:
|
args:
|
||||||
- NEXT_PUBLIC_API_URL=http://127.0.0.1:3001/api
|
- NEXT_PUBLIC_API_URL=http://127.0.0.1:3001/api
|
||||||
- NEXT_PUBLIC_WS_URL=ws://127.0.0.1:3001
|
- NEXT_PUBLIC_WS_URL=ws://127.0.0.1:3001
|
||||||
image: itzcrazykns1337/perplexica-frontend:main
|
|
||||||
depends_on:
|
depends_on:
|
||||||
- perplexica-backend
|
- perplexica-backend
|
||||||
ports:
|
ports:
|
||||||
|
|
|
@ -6,9 +6,7 @@ Perplexica’s Search API makes it easy to use our AI-powered search engine. You
|
||||||
|
|
||||||
## Endpoint
|
## Endpoint
|
||||||
|
|
||||||
### **POST** `http://localhost:3001/api/search`
|
### **POST** `/api/search`
|
||||||
|
|
||||||
**Note**: Replace `3001` with any other port if you've changed the default PORT
|
|
||||||
|
|
||||||
### Request
|
### Request
|
||||||
|
|
||||||
|
@ -28,16 +26,13 @@ The API accepts a JSON object in the request body, where you define the focus mo
|
||||||
},
|
},
|
||||||
"focusMode": "webSearch",
|
"focusMode": "webSearch",
|
||||||
"query": "What is Perplexica",
|
"query": "What is Perplexica",
|
||||||
"history": [
|
"history": []
|
||||||
["human", "Hi, how are you?"],
|
|
||||||
["assistant", "I am doing well, how can I help you today?"]
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
### Request Parameters
|
### Request Parameters
|
||||||
|
|
||||||
- **`chatModel`** (object, optional): Defines the chat model to be used for the query. For model details you can send a GET request at `http://localhost:3001/api/models`.
|
- **`chatModel`** (object, optional): Defines the chat model to be used for the query.
|
||||||
|
|
||||||
- `provider`: Specifies the provider for the chat model (e.g., `openai`, `ollama`).
|
- `provider`: Specifies the provider for the chat model (e.g., `openai`, `ollama`).
|
||||||
- `model`: The specific model from the chosen provider (e.g., `gpt-4o-mini`).
|
- `model`: The specific model from the chosen provider (e.g., `gpt-4o-mini`).
|
||||||
|
@ -45,7 +40,7 @@ The API accepts a JSON object in the request body, where you define the focus mo
|
||||||
- `customOpenAIBaseURL`: If you’re using a custom OpenAI instance, provide the base URL.
|
- `customOpenAIBaseURL`: If you’re using a custom OpenAI instance, provide the base URL.
|
||||||
- `customOpenAIKey`: The API key for a custom OpenAI instance.
|
- `customOpenAIKey`: The API key for a custom OpenAI instance.
|
||||||
|
|
||||||
- **`embeddingModel`** (object, optional): Defines the embedding model for similarity-based searching. For model details you can send a GET request at `http://localhost:3001/api/models`.
|
- **`embeddingModel`** (object, optional): Defines the embedding model for similarity-based searching.
|
||||||
|
|
||||||
- `provider`: The provider for the embedding model (e.g., `openai`).
|
- `provider`: The provider for the embedding model (e.g., `openai`).
|
||||||
- `model`: The specific embedding model (e.g., `text-embedding-3-large`).
|
- `model`: The specific embedding model (e.g., `text-embedding-3-large`).
|
||||||
|
|
|
@ -10,21 +10,15 @@ To update Perplexica to the latest version, follow these steps:
|
||||||
git clone https://github.com/ItzCrazyKns/Perplexica.git
|
git clone https://github.com/ItzCrazyKns/Perplexica.git
|
||||||
```
|
```
|
||||||
|
|
||||||
2. Navigate to the Project Directory.
|
2. Navigate to the Project Directory
|
||||||
|
|
||||||
3. Pull latest images from registry.
|
3. Update and Rebuild Docker Containers:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker compose pull
|
docker compose up -d --build
|
||||||
```
|
```
|
||||||
|
|
||||||
4. Update and Recreate containers.
|
4. Once the command completes running go to http://localhost:3000 and verify the latest changes.
|
||||||
|
|
||||||
```bash
|
|
||||||
docker compose up -d
|
|
||||||
```
|
|
||||||
|
|
||||||
5. Once the command completes running go to http://localhost:3000 and verify the latest changes.
|
|
||||||
|
|
||||||
## For non Docker users
|
## For non Docker users
|
||||||
|
|
||||||
|
|
|
@ -9,45 +9,6 @@ export const loadGroqChatModels = async () => {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const chatModels = {
|
const chatModels = {
|
||||||
'llama-3.2-3b-preview': {
|
|
||||||
displayName: 'Llama 3.2 3B',
|
|
||||||
model: new ChatOpenAI(
|
|
||||||
{
|
|
||||||
openAIApiKey: groqApiKey,
|
|
||||||
modelName: 'llama-3.2-3b-preview',
|
|
||||||
temperature: 0.7,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
baseURL: 'https://api.groq.com/openai/v1',
|
|
||||||
},
|
|
||||||
),
|
|
||||||
},
|
|
||||||
'llama-3.2-11b-text-preview': {
|
|
||||||
displayName: 'Llama 3.2 11B Text',
|
|
||||||
model: new ChatOpenAI(
|
|
||||||
{
|
|
||||||
openAIApiKey: groqApiKey,
|
|
||||||
modelName: 'llama-3.2-11b-text-preview',
|
|
||||||
temperature: 0.7,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
baseURL: 'https://api.groq.com/openai/v1',
|
|
||||||
},
|
|
||||||
),
|
|
||||||
},
|
|
||||||
'llama-3.2-90b-text-preview': {
|
|
||||||
displayName: 'Llama 3.2 90B Text',
|
|
||||||
model: new ChatOpenAI(
|
|
||||||
{
|
|
||||||
openAIApiKey: groqApiKey,
|
|
||||||
modelName: 'llama-3.2-90b-text-preview',
|
|
||||||
temperature: 0.7,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
baseURL: 'https://api.groq.com/openai/v1',
|
|
||||||
},
|
|
||||||
),
|
|
||||||
},
|
|
||||||
'llama-3.1-70b-versatile': {
|
'llama-3.1-70b-versatile': {
|
||||||
displayName: 'Llama 3.1 70B',
|
displayName: 'Llama 3.1 70B',
|
||||||
model: new ChatOpenAI(
|
model: new ChatOpenAI(
|
||||||
|
|
Loading…
Reference in New Issue