Akarshan
6b86baaa2f
Add tool choice type
2025-07-02 12:28:24 +07:00
Akarshan
6d5251d1c6
Fixup tool type definition
2025-07-02 12:28:24 +07:00
Akarshan
7f25311d26
Add tool type to chat completion requests
2025-07-02 12:28:24 +07:00
Louis
8bd4a3389f
refactor: frontend uses new engine extension
...
# Conflicts:
# extensions/model-extension/resources/default.json
# web-app/src/containers/dialogs/DeleteProvider.tsx
# web-app/src/routes/hub.tsx
2025-07-02 12:28:24 +07:00
Akarshan
48d1164858
feat: add embedding support to llamacpp extension
...
This commit introduces embedding functionality to the llamacpp extension. It allows users to generate embeddings for text inputs using the 'sentence-transformer-mini' model. The changes include:
- Adding a new `embed` method to the `llamacpp_extension` class.
- Implementing model loading and API interaction for embeddings.
- Handling potential errors during API requests.
- Adding necessary types for embedding responses and data.
- The load method now accepts a boolean parameter to determine if it should load embedding model.
2025-07-02 12:27:36 +07:00
Akarshan
dbcce86bb8
refactor: rename interfaces and add getLoadedModels
...
The changes include:
- Renaming interfaces (sessionInfo -> SessionInfo, unloadResult -> UnloadResult) for consistency
- Adding getLoadedModels() method to retrieve active model IDs
- Updating variable names from modelId to model_id for alignment
- Updating cleanup paths to use XDG-standard locations
- Improving type consistency across extension implementation
2025-07-02 12:27:35 +07:00
Akarshan
c2b606a3fc
feat: enhance chatCompletionRequest with advanced sampling parameters
...
Add comprehensive sampling parameters for fine-grained control over AI output generation, including dynamic temperature, Mirostat sampling, repetition penalties, and advanced prompt handling. These parameters enable more precise tuning of model behavior and output quality.
2025-07-02 12:27:34 +07:00
Akarshan Biswas
4dfdcd68d5
refactor: rename session identifiers to pid and modelId
...
The changes standardize identifier names across the codebase for clarity:
- Replaced `sessionId` with `pid` to reflect process ID usage
- Changed `modelName` to `modelId` for consistency with identifier naming
- Renamed `api_key` to `apiKey` for camelCase consistency
- Updated corresponding methods to use these new identifiers
- Improved type safety and readability by aligning variable names with their semantic meaning
2025-07-02 12:27:16 +07:00
Akarshan Biswas
fd9e034461
feat: update AIEngine load method and backend path handling
...
- Changed load method to accept modelId instead of loadOptions for better clarity and simplicity
- Renamed engineBasePath parameter to backendPath for consistency with the backend's directory structure
- Added getRandomPort method to ensure unique ports for each session to prevent conflicts
- Refactored configuration and model loading logic to improve maintainability and reduce redundancy
2025-07-02 12:27:15 +07:00
Akarshan Biswas
267bbbf77b
feat: add model and mmproj paths to ImportOptions
...
The `ImportOptions` interface was updated to include `modelPath` and `mmprojPath`. These options are required for importing models and multi-modal projects.
2025-07-02 12:27:13 +07:00
Akarshan Biswas
07d76dc871
feat: Allow specifying mmproj path during model loading
...
The `loadOptions` interface in `AIEngine.ts` now includes an optional `mmprojPath` property. This allows users to provide a path to their MMProject file when loading a model, which is required for certain model types. The `llamacpp-extension/src/index.ts` has been updated to pass this option to the llamacpp server if provided.
2025-07-02 12:27:13 +07:00
Akarshan Biswas
da23673a44
feat: Add API key generation for Llama.cpp
...
This commit introduces API key generation for the Llama.cpp extension. The API key is now generated on the server side using HMAC-SHA256 and a secret key to ensure security and uniqueness. The frontend now passes the model ID and API secret to the server to generate the key. This addresses the requirement for secure model access and authorization.
2025-07-02 12:27:12 +07:00
Akarshan Biswas
31971e7821
(WIP)randomly generate api-key hash each session
2025-07-02 12:27:12 +07:00
Akarshan Biswas
7481fae0df
remove ununsed imports and remove n_ctx key from loadOptions
2025-07-02 12:27:11 +07:00
Thien Tran
d5c07acdb5
feat: add LlamacppConfig for llama.cpp extension to improve settings ( #5121 )
...
* add engine settings
* update load options
* rename variable
2025-07-02 12:27:11 +07:00
Akarshan Biswas
742e731e96
Add --reasoning_budget option
2025-07-02 12:27:10 +07:00
Thien Tran
cd36b423b6
add basic model list
2025-07-02 12:27:10 +07:00
Thien Tran
d523166b61
implement delete
2025-07-02 12:27:09 +07:00
Akarshan Biswas
587ed3c83c
refactor OAI request payload type to support image and audio
2025-07-02 12:27:09 +07:00
Thien Tran
ded9ae733a
feat: Model import (download + local import) for llama.cpp extension ( #5087 )
...
* add pull and abortPull
* add model import (download only)
* write model.yaml. support local model import
* remove cortex-related command
* add TODO
* remove cortex-related command
2025-07-02 12:27:09 +07:00
Akarshan Biswas
a7a2dcc8d8
refactor load/unload again; move types to core and refactor AIEngine abstract class
2025-07-02 12:27:09 +07:00
Akarshan Biswas
ee2cb9e625
remove override from localOAIEngine and OAIEngine
2025-07-02 12:27:09 +07:00
Akarshan Biswas
bbbf4779df
refactor load/unload
2025-07-02 12:27:08 +07:00
Louis
dc4e592de9
Merge branch 'dev' into release/v0.6.6
2025-07-02 10:43:12 +07:00
Louis
ccffe4ced5
Merge pull request #5669 from menloresearch/release/v0.6.4
...
Sync Release/v0.6.4 into dev
2025-07-02 10:42:07 +07:00
Faisal Amir
2a0597ff01
Merge branch 'dev' into release/v0.6.6
2025-07-02 10:26:32 +07:00
Louis
0b88d93e18
fix: top_k validation
2025-07-01 16:40:22 +07:00
Louis
db74f2cf3f
fix: check newValue not null
2025-07-01 13:28:30 +07:00
Louis
7b22ba8c54
fix: some of the model settings are not applied
2025-07-01 13:17:32 +07:00
Louis
1e8c9956cd
Merge pull request #5568 from menloresearch/fix/min_p-validation-on-model-load
...
fix: min p validation on model load
2025-07-01 11:15:35 +07:00
dependabot[bot]
c3b6a08ff3
chore(deps-dev): bump jest and @types/jest
...
---
updated-dependencies:
- dependency-name: jest
dependency-version: 30.0.3
dependency-type: direct:development
update-type: version-update:semver-major
- dependency-name: "@types/jest"
dependency-version: 30.0.0
dependency-type: direct:development
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-06-30 18:12:27 +00:00
dependabot[bot]
aa59a70b88
chore(deps-dev): bump rimraf from 3.0.2 to 6.0.1 in /core
...
---
updated-dependencies:
- dependency-name: rimraf
dependency-version: 6.0.1
dependency-type: direct:development
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-06-30 09:02:19 +00:00
Louis
6be9cb974c
Merge pull request #5395 from menloresearch/dependabot/npm_and_yarn/typescript-5.8.3
...
chore(deps-dev): bump typescript from 5.7.3 to 5.8.3
2025-06-27 23:35:00 +07:00
Louis
b49619b389
test: cover new changes
2025-06-27 10:41:34 +07:00
Louis
ba4a36dfb3
fix: min-p-validation-on-model-load
2025-06-27 10:34:43 +07:00
Louis
d407ebc4e9
fix: typo
2025-06-25 19:42:22 +07:00
Louis
a7c441ee58
🐛 fix: default model settings for jan-nano-128k
2025-06-25 19:36:34 +07:00
dependabot[bot]
5185d19129
chore(deps-dev): bump typescript from 5.7.3 to 5.8.3
...
Bumps [typescript](https://github.com/microsoft/TypeScript ) from 5.7.3 to 5.8.3.
- [Release notes](https://github.com/microsoft/TypeScript/releases )
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release-publish.yml )
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.7.3...v5.8.3 )
---
updated-dependencies:
- dependency-name: typescript
dependency-version: 5.8.3
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-06-24 07:56:32 +00:00
Louis
2899d58ad7
🐛 fix: llama.cpp default NGL setting does not offload all layers to GPU ( #5310 )
...
* 🐛 fix: llama.cpp default NGL setting does not offload all layers to GPU
* chore: cover more cases
* chore: clean up
* fix: should not show GPU section on Mac
2025-06-17 15:30:07 +07:00
Louis
1a0f643d87
refactor: clean up repo ( #5165 )
...
* chore: remove legacy themes
* refactor: clean up dependencies
* chore: remove cuda 11 dependency - fix linux LD_LIBRARY_PATH
* fix: load models issue on Linux
# Conflicts:
# src-tauri/src/core/setup.rs
* chore: do not download cuda 11 by default
* chore: remove cuda 11 from installer
* fix: cuda lookup on Linux
2025-06-02 19:03:06 +07:00
Louis
646ba86de8
fix: extension settings are not retained in new sessions ( #5154 )
2025-05-31 21:28:08 +07:00
Louis
4672754b81
chore: persist assistants settings ( #5127 )
...
* chore: assistant settings
* chore: fix model sources issue after deleted models
* chore: assistants as files
* chore: clean up
2025-05-28 19:33:13 +07:00
Louis
942f2f51b7
chore: send chat completion with messages history ( #5070 )
...
* chore: send chat completion with messages history
* chore: handle abort controllers
* chore: change max attempts setting
* chore: handle stop running models in system monitor screen
* Update web-app/src/services/models.ts
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* chore: format time
* chore: handle stop model load action
---------
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-05-22 20:13:50 +07:00
Louis
0627f29059
chore: enable / disable proxy configrations ( #5050 )
...
* chore: enable / disable proxy configrations
* Update web-app/src/routes/settings/https-proxy.tsx
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update web-app/src/lib/completion.ts
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-05-21 14:18:25 +07:00
Louis
6676e0ced8
chore: add relocate jan data folder function to new FE ( #5043 )
...
* chore: typo
* fix: linter issues
* chore: fix linter
* chore: fix linter
* chore: add relocate data folder
2025-05-21 10:48:10 +07:00
Louis
2dac53e9ca
feat: Jan supports multiple assistants ( #5024 )
...
* feat: Jan supports multiple assistants
* chore: persists current assistant to threads.json
* chore: update assistant persistence
* chore: simplify persistence objects
2025-05-20 00:57:26 +07:00
Louis
e9f37e98d1
refactor: remove hardcoded provider names ( #4995 )
...
* refactor: remove hardcoded provider names
* chore: continue the replacement
2025-05-15 22:10:43 +07:00
Faisal Amir
852ea84cd8
epic: Jan with new UI/UX ( #4964 )
...
* chore: initial new FE setup
* chore: update namespace text-left-panel foreground variable
* chore: enable dynamic mainview color
* chore: remove greetings new chat
* chore: fix chat input style
* chore: simplify hook useAppearance
* chore: enable internationalization
* chore: prepare vn locale
* chore: keyboardshortcut layout
* chore: update keyboard shortcut exclude pathname
* chore: update state active setting route
* chore: fix update theme by system
* chore: handle dynamic primary color
* chore: fix left panel navigation active state and styled item privacy analytic
* chore: reorder general setting being a first
* chore: add function reset appearance
* chore: update scrollbar
* chore: update delete thread with dialog confirmation
* chore: update state dialog inside dropdown menu
* chore: wip thread detail or chat page
* chore: wip model dropdown
* chore: prepare model dropdown select
* chore: update model providers setting
* chore: show provider on model dropdown based isActive toogle
* chore: update layout model provider
* chore: update state active on storage
* chore: update gap of item dropdown model
* chore: update select model base on id
* chore: update edit model capabilities
* chore: add dialog to add model
* chore: update sheet for model setting
* chore: add sheet setting each model
* chore: make dynamic syntax highlight
* chore: fix menu setting appearance theme
* chore: markdown render support emoji
* chore: markdown support latex
* chore: change codeblock default theme
* chore: update ui codeblock
* chore: custom render link taget new window
* chore: fix copy button codeblock
* chore: update accent and desctructive color
* chore: setup user chat message
* chore: prepare some page settings
* chore: simple list extension and prepare mcp, local api, and hardware
* chore: mcp-serve
* chore: MCP server UI
* chore: update local api server config
* chore: adjust chat input
* chore: update local api server log
* chore: prepare hub page
* chore: remove help page
* chore: update mock
* chore: prepare http proxy setting UI
* chore: adjust local api server and title every action
* fix: chore FE package (#4962 )
* fix: update command which referred to non-existent web app
* fix: added commented out macos platform for now
* fix: remove the platform name as macos
* fix: remove unnecessary line for platform name in HeaderPage component
* fix: update dev script to specify port 3000 for Vite
* feat: model providers and chat completion
* enhancement: threads performance
* fix: thread content update
* chore: clean up threads
* fix: performance issue with streaming and state loop
* fix: streaming
* fix: react markdow
* feat: extension manager
* chore: add nodePolyfills include path
* chore: improve performance avoid unhandle rejection
* chore: update pre margin bottom
* chore: swith thread should be deafult scroll to bottom
* chore: wip scroll to bottom
* chore: add model loader
* chore: add platform utils
* feat: threads functionality
* chore: setup toaster
* chore: persist threads deletion
* fix: create thread with new message
* chore: create new thread should change route path
* chore: navigate after delet dialog thread
* chore: thread favorites and orders
* chore: dismiss deleting modal on delete
* chore: remove undefined properties
* chore: remove deprecated run step
* chore: fix delete thread
* chore: create empty thread content on started streaming
* chore: correct messages store key
* chore: stuck at generating state
* chore: preapre chat toolbar
* chore: introduce in-memory app state
* chore: update extensions migration logic
* chore: remove redundant extensions migration gate
* chore: message toolbar user and assistant
* chore: add logo gemini
* feat: remote providers with model capabilities
* chore: maintain provider settings
* chore: move speed token into chat input
* chore: temp harcoded model loader
* chore: make chat text selectable and truncate model list
* chore: update shortcut UI
* Feat/implement threads (#4977 )
* chore: add fuse.js library for enhanced search functionality
* feat: implement thread filtering with Fuse.js for improved search capabilities
* fix: update the fuseOptions
* feat: add search functionality to LeftPanel and refactor thread retrieval logic
* refactor: optimize thread filtering and improve search functionality in LeftPanel
* fix: more edits
* refactor: remove duplicate import of useAppState in StreamingContent component
* chore: update navigate after delete all thread
* chore: pass prop speedToken from new chat input
* chore: persist provider general settings
* chore: styling search left panel
* chore: cleanup margin
* chore: update size icon
* chore: improve chat input
* chore: imprve list markdown
* chore: animate border
* feat: local model provider work
* chore: persist manually added model
* chore: prepare download management ui and show version on general setting
* chore: improve pre tag
* chore: remove buton install extension and improve light theme download
* chore: add missing hardware information handler
* chore: cleanup small ui
* chore: update default provider settings
* fix: missing fs commands
* chore: correct provider models
* chore: prepare delete model
* chore: handle thinking block
* chore: fix conditional message toolbar
* chore: pophover download select none
* enhancement: add prune mode
* chore: model settings
* chore: bump engine version tauri
* chore: update style thinking
* chore: add indicator and toogle mcp server
* chore: wip hub
* chore: update model settings
* chore: mvp hub
* chore: add function rename title
* chore: update function delete message
* chore: update rename title
* chore: update model settings
* chore: persist MCP configs
* refactor: clean up utils
* chore: add tools to completion request
* chore: clean up
* chore: ignore assets
---------
Co-authored-by: Ivan Leo <ivanleomk@gmail.com>
Co-authored-by: Louis <louis@jan.ai>
2025-05-15 19:38:59 +07:00
Thien Tran
dc23cc2716
Use token.js for non-tools calls ( #4973 )
...
* deprecate inference()
* fix tool_choice. only startModel for Cortex
* appease linter
* remove sse
* add stopInferencing support. temporarily with OpenAI
* use abortSignal in token.js
* bump token.js version
2025-05-15 17:11:19 +07:00
Louis
ea88b27593
Merge pull request #4900 from menloresearch/feat/jan-ui-with-tool-use
...
feat: jan UI with Tool use UX
2025-05-15 17:10:51 +07:00