blakeblackshear.frigate/web
Josh Hawkins 24ac9f3e5a
Use sqlite-vec extension instead of chromadb for embeddings (#14163)
* swap sqlite_vec for chroma in requirements

* load sqlite_vec in embeddings manager

* remove chroma and revamp Embeddings class for sqlite_vec

* manual minilm onnx inference

* remove chroma in clip model

* migrate api from chroma to sqlite_vec

* migrate event cleanup from chroma to sqlite_vec

* migrate embedding maintainer from chroma to sqlite_vec

* genai description for sqlite_vec

* load sqlite_vec in main thread db

* extend the SqliteQueueDatabase class and use peewee db.execute_sql

* search with Event type for similarity

* fix similarity search

* install and add comment about transformers

* fix normalization

* add id filter

* clean up

* clean up

* fully remove chroma and add transformers env var

* readd uvicorn for fastapi

* readd tokenizer parallelism env var

* remove chroma from docs

* remove chroma from UI

* try removing custom pysqlite3 build

* hard code limit

* optimize queries

* revert explore query

* fix query

* keep building pysqlite3

* single pass fetch and process

* remove unnecessary re-embed

* update deps

* move SqliteVecQueueDatabase to db directory

* make search thumbnail take up full size of results box

* improve typing

* improve model downloading and add status screen

* daemon downloading thread

* catch case when semantic search is disabled

* fix typing

* build sqlite_vec from source

* resolve conflict

* file permissions

* try build deps

* remove sources

* sources

* fix thread start

* include git in build

* reorder embeddings after detectors are started

* build with sqlite amalgamation

* non-platform specific

* use wget instead of curl

* remove unzip -d

* remove sqlite_vec from requirements and load the compiled version

* fix build

* avoid race in db connection

* add scale_factor and bias to description zscore normalization
2024-10-07 14:30:45 -06:00
..
.vscode Update web readme (#12062) 2024-06-19 08:11:51 -06:00
images
public Formatting improvements (#13765) 2024-09-17 07:39:44 -05:00
src Use sqlite-vec extension instead of chromadb for embeddings (#14163) 2024-10-07 14:30:45 -06:00
themes Theme updates (#12373) 2024-07-10 07:04:02 -05:00
.eslintrc.cjs
.gitignore
.prettierrc
components.json
index.html
login.html
package-lock.json Improved search input (#13815) 2024-09-18 12:18:16 -06:00
package.json Improved search input (#13815) 2024-09-18 12:18:16 -06:00
postcss.config.js
README.md Update web readme (#12062) 2024-06-19 08:11:51 -06:00
site.webmanifest Implement support for notifications (#12523) 2024-08-29 20:19:50 -06:00
tailwind.config.js Theme updates (#12373) 2024-07-10 07:04:02 -05:00
tsconfig.json
tsconfig.node.json
vite.config.ts

This is the Frigate frontend which connects to and provides a User Interface to the Python backend.

Web Development

Installing Web Dependencies Via NPM

Within /web, run:

npm install

Running development frontend

Within /web, run:

PROXY_HOST=<ip_address:port> npm run dev

The Proxy Host can point to your existing Frigate instance. Otherwise defaults to localhost:5000 if running Frigate on the same machine.

Extensions

Install these IDE extensions for an improved development experience:

  • eslint