* feat: tensorrt-llm-extension * fix: loading * feat: add download tensorrt llm runner Signed-off-by: James <james@jan.ai> * feat: update to rollupjs instead of webpack for monitoring extension Signed-off-by: James <james@jan.ai> * feat: move update nvidia info to monitor extension Signed-off-by: James <james@jan.ai> * allow download tensorrt Signed-off-by: James <james@jan.ai> * update Signed-off-by: James <james@jan.ai> * allow download tensor rt based on gpu setting Signed-off-by: James <james@jan.ai> * update downloaded models Signed-off-by: James <james@jan.ai> * feat: add extension compatibility * dynamic tensor rt engines Signed-off-by: James <james@jan.ai> * update models Signed-off-by: James <james@jan.ai> * chore: remove ts-ignore * feat: getting installation state from extension Signed-off-by: James <james@jan.ai> * chore: adding type for decompress Signed-off-by: James <james@jan.ai> * feat: update according Louis's comment Signed-off-by: James <james@jan.ai> * feat: add progress for installing extension Signed-off-by: James <james@jan.ai> * chore: remove args from extension installation * fix: model download does not work properly * fix: do not allow user to stop tensorrtllm inference * fix: extension installed style * fix: download tensorrt does not update state Signed-off-by: James <james@jan.ai> * chore: replace int4 by fl16 * feat: modal for installing extension Signed-off-by: James <james@jan.ai> * fix: start download immediately after press install Signed-off-by: James <james@jan.ai> * fix: error switching between engines * feat: rename inference provider to ai engine and refactor to core * fix: missing ulid * fix: core bundler * feat: add cancel extension installing Signed-off-by: James <james@jan.ai> * remove mocking for mac Signed-off-by: James <james@jan.ai> * fix: show models only when extension is ready * add tensorrt badge for model Signed-off-by: James <james@jan.ai> * fix: copy * fix: add compatible check (#2342) * fix: add compatible check Signed-off-by: James <james@jan.ai> * fix: copy * fix: font * fix: copy * fix: broken monitoring extension * chore: bump engine * fix: copy * fix: model copy * fix: copy * fix: model json --------- Signed-off-by: James <james@jan.ai> Co-authored-by: James <james@jan.ai> Co-authored-by: Louis <louis@jan.ai> * fix: vulkan support * fix: installation button padding * fix: empty script * fix: remove hard code string --------- Signed-off-by: James <james@jan.ai> Co-authored-by: James <james@jan.ai> Co-authored-by: NamH <NamNh0122@gmail.com>
157 lines
4.1 KiB
TypeScript
157 lines
4.1 KiB
TypeScript
/**
|
|
* Native Route APIs
|
|
* @description Enum of all the routes exposed by the app
|
|
*/
|
|
export enum NativeRoute {
|
|
openExternalUrl = 'openExternalUrl',
|
|
openAppDirectory = 'openAppDirectory',
|
|
openFileExplore = 'openFileExplorer',
|
|
selectDirectory = 'selectDirectory',
|
|
selectModelFiles = 'selectModelFiles',
|
|
relaunch = 'relaunch',
|
|
|
|
hideQuickAskWindow = 'hideQuickAskWindow',
|
|
sendQuickAskInput = 'sendQuickAskInput',
|
|
|
|
hideMainWindow = 'hideMainWindow',
|
|
showMainWindow = 'showMainWindow',
|
|
|
|
quickAskSizeUpdated = 'quickAskSizeUpdated',
|
|
}
|
|
|
|
/**
|
|
* App Route APIs
|
|
* @description Enum of all the routes exposed by the app
|
|
*/
|
|
export enum AppRoute {
|
|
getAppConfigurations = 'getAppConfigurations',
|
|
updateAppConfiguration = 'updateAppConfiguration',
|
|
joinPath = 'joinPath',
|
|
isSubdirectory = 'isSubdirectory',
|
|
baseName = 'baseName',
|
|
startServer = 'startServer',
|
|
stopServer = 'stopServer',
|
|
log = 'log',
|
|
logServer = 'logServer',
|
|
systemInformations = 'systemInformations',
|
|
showToast = 'showToast',
|
|
}
|
|
|
|
export enum AppEvent {
|
|
onAppUpdateDownloadUpdate = 'onAppUpdateDownloadUpdate',
|
|
onAppUpdateDownloadError = 'onAppUpdateDownloadError',
|
|
onAppUpdateDownloadSuccess = 'onAppUpdateDownloadSuccess',
|
|
|
|
onUserSubmitQuickAsk = 'onUserSubmitQuickAsk',
|
|
onSelectedText = 'onSelectedText',
|
|
}
|
|
|
|
export enum DownloadRoute {
|
|
abortDownload = 'abortDownload',
|
|
downloadFile = 'downloadFile',
|
|
pauseDownload = 'pauseDownload',
|
|
resumeDownload = 'resumeDownload',
|
|
getDownloadProgress = 'getDownloadProgress',
|
|
}
|
|
|
|
export enum DownloadEvent {
|
|
onFileDownloadUpdate = 'onFileDownloadUpdate',
|
|
onFileDownloadError = 'onFileDownloadError',
|
|
onFileDownloadSuccess = 'onFileDownloadSuccess',
|
|
onFileUnzipSuccess = 'onFileUnzipSuccess',
|
|
}
|
|
|
|
export enum LocalImportModelEvent {
|
|
onLocalImportModelUpdate = 'onLocalImportModelUpdate',
|
|
onLocalImportModelFailed = 'onLocalImportModelFailed',
|
|
onLocalImportModelSuccess = 'onLocalImportModelSuccess',
|
|
onLocalImportModelFinished = 'onLocalImportModelFinished',
|
|
}
|
|
|
|
export enum ExtensionRoute {
|
|
baseExtensions = 'baseExtensions',
|
|
getActiveExtensions = 'getActiveExtensions',
|
|
installExtension = 'installExtension',
|
|
invokeExtensionFunc = 'invokeExtensionFunc',
|
|
updateExtension = 'updateExtension',
|
|
uninstallExtension = 'uninstallExtension',
|
|
}
|
|
export enum FileSystemRoute {
|
|
appendFileSync = 'appendFileSync',
|
|
copyFileSync = 'copyFileSync',
|
|
unlinkSync = 'unlinkSync',
|
|
existsSync = 'existsSync',
|
|
readdirSync = 'readdirSync',
|
|
mkdirSync = 'mkdirSync',
|
|
readFileSync = 'readFileSync',
|
|
rmdirSync = 'rmdirSync',
|
|
writeFileSync = 'writeFileSync',
|
|
}
|
|
export enum FileManagerRoute {
|
|
syncFile = 'syncFile',
|
|
copyFile = 'copyFile',
|
|
getJanDataFolderPath = 'getJanDataFolderPath',
|
|
getResourcePath = 'getResourcePath',
|
|
getUserHomePath = 'getUserHomePath',
|
|
fileStat = 'fileStat',
|
|
writeBlob = 'writeBlob',
|
|
}
|
|
|
|
export type ApiFunction = (...args: any[]) => any
|
|
|
|
export type NativeRouteFunctions = {
|
|
[K in NativeRoute]: ApiFunction
|
|
}
|
|
|
|
export type AppRouteFunctions = {
|
|
[K in AppRoute]: ApiFunction
|
|
}
|
|
|
|
export type AppEventFunctions = {
|
|
[K in AppEvent]: ApiFunction
|
|
}
|
|
|
|
export type DownloadRouteFunctions = {
|
|
[K in DownloadRoute]: ApiFunction
|
|
}
|
|
|
|
export type DownloadEventFunctions = {
|
|
[K in DownloadEvent]: ApiFunction
|
|
}
|
|
|
|
export type ExtensionRouteFunctions = {
|
|
[K in ExtensionRoute]: ApiFunction
|
|
}
|
|
|
|
export type FileSystemRouteFunctions = {
|
|
[K in FileSystemRoute]: ApiFunction
|
|
}
|
|
|
|
export type FileManagerRouteFunctions = {
|
|
[K in FileManagerRoute]: ApiFunction
|
|
}
|
|
|
|
export type APIFunctions = NativeRouteFunctions &
|
|
AppRouteFunctions &
|
|
AppEventFunctions &
|
|
DownloadRouteFunctions &
|
|
DownloadEventFunctions &
|
|
ExtensionRouteFunctions &
|
|
FileSystemRouteFunctions &
|
|
FileManagerRoute
|
|
|
|
export const CoreRoutes = [
|
|
...Object.values(AppRoute),
|
|
...Object.values(DownloadRoute),
|
|
...Object.values(ExtensionRoute),
|
|
...Object.values(FileSystemRoute),
|
|
...Object.values(FileManagerRoute),
|
|
]
|
|
|
|
export const APIRoutes = [...CoreRoutes, ...Object.values(NativeRoute)]
|
|
export const APIEvents = [
|
|
...Object.values(AppEvent),
|
|
...Object.values(DownloadEvent),
|
|
...Object.values(LocalImportModelEvent),
|
|
]
|