Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move lantern_extras to lantern repo #339

Merged
merged 281 commits into from
Oct 9, 2024
Merged

Move lantern_extras to lantern repo #339

merged 281 commits into from
Oct 9, 2024

Conversation

var77
Copy link
Collaborator

@var77 var77 commented Oct 8, 2024

No description provided.

var77 added 30 commits October 30, 2023 16:29
* Add lantern-cli daemon mode

* Add memory optimizations and comment code

* Add Dockerfile for cli

* Add logger, add task id when logging

* Fix db exporter

* Fix logger.warn

* Update README add logger in create index

* Add dockerfile for CUDA

* Add print_raw method for logger

* Update onnxruntime version in README

* Update GPU dockerfile

* Update README for docker usage

* Add update listener, continous embedding generation, startup checks

* Fix startup query

* Optimize tokenizer

* Implement stop handler, optimize code, make fault tolerant

* Remove unnecessary clones on references

* Set data path based on OS

* Add restarts on connection loss

* Implement row locking and batching for client table inserts

* Rename client to client_jobs

* Check write permission on target table, add streaming option in embeddings

* Send pending jobs only to update channel

* Fix model column name typo

* Fix startup job init

* Fix init_finished_at update on startup

* Add comment

* Change gh runner ubuntu version

* Update versions and README

* Fix updates for rows with non-numeric ids

* Update BERT large model to v1.5

* Add more BERT models

* Make tokenizer and inputs for bert model dynamic
* Add docker publish action for CLI

* Optimize dockerfiles
* Better handle sql quotting, update README for docker run

* Bump cli version
* Skip column creation if specified, check permissions from grants, improve error logging for client task

* Add schema name to table permission check
* Fix handling names for client identifier

* Update cli version
* - Create lock table in lantern schema
- Hash client trigger function and trigger names so they won't exceed the character limit

* Bump cli version
* Make row locking non-blocking

* Remove unnecessary deref
* Add command to measure model generation speed

* Fix GPU memory leak, merge process_text and process_image into one function

* Add min/max/avg speeds

* Update min time for test

* Update version
* Fix data_producer deadloc, remove unwraps

* Bump versions
* Index autotune WIP

* Add import functionality for lantern index

* add index autotune to cli

* Update README
* Check memory usage before running model. references #26

* Fix checks for GPU #26

* Add info message #26

* Print more informative error messages

* Bump version

* Refactor naming

* Fix return type

* Bump versions
* Fix find_bes_variant, add comments, add existing result reuse functionality

* Refactor daemon, add autotune to daemon

* Make float to 2 decimal points, change internal schema name

* Bump version
* Remove index file from file system

* Bump version

* Use index params when importing external inedx
…ansaction with lock (#49)

* Add _lantern_reindex_external_index, lantern_create_external_index functions and make index creation in one transaction with lock

* Check column dimension while creating index #19

* Remove regex package
…51)

* Cancel running embedding job with tokio tasks

* Gracefully exit ongoing embedding job if the job is canceled from db

* Delete collected insert rows on job cancel
* Fix column names for index autotune

* Try to reduce memory usage on index creation

* Drop variables as soon as they are not needed anymore

* Drop values outside and remove unnecessary cursor close statement

* Change internal schema name
* Add external index jobs, refactor codes, add cancel handlers for all jobs

* Fix progress tracking for external index

* Added tests for daemon
* Added CI tests

* Fix lantern build

* Fix cargo path

* Skip pgrx tests

* Optimize tests
* Fix sample size to take from test table count

* Fix data type
Copy link

github-actions bot commented Oct 8, 2024

Benchmarks

metric old new pct change
recall (after create) 0.952 0.950 -0.21%
recall (after insert) 0.000 0.000 -
select tps 23737.698 26373.626 +11.10%
select bulk(100) tps 35.389 34.115 -3.60%
select latency (ms) 0.837 ± 1.783𝜎 0.722 ± 1.437𝜎 -13.74%
select bulk(100) latency (ms) 866.247 ± 112.589𝜎 911.508 ± 148.490𝜎 +5.22%
create latency (ms) 395466.232 408962.859 +3.41%
insert tps 465.338 480.187 +3.19%
insert bulk(100) tps 5.015 5.050 +0.68%
insert latency (ms) 68.166 ± 15.101𝜎 65.800 ± 13.093𝜎 -3.47%
insert bulk(100) latency (ms) 6233.738 ± 136.212𝜎 6209.783 ± 120.369𝜎 -0.38%
disk usage (bytes) 8192008192.000 8192008192.000 -

fix test action on CI

fix paths in CI scripts

update ubuntu version for extras runner

fix workflow syntax

fix test workflow

update version, fix test_updates script

fix pgvector build

fix update script for new version

fix onnx installation on arm instances
@var77 var77 force-pushed the varik/merge-lantern-extras branch from 05bfa68 to 19ff9c1 Compare October 8, 2024 16:18
@var77 var77 marked this pull request as ready for review October 8, 2024 16:19
@var77 var77 requested review from Ngalstyan4 and dqii October 8, 2024 16:22
@var77 var77 changed the title Merge lantern extras Move lantern_extras to lantern repo Oct 8, 2024
@var77 var77 merged commit 2f7f42c into main Oct 9, 2024
55 of 58 checks passed
@var77 var77 deleted the varik/merge-lantern-extras branch October 9, 2024 15:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants