Jonathan Poisson
6dabecc3ee
feat: add Prometheus support to Tabby. ( #838 )
...
* Added Prometheus support to Tabby.
1) Added `axum-prometheus` to Cargo.toml
2) Added `metrics.rs` as a simple route to produce a metrics endpoint with prometheus-formatted events
3) Added `/v1/metrics` endpoint with API doc entry
4) Added the `PrometheusLayer` to the root layers.
This change effectively allows for external Prometheus to scrape metrics from Tabby during execution in order to monitor operations (resources, timings and overall usage).
* changed application/text to text/plain to adhere to rfc1341
* Update Makefile
* Update Makefile
* Update Makefile
* Update Makefile
* Update Makefile
* Update Makefile
* - Reworked code to fit upstream changes
- Added Prometheus layer and handle to worker.rs
* Update CHANGELOG.md
* [autofix.ci] apply automated fixes
* Simplified worker metrics route definition
* [autofix.ci] apply automated fixes
* [autofix.ci] apply automated fixes (attempt 2/3)
---------
Co-authored-by: Meng Zhang <meng@tabbyml.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2023-11-19 15:40:57 -08:00
Meng Zhang
b56ad6eda9
fix: cors / otlp should be applied on all serve endpoints ( #839 )
2023-11-19 21:47:23 +00:00
Meng Zhang
a12f741565
feat: use remote code search in workers ( #833 )
...
* refactor: lift tabby::api::code to tabby_common::api::code
* feat: use remote code search in workers
* update
* handle errors
2023-11-18 23:45:00 +00:00
Meng Zhang
b862d9d100
feat: support worker events logging ( #831 )
...
* refactor: lift tabby::api::event to tabby_common::api::event
* feat: allow worker write logs to webserver::api::Hub service
* refactor: implement RawEventLogger on HubClient directly
* fix: build context in request's scope
2023-11-18 23:17:54 +00:00
Meng Zhang
530e142d63
fix: keep only direct dependency, clean up path ( #827 )
2023-11-18 08:50:16 +00:00
Meng Zhang
1fe0922c72
feat: implement basic dependency detection for python / rust ( #825 )
...
* refactor: extract tags mod for dataset.rs
* feat: implement basic dependency detection for python / rust
2023-11-18 08:05:48 +00:00
Eric
fcfa13136a
fix: move db path, fix compile error ( #820 )
2023-11-17 18:08:07 -08:00
Meng Zhang
25621547a7
feat: make --model optional, so user can start a chat only instance ( #817 )
2023-11-17 22:35:58 +00:00
Eric
ce338c7436
feat: validate token during worker registration ( #803 )
...
* feat: validate token during worker registration
* [autofix.ci] apply automated fixes
* [autofix.ci] apply automated fixes (attempt 2/3)
* resolve comments
* reslove comments
* format file, update schema file
* resolve comment
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2023-11-16 23:05:39 -08:00
Meng Zhang
d0c9b56467
fix: chat model loading is wrongly distributed to --model ( #801 )
2023-11-16 03:35:12 +00:00
Meng Zhang
d41942975d
feat: match local model directory to MODEL_SPEC.md ( #800 )
2023-11-16 03:33:38 +00:00
Meng Zhang
abe0411f03
feat: add ee feature flag to distinguish the OSS and EE offering ( #789 )
...
* feat: add ee feature flag to distinguish the OSS offering and EE augmented offering
* [autofix.ci] apply automated fixes
* fix lint
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2023-11-14 16:15:15 -08:00
Meng Zhang
bd072d8fb9
feat(ui): always display chat api endpoints in swagger doc ( #784 )
2023-11-14 21:10:41 +00:00
Meng Zhang
618009373b
refactor: use tarpc for easier worker <-> hub communication ( #781 )
...
* temp
* generic
* adapt client
* rename to api
* Revert "rename to api"
This reverts commit 8a51b24fecd76a78e6df576ec51605b8d8418975.
* refactor: remove uselss mutation
* remove useless connection
* cleanup api structure
* restructure
* add webserver api error
* webserver.rs -> server.rs
* rename service to Hub
* update schema
* update naming
* shrink features
* update
* mv worker.rs -> server/worker.rs
2023-11-14 12:48:20 -08:00
Meng Zhang
e521f0637c
feat: add worker command worker::completion and worker::chat ( #778 )
2023-11-13 23:21:57 +00:00
Maciej
ebbe6e5af8
fix: helpful message when llama.cpp submodule is not present ( #719 ) ( #775 )
2023-11-13 07:51:46 +00:00
Meng Zhang
e0017cadec
refactor: extract routes/ to share routes between commands ( #774 )
...
* refactor: extract routes/ to share routes between commands
* refactor: extract events api
* extract EventLogger service
* lift api into sub packages
* services completions -> completion
* remove useless code
* fix test
2023-11-13 06:24:20 +00:00
Meng Zhang
bad87a99a2
refactor: serve/engine.rs => services/model.rs
2023-11-12 20:41:15 -08:00
Meng Zhang
4359b0cc4b
refactor: extract CompletionState -> CompletionService ( #773 )
...
* refactor: extract CompletionState -> CompletionService
* fix comment
* Update README.md
cmake is preinstalled in ubuntu / debian
* fix compile error
* format files
* format files
---------
Co-authored-by: darknight <illuminating.me@gmail.com>
2023-11-12 16:14:58 -08:00
Meng Zhang
febfa18e4a
refactor: move code api to tabby/serve ( #771 )
2023-11-12 22:58:15 +00:00
Meng Zhang
3a9b4d9ef5
feat: add graphql interface to tabby-webserver ( #770 )
...
feat: add graphql interface to tabby-webserver
2023-11-12 14:52:28 -08:00
Meng Zhang
17db8a2950
refactor: use unwrap_or_default as suggested by clippy nightly
2023-11-12 13:48:55 -08:00
Meng Zhang
15f768a971
feat: add tabby-webserver as distribution layer of tabby #769
2023-11-12 13:07:07 -08:00
Meng Zhang
d7180ec7b9
fix: remove useless hyper-reverse-proxy
2023-11-11 14:42:57 -08:00
Meng Zhang
8e58ff4003
refactor: move chat.rs to services/ rename search.rs -> code.rs
2023-11-11 14:42:57 -08:00
Meng Zhang
4069fe735f
refactor: remove useless route check for playground
2023-11-11 14:42:57 -08:00
Meng Zhang
7695a667bb
refactor: move tabby/src/search.rs -> tabby/src/services/search.rs
2023-11-11 14:42:57 -08:00
Meng Zhang
fce94f622b
refactor: use Arc<dyn TextGeneration> and Arc<dyn CodeSearch>
2023-11-11 14:42:57 -08:00
Eric
22592374c1
refactor: add experimental-http feature ( #750 )
...
* add experimental-http feature, update code
* refactor: add experimental-http feature
2023-11-11 17:50:16 +00:00
Meng Zhang
41f60d3204
refactor(code): extract `search_in_language` ( #762 )
...
* chore: init tabby-webserver
* add code search worker registry
* add webserver command
* add graphql
* extract schema
* refactor: extract registry.rs
* refactor
* update
* update
* update
* update
* update
* fix lint
2023-11-10 17:29:50 -08:00
Meng Zhang
9380da130e
fix: fix tests
2023-11-10 14:57:15 -08:00
Meng Zhang
4068d6e81d
refactor: extract BoxCodeSearch as interface to CodeSearch ( #756 )
2023-11-10 22:55:51 +00:00
Meng Zhang
73a76a3d8e
feat(scheduler): add a tqdm bar for scheduler job to better present the remaining time. ( #754 )
...
* feat(scheduler): add a tqdm bar for scheduler job to better present the
remaining time.
* update
* add changelog
2023-11-10 19:52:07 +00:00
Meng Zhang
3600ef77fc
fix: clippy warnings in CodeSearchSchema
2023-11-10 11:48:52 -08:00
Meng Zhang
27ed9c2cc4
fix: tantivy requires more memory for indexing in new version. ( #753 )
2023-11-10 11:41:50 -08:00
Meng Zhang
b510f61aca
refactor: extract tabby_common::api::code / tabby_common::index::CodeSearchSchema ( #743 )
...
* refactor: extract tabby_common::api::code
mark CodeSearch being Send + Sync
* extract CodeSearchSchema
2023-11-10 10:11:13 -08:00
Erfan Safari
138b7459c5
feat: add LLAMA_CPP_N_THREADS env ( #742 )
...
* feat: add LLAMA_CPP_N_THREADS and LLAMA_CPP_N_THREADS_BATCH envs
* apply format
* improve: use LLAMA_CPP_N_THREADS for both n_threads and n_threads_batch
* Update crates/llama-cpp-bindings/src/engine.cc
---------
Co-authored-by: Meng Zhang <meng@tabbyml.com>
2023-11-09 19:54:23 +00:00
Meng Zhang
8c669dee8e
fix: llama.cpp queuing logic ( #741 )
2023-11-09 08:29:54 +00:00
Meng Zhang
03ff80efdb
feat: update tabby-ui
2023-11-08 16:07:39 -08:00
Meng Zhang
cde3602877
feat: sync llama.cpp to latest
2023-11-08 16:06:09 -08:00
Meng Zhang
b51520062a
refactor: extract ChatState -> ChatService ( #730 )
2023-11-08 22:12:29 +00:00
Meng Zhang
72d1d9f0bb
refactor: extract IndexServer into CodeSearchService ( #728 )
...
* refactor: extract IndexServer into CodeSearchService
* refactor: make CodeSearchService interface to be async
2023-11-08 21:42:03 +00:00
Meng Zhang
8ab35b2639
feat: add --parallelism to control throughput and vram usage ( #727 )
...
* feat: add --parallelism to control throughput and vram usage
* update default
* Revert "update default"
This reverts commit 349792c0d48d913dcd8be4ce1c9d7ce887918f29.
* cargo fmt
2023-11-08 18:31:22 +00:00
leiwen83
3fb8445747
feat: supports java ( #715 )
...
* feat: add java language configuration
* feat: add java repository context support
* Update programming-languages.md
* added rev to tree-sitter-java
Signed-off-by: Lei Wen <wenlei03@qiyi.com>
Co-authored-by: Lei Wen <wenlei03@qiyi.com>
2023-11-07 23:59:00 -08:00
Meng Zhang
1ad0d39903
fix: deadlock between background job and requests ( #720 )
...
* fix: deadlock between background job and requests
* refactor: extract LlamaService
2023-11-07 13:11:28 -08:00
Meng Zhang
3c3b14c9f5
fix: cuda serialization
2023-11-07 00:55:38 -08:00
Meng Zhang
ca52ac4b01
fix: support cpu only run in llama.cpp cuda build
2023-11-06 22:59:24 -08:00
Meng Zhang
eb7ae96157
fix: llama.cpp requires kv cache to be N_CTX * parallelism ( #714 )
2023-11-07 06:16:36 +00:00
Meng Zhang
9344c32b31
fix: when there's an error happens in background inference loop, it should exit the process ( #713 )
2023-11-06 20:41:49 +00:00
Meng Zhang
00e0c4fddc
chore: add machete check to ensure no unused dependencies ( #701 )
...
* refactor: remove useless dependencies
* add machete
2023-11-05 02:48:05 +00:00