Commit Graph

65 Commits

Author SHA1 Message Date
Meng Zhang
382d308b16
refactor(webserver): move refresh token renew logic to db (#1612)
* refactor(webserver): move refresh token renew logic to db

* update

* [autofix.ci] apply automated fixes

* update

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-03-05 19:20:38 -08:00
boxbeam
b053d28a41
feat(webserver): Add sendTestEmail GraphQL endpoint (#1448)
* feat(webserver): Add sendTestEmail GraphQL endpoint

* Make test email a template, refactor templates

* Adjust templates

* Add test for test email

* Cleanup tests

* Change template format

* Make serial_test a workspace dep

* Fix whitespace in test email
2024-02-13 20:24:37 +00:00
Meng Zhang
4ec8b391d4
refactor: extract RepositoryAccess to abstract out scheduler reading (from config / database) (#1388)
* hide all enterprise commands

* refactor(scheduler): extract RepositoryAccess for scheduler

* ensure community build always success

* remove scheduler related code
2024-02-06 02:02:32 +00:00
Meng Zhang
9f5ebf2d68 Release 0.9.0-dev
aim-downloader@0.9.0-dev
http-api-bindings@0.9.0-dev
juniper-axum@0.9.0-dev
llama-cpp-bindings@0.9.0-dev
tabby@0.9.0-dev
tabby-common@0.9.0-dev
tabby-db@0.9.0-dev
tabby-download@0.9.0-dev
tabby-inference@0.9.0-dev
tabby-scheduler@0.9.0-dev
tabby-webserver@0.9.0-dev

Generated by cargo-workspaces
2024-02-05 15:39:33 -08:00
Meng Zhang
9a0e8d3284
feat(http): support openai /v1/completions streaming interface (#1373)
* switch goldentest streaming

* support streaming in openai
2024-02-03 22:05:48 -08:00
Meng Zhang
d4f36a565e Release 0.8.0
aim-downloader@0.8.0
http-api-bindings@0.8.0
juniper-axum@0.8.0
llama-cpp-bindings@0.8.0
tabby@0.8.0
tabby-common@0.8.0
tabby-db@0.8.0
tabby-download@0.8.0
tabby-inference@0.8.0
tabby-scheduler@0.8.0
tabby-webserver@0.8.0

Generated by cargo-workspaces
2024-02-02 12:02:25 -08:00
Meng Zhang
c16b704b37 Release 0.8.0-rc.1
aim-downloader@0.8.0-rc.1
http-api-bindings@0.8.0-rc.1
juniper-axum@0.8.0-rc.1
llama-cpp-bindings@0.8.0-rc.1
tabby@0.8.0-rc.1
tabby-common@0.8.0-rc.1
tabby-db@0.8.0-rc.1
tabby-download@0.8.0-rc.1
tabby-inference@0.8.0-rc.1
tabby-scheduler@0.8.0-rc.1
tabby-webserver@0.8.0-rc.1

Generated by cargo-workspaces
2024-01-31 00:07:46 -08:00
Meng Zhang
94486af9ef Release 0.8.0-rc.0
aim-downloader@0.8.0-rc.0
http-api-bindings@0.8.0-rc.0
juniper-axum@0.8.0-rc.0
llama-cpp-bindings@0.8.0-rc.0
tabby@0.8.0-rc.0
tabby-common@0.8.0-rc.0
tabby-db@0.8.0-rc.0
tabby-download@0.8.0-rc.0
tabby-inference@0.8.0-rc.0
tabby-scheduler@0.8.0-rc.0
tabby-webserver@0.8.0-rc.0

Generated by cargo-workspaces
2024-01-26 09:25:04 -08:00
boxbeam
e9f7e9043b
feat(webserver): Enable auto refresh of repository config (#1273)
* feat(webserver): Enable auto refresh of repository config

* [autofix.ci] apply automated fixes

* Get rid of job hooks

* Reload using cron job

* Fix compiler errors

* Finish refactor

* Move list of RepositoryConfig to RepositoryCache

* Make ResolveState a type alias

* Make repositories() on RepositoryCache private

* Don't expose configured_repositories

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-01-24 12:09:28 -08:00
Meng Zhang
57d7bd720e
refactor(db): extract ee/tabby-db (#1141)
* refactor(db): extract tabby-db

* add tabby-db

* refactor: extract uuid package to workspace

* refactor: move is_admin_initialized unit test to auth.rs

* remove services/db

* fix workspace deps

* fix deps
2023-12-29 17:20:36 +08:00
Meng Zhang
cb5c6fcae1 Merge branch 'r0.7' into release-070 2023-12-15 13:52:13 +08:00
Meng Zhang
c3db6d829f Release 0.7.0
aim-downloader@0.7.0
http-api-bindings@0.7.0
juniper-axum@0.7.0
llama-cpp-bindings@0.7.0
tabby@0.7.0
tabby-common@0.7.0
tabby-download@0.7.0
tabby-inference@0.7.0
tabby-scheduler@0.7.0
tabby-webserver@0.7.0

Generated by cargo-workspaces
2023-12-15 13:46:57 +08:00
Meng Zhang
b268ffddc5 Release 0.7.0-rc.4
aim-downloader@0.7.0-rc.4
http-api-bindings@0.7.0-rc.4
juniper-axum@0.7.0-rc.4
llama-cpp-bindings@0.7.0-rc.4
tabby@0.7.0-rc.4
tabby-common@0.7.0-rc.4
tabby-download@0.7.0-rc.4
tabby-inference@0.7.0-rc.4
tabby-scheduler@0.7.0-rc.4
tabby-webserver@0.7.0-rc.4

Generated by cargo-workspaces
2023-12-15 12:15:22 +08:00
Meng Zhang
fa8bd67d48 Release 0.7.0-rc.3
aim-downloader@0.7.0-rc.3
http-api-bindings@0.7.0-rc.3
juniper-axum@0.7.0-rc.3
llama-cpp-bindings@0.7.0-rc.3
tabby@0.7.0-rc.3
tabby-common@0.7.0-rc.3
tabby-download@0.7.0-rc.3
tabby-inference@0.7.0-rc.3
tabby-scheduler@0.7.0-rc.3
tabby-webserver@0.7.0-rc.3

Generated by cargo-workspaces
2023-12-14 23:46:08 +08:00
Meng Zhang
fe789dbbe5 Release 0.7.0-rc.2
aim-downloader@0.7.0-rc.2
http-api-bindings@0.7.0-rc.2
juniper-axum@0.7.0-rc.2
llama-cpp-bindings@0.7.0-rc.2
tabby@0.7.0-rc.2
tabby-common@0.7.0-rc.2
tabby-download@0.7.0-rc.2
tabby-inference@0.7.0-rc.2
tabby-scheduler@0.7.0-rc.2
tabby-webserver@0.7.0-rc.2

Generated by cargo-workspaces
2023-12-14 11:02:04 +08:00
Meng Zhang
b2a92f1cf7
test(golden): switch to cargo-insta for better developer experience (#1018) 2023-12-11 04:40:41 +00:00
Meng Zhang
a90db708dd Release 0.7.0-rc.1
aim-downloader@0.7.0-rc.1
http-api-bindings@0.7.0-rc.1
juniper-axum@0.7.0-rc.1
llama-cpp-bindings@0.7.0-rc.1
tabby@0.7.0-rc.1
tabby-common@0.7.0-rc.1
tabby-download@0.7.0-rc.1
tabby-inference@0.7.0-rc.1
tabby-scheduler@0.7.0-rc.1
tabby-webserver@0.7.0-rc.1

Generated by cargo-workspaces
2023-12-11 12:33:30 +08:00
Meng Zhang
81b8450c5a Release 0.7.0-rc.0
aim-downloader@0.7.0-rc.0
http-api-bindings@0.7.0-rc.0
juniper-axum@0.7.0-rc.0
llama-cpp-bindings@0.7.0-rc.0
tabby@0.7.0-rc.0
tabby-common@0.7.0-rc.0
tabby-download@0.7.0-rc.0
tabby-inference@0.7.0-rc.0
tabby-scheduler@0.7.0-rc.0
tabby-webserver@0.7.0-rc.0

Generated by cargo-workspaces
2023-12-11 00:12:54 +08:00
Eric
1fa0106ca3
feat: fork aim-downloader into crates/aim-downloader to make it compatible with windows (#996)
* feat: support build on windows

* revert change

* feat: migrate aim source code

* revert change

* [autofix.ci] apply automated fixes

* fix test

* remove test dir, skip test

* fix test

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2023-12-10 10:48:21 +08:00
Meng Zhang
e92a8c8005 Release 0.7.0-dev
http-api-bindings@0.7.0-dev
juniper-axum@0.7.0-dev
llama-cpp-bindings@0.7.0-dev
tabby@0.7.0-dev
tabby-common@0.7.0-dev
tabby-download@0.7.0-dev
tabby-inference@0.7.0-dev
tabby-scheduler@0.7.0-dev
tabby-webserver@0.7.0-dev

Generated by cargo-workspaces
2023-11-27 14:58:58 +08:00
Meng Zhang
b1481b0e2e
chore: release 0.6.0 (#882)
* add loadtest

* release 0.6.0

* Release 0.6.0-rc.0

http-api-bindings@0.6.0-rc.0
juniper-axum@0.6.0-rc.0
llama-cpp-bindings@0.6.0-rc.0
tabby@0.6.0-rc.0
tabby-common@0.6.0-rc.0
tabby-download@0.6.0-rc.0
tabby-inference@0.6.0-rc.0
tabby-scheduler@0.6.0-rc.0
tabby-webserver@0.6.0-rc.0

Generated by cargo-workspaces

* Release 0.6.0-rc.1

http-api-bindings@0.6.0-rc.1
juniper-axum@0.6.0-rc.1
llama-cpp-bindings@0.6.0-rc.1
tabby@0.6.0-rc.1
tabby-common@0.6.0-rc.1
tabby-download@0.6.0-rc.1
tabby-inference@0.6.0-rc.1
tabby-scheduler@0.6.0-rc.1
tabby-webserver@0.6.0-rc.1

Generated by cargo-workspaces

* Release 0.6.0-rc.2

http-api-bindings@0.6.0-rc.2
juniper-axum@0.6.0-rc.2
llama-cpp-bindings@0.6.0-rc.2
tabby@0.6.0-rc.2
tabby-common@0.6.0-rc.2
tabby-download@0.6.0-rc.2
tabby-inference@0.6.0-rc.2
tabby-scheduler@0.6.0-rc.2
tabby-webserver@0.6.0-rc.2

Generated by cargo-workspaces

* Release 0.6.0

http-api-bindings@0.6.0
juniper-axum@0.6.0
llama-cpp-bindings@0.6.0
tabby@0.6.0
tabby-common@0.6.0
tabby-download@0.6.0
tabby-inference@0.6.0
tabby-scheduler@0.6.0
tabby-webserver@0.6.0

Generated by cargo-workspaces
2023-11-27 14:57:45 +08: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
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
15f768a971 feat: add tabby-webserver as distribution layer of tabby #769 2023-11-12 13:07:07 -08: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
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
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
Meng Zhang
fc9c9f644b Release 0.6.0-dev
http-api-bindings@0.6.0-dev
llama-cpp-bindings@0.6.0-dev
tabby@0.6.0-dev
tabby-common@0.6.0-dev
tabby-download@0.6.0-dev
tabby-inference@0.6.0-dev
tabby-scheduler@0.6.0-dev

Generated by cargo-workspaces
2023-11-03 18:04:12 -07:00
Meng Zhang
ec8d88de0d
chore: release 0.5.0 (#697)
* Release 0.5.0-rc.0

http-api-bindings@0.5.0-rc.0
llama-cpp-bindings@0.5.0-rc.0
tabby@0.5.0-rc.0
tabby-common@0.5.0-rc.0
tabby-download@0.5.0-rc.0
tabby-inference@0.5.0-rc.0
tabby-scheduler@0.5.0-rc.0

Generated by cargo-workspaces

* fix: docker branch tag should only generate when not empty

* Release 0.5.0-rc.1

http-api-bindings@0.5.0-rc.1
llama-cpp-bindings@0.5.0-rc.1
tabby@0.5.0-rc.1
tabby-common@0.5.0-rc.1
tabby-download@0.5.0-rc.1
tabby-inference@0.5.0-rc.1
tabby-scheduler@0.5.0-rc.1

Generated by cargo-workspaces

* fix: handlebar syntax in meta action

* Release 0.5.0-rc.2

http-api-bindings@0.5.0-rc.2
llama-cpp-bindings@0.5.0-rc.2
tabby@0.5.0-rc.2
tabby-common@0.5.0-rc.2
tabby-download@0.5.0-rc.2
tabby-inference@0.5.0-rc.2
tabby-scheduler@0.5.0-rc.2

Generated by cargo-workspaces

* fix: handlebar syntax in meta action

* Release 0.5.0-rc.3

http-api-bindings@0.5.0-rc.3
llama-cpp-bindings@0.5.0-rc.3
tabby@0.5.0-rc.3
tabby-common@0.5.0-rc.3
tabby-download@0.5.0-rc.3
tabby-inference@0.5.0-rc.3
tabby-scheduler@0.5.0-rc.3

Generated by cargo-workspaces

* docs: update change log and docs

* fix: collect_snippet should handle NotReady error

* Release 0.5.0-rc.4

http-api-bindings@0.5.0-rc.4
llama-cpp-bindings@0.5.0-rc.4
tabby@0.5.0-rc.4
tabby-common@0.5.0-rc.4
tabby-download@0.5.0-rc.4
tabby-inference@0.5.0-rc.4
tabby-scheduler@0.5.0-rc.4

Generated by cargo-workspaces

* Release 0.5.0

http-api-bindings@0.5.0
llama-cpp-bindings@0.5.0
tabby@0.5.0
tabby-common@0.5.0
tabby-download@0.5.0
tabby-inference@0.5.0
tabby-scheduler@0.5.0

Generated by cargo-workspaces
2023-11-03 18:02:03 -07:00
Meng Zhang
36ffeb63f1 refactor: remove useless rust-cxx-cmake-bridge 2023-10-31 17:58:21 -07:00
Meng Zhang
296342efd8
refactor: use llama.cpp tokenizer (#683)
* refactor: switch to llama.cpp tokenizer to simplify implementation

* refactor: remove tokenizer dependency from tabby

* refactor: renaming decoding to stop condition

* refactor: remove tokenizer dependency

* refactor: remove submodule

* chore: update formatting

* move tokenization to c++
2023-10-31 22:16:09 +00:00
Meng Zhang
e171776774 Release 0.5.0-dev
ctranslate2-bindings@0.5.0-dev
http-api-bindings@0.5.0-dev
llama-cpp-bindings@0.5.0-dev
rust-cxx-cmake-bridge@0.5.0-dev
tabby@0.5.0-dev
tabby-common@0.5.0-dev
tabby-download@0.5.0-dev
tabby-inference@0.5.0-dev
tabby-scheduler@0.5.0-dev

Generated by cargo-workspaces
2023-10-24 13:05:33 -07:00
Meng Zhang
d27c09d75d
fix: ignore NotReady error for IndexServer (#559) 2023-10-14 02:21:17 -07:00
Meng Zhang
82e893d569 Release 0.4.0-dev
ctranslate2-bindings@0.4.0-dev
http-api-bindings@0.4.0-dev
llama-cpp-bindings@0.4.0-dev
rust-cxx-cmake-bridge@0.4.0-dev
tabby@0.4.0-dev
tabby-common@0.4.0-dev
tabby-download@0.4.0-dev
tabby-inference@0.4.0-dev
tabby-scheduler@0.4.0-dev

Generated by cargo-workspaces
2023-10-13 17:54:14 -07:00
Meng Zhang
4dbaf4f312 Release 0.3.0
ctranslate2-bindings@0.3.0
http-api-bindings@0.3.0
llama-cpp-bindings@0.3.0
rust-cxx-cmake-bridge@0.3.0
tabby@0.3.0
tabby-common@0.3.0
tabby-download@0.3.0
tabby-inference@0.3.0
tabby-scheduler@0.3.0

Generated by cargo-workspaces
2023-10-13 17:45:07 -07:00
Meng Zhang
eb463ba496 Release 0.3.0-rc.1
ctranslate2-bindings@0.3.0-rc.1
http-api-bindings@0.3.0-rc.1
llama-cpp-bindings@0.3.0-rc.1
rust-cxx-cmake-bridge@0.3.0-rc.1
tabby@0.3.0-rc.1
tabby-common@0.3.0-rc.1
tabby-download@0.3.0-rc.1
tabby-inference@0.3.0-rc.1
tabby-scheduler@0.3.0-rc.1

Generated by cargo-workspaces
2023-10-13 11:43:34 -07:00
Meng Zhang
182aceed41 Release 0.3.0-rc.0
ctranslate2-bindings@0.3.0-rc.0
http-api-bindings@0.3.0-rc.0
llama-cpp-bindings@0.3.0-rc.0
tabby@0.3.0-rc.0
tabby-common@0.3.0-rc.0
tabby-download@0.3.0-rc.0
tabby-inference@0.3.0-rc.0
tabby-scheduler@0.3.0-rc.0

Generated by cargo-workspaces
2023-10-13 11:24:36 -07:00
Meng Zhang
1ad871e1ff
feat: add debug request / response to visualize prompting with source code index (#544)
* feat: logs segments in completion log

* feat: tune prompt format and improve testing

* add debug options for easier of visualizing the prompt

* update
2023-10-12 19:27:52 -07:00
Meng Zhang
6dbb712918 Release 0.3.0-dev
ctranslate2-bindings@0.3.0-dev
http-api-bindings@0.3.0-dev
llama-cpp-bindings@0.3.0-dev
tabby@0.3.0-dev
tabby-common@0.3.0-dev
tabby-download@0.3.0-dev
tabby-inference@0.3.0-dev
tabby-scheduler@0.3.0-dev

Generated by cargo-workspaces
2023-10-09 19:39:27 -07:00
Meng Zhang
9cd2accbaa
feat: adjust code indexing logic (#510) 2023-10-05 05:29:41 +00:00
Meng Zhang
2d5b3e4ff5 chore: release v0.2.1 2023-10-03 17:13:39 -07:00
Meng Zhang
ceaa7ab012 chore: update main branch to v0.3.0-dev 2023-10-03 13:38:27 -07:00
Meng Zhang
1731c3075e chore: Update version to 0.2.0 2023-10-03 13:32:21 -07:00
Meng Zhang
692c2fe0fd Release 0.2.0-rc.0
ctranslate2-bindings@0.2.0-rc.0
http-api-bindings@0.2.0-rc.0
llama-cpp-bindings@0.2.0-rc.0
tabby@0.2.0-rc.0
tabby-common@0.2.0-rc.0
tabby-download@0.2.0-rc.0
tabby-inference@0.2.0-rc.0
tabby-scheduler@0.2.0-rc.0

Generated by cargo-workspaces
2023-10-02 19:14:12 -07:00
Meng Zhang
486e507079
fix: correct Decoding behavior in incremental manner (#491)
* feat: implement IncrementalDecoding

* refactor: use IncrementalDecoding for ctranslate2

* refactor: rename StopWords to DecodingFactory

* refactor: move decoding logic to tabby-inference

* feat: optimize decoding range

* cleanup
2023-09-29 13:06:47 +00:00
Meng Zhang
44f013f26e
feat: add /generate and /generate_streaming (#482)
* feat: add generate_stream interface

* extract engine::create_engine

* feat add generate::generate

* support streaming in llama.cpp

* support streaming in ctranslate2

* update

* fix formatting

* refactor: extract helpers functions
2023-09-28 17:20:50 +00:00
Meng Zhang
d42942c379
feat: support ModelScope for model registry downloading (#477)
* feat: update cache info file after each file got downloaded

* refactor: extract Downloader for model downloading logic

* refactor: extract HuggingFaceRegistry

* refactor: extract serde_json to workspace dependency

* feat: add ModelScopeRegistry

* refactor: extract registry to its sub dir.

* feat: add scripts to mirror hf model to modelscope
2023-09-26 11:52:11 -07:00
Meng Zhang
1ccf9b2323 refactor: run make fix 2023-09-11 12:58:38 +08:00
Meng Zhang
17397c8c8c
feat: add http api bindings (#410)
* feat: add http-api-bindings

* feat: add http-api-bindings

* hand max_input_length

* rename

* update

* update

* add examples/simple.rs

* update

* add default value for stop words

* update

* fix lint

* update
2023-09-09 03:59:42 +00:00
Meng Zhang
3573d4378e
feat: llama.cpp for metal support [TAB-146] (#391)
* feat: init commit adding llama-cpp-bindings

* add llama.cpp submodule

* add LlamaEngine to hold llama context / llama model

* add cxxbridge

* add basic greedy sampling

* move files

* make compile success

* connect TextGeneration with LlamaEngine

* experimental support llama.cpp

* add metal device

* add Accelerate

* fix namespace for llama-cpp-bindings

* fix lint

* move stepping logic to rust

* add stop words package

* use stop-words in ctranslate2-bindings

* use raw string for regex

* use Arc<Tokenizer> for sharing tokenizers

* refactor: remove useless stop_words_encoding_offset

* switch to tokenizers 0.13.4-rc.3

* fix lints in cpp

* simplify implementation of greedy decoding

* feat: split metal feature for llama backend

* add ci

* update ci

* build tabby bin in ci build
2023-09-03 09:59:07 +08:00