You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Oct 14, 2024. It is now read-only.
| id | Identifier for the assistant, defaults to "jan". | string | jan |
120
+
| avatar | The avatar image for the assistant. | string | None |
121
+
| object | Specifies the assistant type in OpenAI-compatible API responses. | string | None |
122
+
| created_at | Timestamp indicating when the assistant was created. | string | None |
123
+
| name | Display name for the assistant. | string | Jan |
124
+
| description | A description of the assistant's role. | string | A default assistant that can use all downloaded models. |
125
+
| model | Defines which models the assistant can use, with * indicating all models are available. | string | * |
126
+
| instructions | Default instructions provided to new threads. | string | None |
127
+
| file_ids | Field for referencing file IDs in OpenAI-compatible responses. | string | None |
128
+
| tools | List of tools available for the assistant, with only the "retrieval" tool supported so far. | array | retrieval |
129
+
| type | Specifies the type of tool, default is "retrieval". | string | retrieval |
130
+
| enabled | Indicates whether the tool is enabled by default.| boolean | true |
131
+
| useTimeWeightedRetriever | Controls if the time-weighted retrieval feature is enabled. | boolean | false |
132
+
| settings | Configuration settings for the tool (retrieval tool in this case). | object | None |
133
+
| top_k | Number of top results to return in retrieval, with a default of 2. | number | 2 |
134
+
| chunk_size | Defines the size of text chunks to process for the retrieval tool. | number | 1024 |
135
+
| chunk_overlap | Determines the amount of overlap between text chunks in the retrieval process. | number | 64 |
136
+
| retrieval_template | Template for formatting the retrieval tool's responses to queries. | string | None |
137
+
132
138
133
139
### `extensions/`
134
140
135
141
Extensions enhance Jan's functionality by adding new capabilities or integrating external services.
136
142
137
-
-**Extension Configuration**: The `extensions.json` in the `/extensions/` directory provides settings for all installed extensions.
138
-
-**Specific Extensions**: Subdirectories like `/@janhq/extension_A/` contain `package.json` files that import necessary modules for each extension.
143
+
-**@janhq**: The root folder for all extensions by the author. Extensions with organization-level names (e.g., `@janhq/monitoring-extension`) are stored here. If there is no organization, the folder holds the extension directly (e.g., `example-extension`).
144
+
145
+
-**extensions.json**: A file that lists all installed extensions and their metadata, taken from each extension’s `package.json`. It helps avoid scanning all extension folders, improving performance.
139
146
140
147
### `logs/`
141
148
142
-
Logs from the application are stored here. This is useful for troubleshooting and monitoring the application's behavior over time. The file `/logs/app.txt` captures general application activity.
149
+
Logs from the application are stored here. This is useful for troubleshooting and monitoring the application's behavior over time. The file `/logs/app.txt` uses prefixes to indicate the source of the logs:
150
+
-**[APP]**: App logs
151
+
-**[SERVER]**: API server logs
152
+
-**[SPECS]**: Hardware information logs
143
153
144
154
### `models/`
145
155
146
156
Stores the AI models that the assistants use to process requests and generate responses.
147
157
148
158
-**Model Configurations**: Each model directory, such as `/models/modelA/`, contains a `model.json` with settings specific to that model.
149
159
160
+
<Callouttype="info">
161
+
To see the full list of `model.json` parameters, please see [here](/docs/models/model-parameters).
162
+
</Callout>
163
+
150
164
### `settings/`
151
165
152
166
General settings for the application are stored here, separate from individual assistant or engine configurations.
153
167
154
-
-**General Settings**: The `settings.json` in the `/settings/` directory holds application-wide settings.
155
-
-**Extension-specific Settings**: Additional settings for extensions are stored in respective subdirectories under `/settings/@janhq/`.
168
+
-**Extension-specific Settings**: Additional settings for extensions are stored in respective subdirectories under `/settings/@janhq/`. Each parameter in the file is defined as follows:
|`controllerType`| The type of setting component (checkbox, input, slider, etc.). |
176
+
|`controllerProps`| Properties of the controller (e.g., value, placeholder, textAlign). |
177
+
|`extensionName`| The extension ID, used to map with the parent extension. |
178
+
179
+
-**General Settings**: The `settings.json` in the `/settings/` directory holds application settings related to the GPU acceleration. Each parameter in the file is defined as follows:
|`notify`| Whether notifications are enabled (true/false). |
184
+
|`run_mode`| The mode the application is running in (e.g., "cpu"). |
185
+
|`nvidia_driver.exist`| Whether the NVIDIA driver is present (true/false). |
186
+
|`nvidia_driver.version`| The version of the installed NVIDIA driver. |
187
+
|`cuda.exist`| Whether CUDA is available (true/false). |
188
+
|`cuda.version`| The version of CUDA installed. |
189
+
|`gpus[0].id`| The ID of the GPU (e.g., "0"). |
190
+
|`gpus[0].vram`| The amount of VRAM for the GPU (in MB). |
191
+
|`gpus[0].name`| The name of the GPU (e.g., "NVIDIA GeForce RTX 3050 Laptop GPU"). |
192
+
|`gpus[0].arch`| The architecture of the GPU (e.g., "ampere"). |
193
+
|`gpu_highest_vram`| The ID of the GPU with the highest VRAM. |
194
+
|`gpus_in_use`| The list of GPU IDs currently in use (e.g., "0"). |
195
+
|`is_initial`| Indicates whether it's the initial run (true/false). |
196
+
|`vulkan`| Whether Vulkan support is available (true/false). |
197
+
198
+
156
199
157
200
158
201
### `themes/`
159
202
160
-
The `themes` directory contains different visual themes for the application, allowing customization of the user interface.
203
+
The `themes` directory contains different visual themes for the application, allowing customization of the user interface. Each of theme directory contains the `theme.json` that has the following parameters:
|`displayName`| Theme display name, as seen in theme settings. |
209
+
|`reduceTransparent`| Setting to reduce transparency of the window/background. |
210
+
|`nativeTheme`| Indicates whether the theme depends on the OS's light/dark settings. |
211
+
|`variables`| Contains all possible component configurations. |
161
212
162
213
### `threads/`
163
214
164
-
Threads history is kept in this directory. Each session or thread is stored in a way that makes it easy to review past interactions. Each thread is stored in its subdirectory, such as `/threads/jan_unixstamp/`, with files like `messages.jsonl` and `thread.json` detailing the thread settings.
215
+
Threads history is kept in this directory. Each session or thread is stored in a way that makes it easy to review past interactions. Each thread is stored in its subdirectory, such as `/threads/jan_unixstamp/`, with files like `messages.jsonl` and `thread.json` that contains the following parameters:
216
+
217
+
-`messages.jsonl`: Array of OpenAI compatible message objects belong to the thread. For example:
|`id`| Thread's ID (can be generated by the folder name). |
230
+
|`object`| "thread" (OpenAI-compatible field). |
231
+
|`title`| Thread's title (editable in the GUI from the Thread List on the left panel). |
232
+
|`assistants`| Contains cloned assistant metadata and specialized settings for the thread. Includes all assistant settings mentioned under the Jan assistant section. |
233
+
|`model`| The selected model and its settings/parameters for the thread. Changes made by users to thread settings are written here, rather than in model.json. Also contains the ID and engine of the selected model for quick querying by extensions. |
234
+
|`metadata`| Additional thread data, such as `lastMessage`, which provides GUI information but does not use OpenAI-compatible fields. |
0 commit comments