Merge pull request #4943 from menloresearch/ramon/docs-improvements-2

Enhanced wording on the installation pages, the data folder and the privacy section.
This commit is contained in:
Ramon Perez 2025-04-25 01:38:06 -04:00 committed by GitHub
commit 86b2a64c70
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 275 additions and 346 deletions

View File

@ -1,6 +1,6 @@
---
title: Jan Data Folder
description: Discover the Structure of Jan Data.
description: A guide to Jan's data structure.
sidebar_position: 2
keywords:
[
@ -25,19 +25,17 @@ import { Settings, FolderOpen } from 'lucide-react'
# Jan Data Folder
Jan stores your data locally in your own filesystem in a universal file format (JSON). We build for privacy by default and do not collect or sell your data.
This guide helps you understand where and how this data is stored.
Jan stores your data locally in JSON format. Your data is yours alone.
## Open Jan Data Folder
To open from Jan's interface:
1. In Jan, navigate to **Settings** (<Settings width={16} height={16} style={{display:"inline"}}/>) > **Advanced Settings**
2. Click <FolderOpen width={16} height={16} style={{display:"inline"}}/> icon to open Jan Data Folder
Via Jan:
1. Settings (<Settings width={16} height={16} style={{display:"inline"}}/>) > Advanced Settings
2. Click <FolderOpen width={16} height={16} style={{display:"inline"}}/>
<br/>
![Open Jan Data Folder](./_assets/settings-11.png)
<br/>
To open through Terminal:
Via Terminal:
```bash
# Windows
@ -47,22 +45,16 @@ cd %APPDATA%/Jan/data
cd ~/Library/Application\ Support/Jan/data
# Linux
## Custom installation directory
cd $XDG_CONFIG_HOME/Jan/data
# or
## Default installation directory
cd ~/.config/Jan/data
cd $XDG_CONFIG_HOME/Jan/data # Custom install
cd ~/.config/Jan/data # Default install
```
## Folder Structure
Jan app data folder should have the following folder structure:
## Directory Structure
<Callout type="info">
Jan is stored in the root `~/jan` by default.
Root directory: `~/jan`
</Callout>
```yaml
```sh
/assistants
/jan
assistant.json
@ -93,15 +85,9 @@ Jan is stored in the root `~/jan` by default.
thread.json
messages.jsonl
```
### `jan/` (The Root Directory)
This is the primary directory where all files related to Jan are stored. It typically resides in the user's home directory.
### `assistants/`
Stores configuration files for various AI assistants. Each assistant within this directory can have different settings.
- **Default Assistant**: Located in `/assistants/jan/`, it includes an `assistant.json` configuring the default settings and capabilities. The default sample of `assistan.json` is as follows:
Where AI personalities live. The default one (`/assistants/jan/`):
```json
{
@ -114,132 +100,127 @@ Stores configuration files for various AI assistants. Each assistant within this
"model": "*",
"instructions": ""
}
```
Each parameter in the file is defined as follows:
| Parameter | Description | Type | Default Value |
|-------------------------|-----------------------------------------------------------------------------------------------|---------|----------------------------------------------------|
| id | Identifier for the assistant, defaults to "jan". | string | jan |
| avatar | The avatar image for the assistant. | string | None |
| object | Specifies the assistant type in OpenAI-compatible API responses. | string | None |
| created_at | Timestamp indicating when the assistant was created. | string | None |
| name | Display name for the assistant. | string | Jan |
| description | A description of the assistant's role. | string | A default assistant that can use all downloaded models. |
| model | Defines which models the assistant can use, with * indicating all models are available. | string | * |
| instructions | Default instructions provided to new threads. | string | None |
| file_ids | Field for referencing file IDs in OpenAI-compatible responses. | string | None |
| tools | List of tools available for the assistant, with only the "retrieval" tool supported so far. | array | retrieval |
| type | Specifies the type of tool, default is "retrieval". | string | retrieval |
| enabled | Indicates whether the tool is enabled by default.| boolean | true |
| useTimeWeightedRetriever | Controls if the time-weighted retrieval feature is enabled. | boolean | false |
| settings | Configuration settings for the tool (retrieval tool in this case). | object | None |
| top_k | Number of top results to return in retrieval, with a default of 2. | number | 2 |
| chunk_size | Defines the size of text chunks to process for the retrieval tool. | number | 1024 |
| chunk_overlap | Determines the amount of overlap between text chunks in the retrieval process. | number | 64 |
| retrieval_template | Template for formatting the retrieval tool's responses to queries. | string | None |
Parameters:
| Parameter | Description | Type | Default |
|------------------------|--------------------------------------------------------------|---------|---------|
| id | Assistant identifier | string | jan |
| avatar | Assistant image | string | None |
| object | OpenAI API compatibility marker | string | None |
| created_at | Creation timestamp | string | None |
| name | Display name | string | Jan |
| description | Role description | string | Default |
| model | Allowed models (* = all) | string | * |
| instructions | Default thread instructions | string | None |
| file_ids | OpenAI compatibility field | string | None |
| tools | Available tools (retrieval only currently) | array | retrieval|
| type | Tool type | string | retrieval|
| enabled | Tool status | boolean | true |
| useTimeWeightedRetriever| Time-weighted retrieval toggle | boolean | false |
| settings | Tool configuration | object | None |
| top_k | Max retrieval results | number | 2 |
| chunk_size | Text chunk size | number | 1024 |
| chunk_overlap | Chunk overlap amount | number | 64 |
| retrieval_template | Response format template | string | None |
### `extensions/`
Extensions enhance Jan's functionality by adding new capabilities or integrating external services.
- **@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`).
- **extensions.json**: A file that lists all installed extensions and their metadata, taken from each extensions `package.json`. It helps avoid scanning all extension folders, improving performance.
Add-on central. Organization extensions live in `@janhq/`, solo ones in root.
### `logs/`
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:
- **[APP]**: App logs
- **[SERVER]**: API server logs
- **[SPECS]**: Hardware information logs
Debugging headquarters (`/logs/app.txt`):
- **[APP]**: Core logs
- **[SERVER]**: API drama
- **[SPECS]**: Hardware confessions
### `models/`
Stores the AI models that the assistants use to process requests and generate responses.
- **Model Configurations**: Each model directory, such as `/models/modelA/`, contains a `model.json` with settings specific to that model.
The silicon brain collection. Each model has its own `model.json`.
<Callout type="info">
To see the full list of `model.json` parameters, please see [here](/docs/models/model-parameters).
Full parameters: [here](/docs/models/model-parameters)
</Callout>
### `settings/`
General settings for the application are stored here, separate from individual assistant or engine configurations.
- **Extension-specific Settings**: Additional settings for extensions are stored in respective subdirectories under `/settings/@janhq/`. Each parameter in the file is defined as follows:
Control panel. Extension settings in `/settings/@janhq/`:
| Parameter | Description |
|-----------------|----------------------------------------------------------------------|
| `key` | The setting key. |
| `title` | The setting title. |
| `description` | The setting description. |
| `controllerType`| The type of setting component (checkbox, input, slider, etc.). |
| `controllerProps`| Properties of the controller (e.g., value, placeholder, textAlign). |
| `extensionName` | The extension ID, used to map with the parent extension. |
|----------------|----------------------------------------------------|
| key | Setting identifier |
| title | Display name |
| description | Setting explanation |
| controllerType | UI component type |
| controllerProps| Component properties |
| extensionName | Parent extension link |
- **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:
GPU settings (`settings.json`):
| Parameter | Description |
|----------------------|---------------------------------------------------------------------------------------------|
| `notify` | Whether notifications are enabled (true/false). |
| `run_mode` | The mode the application is running in (e.g., "cpu"). |
| `nvidia_driver.exist`| Whether the NVIDIA driver is present (true/false). |
| `nvidia_driver.version`| The version of the installed NVIDIA driver. |
| `cuda.exist` | Whether CUDA is available (true/false). |
| `cuda.version` | The version of CUDA installed. |
| `gpus[0].id` | The ID of the GPU (e.g., "0"). |
| `gpus[0].vram` | The amount of VRAM for the GPU (in MB). |
| `gpus[0].name` | The name of the GPU (e.g., "NVIDIA GeForce RTX 3050 Laptop GPU"). |
| `gpus[0].arch` | The architecture of the GPU (e.g., "ampere"). |
| `gpu_highest_vram` | The ID of the GPU with the highest VRAM. |
| `gpus_in_use` | The list of GPU IDs currently in use (e.g., "0"). |
| `is_initial` | Indicates whether it's the initial run (true/false). |
| `vulkan` | Whether Vulkan support is available (true/false). |
|----------------------|--------------------------------------------|
| notify | Notification status |
| run_mode | Operating mode |
| nvidia_driver.exist | NVIDIA driver presence |
| nvidia_driver.version| Driver version |
| cuda.exist | CUDA availability |
| cuda.version | CUDA version |
| gpus[0].id | GPU identifier |
| gpus[0].vram | GPU memory (MB) |
| gpus[0].name | GPU model |
| gpus[0].arch | GPU architecture |
| gpu_highest_vram | Most capable GPU |
| gpus_in_use | Active GPUs |
| is_initial | First run flag |
| vulkan | Vulkan support |
### `themes/`
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:
Visual wardrobe. Each theme's `theme.json`:
| Parameter | Description |
|----------------------|----------------------------------------------------------------------------------|
| `id` | The theme's ID. |
| `displayName` | Theme display name, as seen in theme settings. |
| `reduceTransparent` | Setting to reduce transparency of the window/background. |
| `nativeTheme` | Indicates whether the theme depends on the OS's light/dark settings. |
| `variables` | Contains all possible component configurations. |
|------------------|-------------------------------------------|
| id | Theme identifier |
| displayName | UI name |
| reduceTransparent| Transparency control |
| nativeTheme | OS theme sync |
| variables | Component settings |
### `threads/`
Chat archive. Each thread (`/threads/jan_unixstamp/`) contains:
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:
- `messages.jsonl`: Array of OpenAI compatible message objects belong to the thread. For example:
```jsonl
{"id":"01J6Y6FH8PFTHQB5PNJTHEN27C","thread_id":"jan_1725437954","type":"Thread","role":"assistant","content":
[{"type":"text","text":{"value":"Hello! Is there something I can help you with or would you like to chat?","annotations":
[]}}],"status":"ready","created":1725442802966,"updated":1725442802966,"object":"thread.message"}
- `messages.jsonl`:
```json
{
"id":"01J6Y6FH8PFTHQB5PNJTHEN27C",
"thread_id":"jan_1725437954",
"type":"Thread",
"role":"assistant",
"content":
[
{
"type": "text",
"text": {
"value": "Hello! Is there something I can help you with or would you like to chat?",
"annotations": []
}
}
],
"status": "ready",
"created": 1725442802966,
"updated": 1725442802966,
"object": "thread.message"
}
```
- `thread.json`: The thread's metadata that contains the following parameters:
- `thread.json`:
| Parameter | Description |
|----------------|---------------------------------------------------------------------------------------------------------------------------------------------|
| `id` | Thread's ID (can be generated by the folder name). |
| `object` | "thread" (OpenAI-compatible field). |
| `title` | Thread's title (editable in the GUI from the Thread List on the left panel). |
| `assistants` | Contains cloned assistant metadata and specialized settings for the thread. Includes all assistant settings mentioned under the Jan assistant section. |
| `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. |
| `metadata` | Additional thread data, such as `lastMessage`, which provides GUI information but does not use OpenAI-compatible fields. |
|------------|------------------------------------------------|
| id | Thread identifier |
| object | OpenAI compatibility marker |
| title | Thread name |
| assistants | Assistant configuration clone |
| model | Active model settings |
| metadata | Additional thread data |
## Delete Jan Data Folder
If you have uninstalled Jan, you may also want to delete the Jan data folder.
See detail instructions on [Mac](/docs/desktop/mac#step-2-clean-up-data-optional), [Window](/docs/desktop/windows#step-2-handle-jan-data), [Linux](docs/desktop/linux#uninstall-jan).
## Delete Jan Data
Uninstall guides: [Mac](/docs/desktop/mac#step-2-clean-up-data-optional),
[Windows](/docs/desktop/windows#step-2-handle-jan-data), or [Linux](docs/desktop/linux#uninstall-jan).

View File

@ -1,6 +1,6 @@
---
title: Linux
description: Get started quickly with Jan, a ChatGPT-alternative that runs on your own computer, with a local API server. Learn how to install Jan and select an AI model to start chatting.
description: Get started quickly with Jan, an AI chat application that runs 100% offline on your desktop & mobile (*coming soon*).
keywords:
[
Jan,
@ -28,9 +28,10 @@ import { Settings } from 'lucide-react'
# Linux Installation
To install Jan desktop on Linux, follow the steps below:
Instructions for installing Jan on Linux.
## Compatibility
Ensure that your system meets the following requirements to use Jan effectively:
System requirements:
<Tabs items={['OS', 'CPU', 'RAM', 'GPU', 'Disk']}>
@ -59,7 +60,7 @@ Ensure that your system meets the following requirements to use Jan effectively:
- openSUSE (Both desktop and server)
<Callout type="info">
Please check whether your Linux distribution supports desktop, server, or both environments.
Desktop or server support varies by distribution.
</Callout>
</Tabs.Tab>
@ -69,7 +70,7 @@ Please check whether your Linux distribution supports desktop, server, or both e
- Excavator processors (Q2 2015) and newer
<Callout type="info">
Jan requires a processor with **AVX2 or newer** for optimal performance. See [full list of supported processors](https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#CPUs_with_AVX2). While Jan may run on processors with only AVX support, performance will be significantly reduced.
CPU must support AVX2. See [supported processors](https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#CPUs_with_AVX2).
</Callout>
</Tabs.Tab>
@ -79,7 +80,7 @@ Jan requires a processor with **AVX2 or newer** for optimal performance. See [fu
- 32GB → up to 13B parameter models (int4)
<Callout type="info">
DDR2 RAM minimum supported, newer generations recommended for better performance.
DDR3 or newer recommended.
</Callout>
</Tabs.Tab>
@ -89,85 +90,75 @@ DDR2 RAM minimum supported, newer generations recommended for better performance
- 12GB → up to 13B parameter models (int4)
<Callout type="info">
Minimum 6GB VRAM recommended for NVIDIA, AMD, or Intel Arc GPUs.
6GB VRAM minimum required.
</Callout>
</Tabs.Tab>
<Tabs.Tab>
At least **10GB** for app installation and model downloads.
Minimum 10GB free disk space required.
</Tabs.Tab>
</Tabs>
## Install Jan
To install Jan, follow the steps below:
Installation steps:
<Steps>
### Step 1: Download Application
Jan provides 3 types of releases:
Available releases:
<Tabs items={['Stable Release', 'Beta Release', 'Nightly Release']}>
<Tabs.Tab>
Please download Jan from official distributions, or build it from source.
- Download Jan on **Ubuntu**: [jan.deb](https://app.jan.ai/download/latest/linux-amd64-deb)
- Download Jan on **Fedora**: [jan.AppImage](https://app.jan.ai/download/latest/linux-amd64-appimage)
Stable release:
- Ubuntu: [jan.deb](https://app.jan.ai/download/latest/linux-amd64-deb)
- Others: [Jan.AppImage](https://app.jan.ai/download/latest/linux-amd64-appimage)
- Official Website: https://jan.ai/download
</Tabs.Tab>
<Tabs.Tab>
Beta releases let you test new features, which may be buggy:
- Download Jan's Beta Version on **Ubuntu**: [jan.deb](https://app.jan.ai/download/beta/linux-amd64-deb)
- Download Jan's Beta Version on **Fedora**: [jan.AppImage](https://app.jan.ai/download/beta/linux-amd64-appimage)
Beta release:
- Ubuntu: [jan.deb](https://app.jan.ai/download/beta/linux-amd64-deb)
- Others: [Jan.AppImage](https://app.jan.ai/download/beta/linux-amd64-appimage)
<Callout type="info">
Keep in mind that this build might crash frequently or contain bugs!
May contain bugs. Use with caution.
</Callout>
</Tabs.Tab>
<Tabs.Tab>
Nightly releases are for internal team to test new feature builds everyday, which is very buggy:
- Download Jan's Nightly Version on **Ubuntu**: [jan.deb](https://app.jan.ai/download/nightly/linux-amd64-deb)
- Download Jan's Nightly Version on **Fedora**: [jan.AppImage](https://app.jan.ai/download/nightly/linux-amd64-appimage)
Development build:
- Ubuntu: [jan.deb](https://app.jan.ai/download/nightly/linux-amd64-deb)
- Others: [Jan.AppImage](https://app.jan.ai/download/nightly/linux-amd64-appimage)
<Callout type="info">
Keep in mind that this build crashes frequently or contains bugs!
Experimental version. Expect instability.
</Callout>
</Tabs.Tab>
</Tabs>
### Step 2: Install Application
Here are the steps to install Jan on Linux based on your Linux distribution:
Installation commands:
<Tabs items={['Ubuntu', 'Fedora']}>
<Tabs items={['Ubuntu', 'Others']}>
<Tabs.Tab>
Install Jan using either **dpkg** or **apt-get**:
##### dpkg
```bash
# Install Jan using dpkg
sudo dpkg -i jan-linux-amd64-{version}.deb
```
##### apt-get
```bash
# Install Jan using apt-get
sudo apt-get install ./jan-linux-amd64-{version}.deb
# where jan-linux-amd64-{version}.deb is the path to the Jan package
```
</Tabs.Tab>
<Tabs.Tab>
1. Make the AppImage executable using the following command:
```bash
chmod +x jan-linux-x86_64-{version}.AppImage
```
2. Run the AppImage file using the following command:
```bash
./jan-linux-x86_64-{version}.AppImage
```
</Tabs.Tab>
@ -178,7 +169,7 @@ chmod +x jan-linux-x86_64-{version}.AppImage
## Data Folder
By default, Jan is installed in the following directory:
Default locations:
```bash
# Custom installation directory
@ -190,11 +181,11 @@ or
~/.config/Jan/data
```
See [Jan Data Folder](/docs/data-folder) for more details about the data folder structure.
See [Jan Data Folder](/docs/data-folder) for details.
## GPU Acceleration
Once Jan is installed and you have a GPU, you can use your GPU to accelerate the model's performance.
Configuration for GPU support:
<Tabs items={['NVIDIA GPU', 'AMD GPU', 'Intel Arc GPU']}>
@ -202,49 +193,49 @@ Once Jan is installed and you have a GPU, you can use your GPU to accelerate the
<Steps>
### Step 1: Verify Hardware & Install Dependencies
**1.1. Check GPU Detection**
To verify that your system recognizes the NVIDIA GPU:
```
```sh
lspci | grep -i nvidia
```
**1.2. Install Required components**
**NVIDIA Driver:**
1. Install [NVIDIA Driver](https://www.nvidia.com/en-us/drivers/) for your GPU (NVIDIA driver **470.63.01 or higher**).
2. Verify installation:
```
**NVIDIA Driver:**
1. Install [NVIDIA Driver](https://www.nvidia.com/en-us/drivers/) (version **470.63.01+**)
2. Verify:
```sh
nvidia-smi
```
Expected output should show your GPU model and driver version.
**CUDA Toolkit:**
1. Download and install [CUDA toolkit](https://developer.nvidia.com/cuda-downloads) (**CUDA 11.7 or higher**)
2. Verify installation:
```
1. Install [CUDA toolkit](https://developer.nvidia.com/cuda-downloads) (**11.7+**)
2. Verify:
```sh
nvcc --version
```
**Linux Additional Requirements:**
1. Required packages are installed:
```
**Additional Requirements:**
```sh
sudo apt update
sudo apt install gcc-11 g++-11 cpp-11
```
2. Set up CUDA environment:
```
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
```
See [detailed instructions](https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#post-installation-actions).
[Documentation](https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#post-installation-actions)
### Step 2: Enable GPU Acceleration
1. Navigate to **Settings** (<Settings width={16} height={16} style={{display:"inline"}}/>) > **Local Engine** > **Llama.cpp**
2. At **llama-cpp Backend**, select backend. For example `windows-amd64-vulkan` if you have and AMD gaphic card. For more info, see [our guide](/docs/local-engines/llama-cpp).
1. Navigate to **Settings** (<Settings width={16} height={16} style={{display:"inline"}}/>) > **Local Engine** > **Llama.cpp**
2. Select appropriate backend in **llama-cpp Backend**. Details in our [guide](/docs/local-engines/llama-cpp).
<Callout type="info">
While **Vulkan** can enable Nvidia GPU acceleration in the Jan app, **CUDA** is recommended for faster performance.
CUDA offers better performance than Vulkan.
</Callout>
</Steps>
@ -252,83 +243,45 @@ While **Vulkan** can enable Nvidia GPU acceleration in the Jan app, **CUDA** is
</Tabs.Tab>
<Tabs.Tab>
AMD GPUs require **Vulkan** support.
Requires Vulkan support.
1. Navigate to **Settings** (<Settings width={16} height={16} style={{display:"inline"}}/>) > **Local Engine** > **Llama.cpp**
2. At **llama-cpp Backend**, select backend. For example `windows-amd64-vulkan` if you have and AMD gaphic card. For more info, see [our guide](/docs/local-engines/llama-cpp).
2. Select appropriate backend in **llama-cpp Backend**. Details in our [guide](/docs/local-engines/llama-cpp).
</Tabs.Tab>
<Tabs.Tab>
Intel Arc GPUs require **Vulkan** support.
Requires Vulkan support.
1. Navigate to **Settings** (<Settings width={16} height={16} style={{display:"inline"}}/>) > **Local Engine** > **Llama.cpp**
2. At **llama-cpp Backend**, select backend. For example `windows-amd64-vulkan` if you have and AMD gaphic card. For more info, see [our guide](/docs/local-engines/llama-cpp).
2. Select appropriate backend in **llama-cpp Backend**. Details in our [guide](/docs/local-engines/llama-cpp).
</Tabs.Tab>
</Tabs>
## Uninstall Jan
Open **Terminal** and run these commands to remove all Jan-related data:
<Tabs items={['Ubuntu', 'Fedora']}>
Removal commands:
<Tabs items={['Ubuntu', 'Others']}>
<Tabs.Tab>
```bash
# Uninstall Jan
sudo apt-get remove jan
# Remove the Jan data folder
rm -rf Jan
# Delete the application data
rm -rf ~/.config/Jan/data
# Delete the application cache
rm -rf ~/.config/Jan/cache
```
</Tabs.Tab>
<Tabs.Tab>
```bash
# Uninstall Jan
sudo dnf remove jan
# Delete the application data
rm -rf ~/.config/Jan/data
# Delete the application cache
rm -rf ~/.config/Jan/cache
```
</Tabs.Tab>
</Tabs>
<Callout type="warning">
Deleted data folders cannot be restored. Make sure to backup any important data before proceeding with deletion.
These commands permanently delete application data.
</Callout>
{/* ## FAQs
<FAQBox title="What are Nightly Releases, and how can I access them?">
Nightly Releases allow you to test new features and previews of upcoming stable releases. You can download them from Jan's GitHub repository. However, remember that these builds might contain bugs and crash frequently.
</FAQBox>
<FAQBox title="Can I move the Jan data folder to a different location?">
Yes, you can move the Jan data folder.
</FAQBox>
<FAQBox title="How do I enable GPU acceleration for better performance?">
Depending on your GPU type (NVIDIA, AMD, or Intel), follow the respective instructions provided in the [GPU Acceleration](https://www.notion.so/docs/desktop/windows#gpu-acceleration) section above.
</FAQBox>
<FAQBox title="Can I recover the deleted Jan data folder after uninstallation?">
No, it cannot be restored once you delete the Jan data folder during uninstallation.
</FAQBox>
<FAQBox title="Can I use the AppImage in any distribution?">
Yes, `.AppImage` is designed to be distribution-agnostic, meaning it can run on various Linux distributions without requiring installation. You can use the Jan `.AppImage` on any Linux distribution that supports the `AppImage` format.
</FAQBox>
<FAQBox title="Can the .deb file be used on distributions other than Debian-based ones?">
No, `.deb` files are specifically intended for Debian-based distributions and may not be compatible with other Linux distributions.
</FAQBox>
<Callout type="info">
Warning: If you have any trouble during installation, please see our [Troubleshooting](/docs/troubleshooting) guide to resolve your problem.
</Callout>
*/}

View File

@ -1,6 +1,6 @@
---
title: Mac
description: Get started quickly with Jan, a ChatGPT-alternative that runs on your own computer, with a local API server. Learn how to install Jan and select an AI model to start chatting.
description: Get started quickly with Jan - a local AI that runs on your computer. Install Jan and pick your model to start chatting.
keywords:
[
Jan,
@ -27,11 +27,11 @@ import { Callout, Steps } from 'nextra/components'
# Mac Installation
Jan has been developed as a Mac Universal application, allowing it to run natively on both Apple Silicon and Intel-based Macs.
Jan runs natively on both Apple Silicon and Intel-based Macs.
## Compatibility
### Minimum Requirements
Ensure that your system meets the following requirements to use Jan effectively:
Your Mac needs:
- **Operating System:** MacOSX 13.6 or higher
- **Memory:**
- 8GB → up to 3B parameter models
@ -41,30 +41,30 @@ Ensure that your system meets the following requirements to use Jan effectively:
### Mac Performance Guide
<Callout type="info">
**Apple Silicon Macs** leverage Metal for GPU acceleration, providing faster performance than **Apple Intel Macs**, which rely solely on CPU processing.
**Apple Silicon Macs** use Metal for GPU acceleration, making them faster than **Apple Intel Macs**, which operate on CPU only.
</Callout>
**Apple Silicon (M1, M2, M3)**
- Metal acceleration enabled by default, no configuration required
- Optimized GPU-accelerated performance
- Metal acceleration enabled by default
- GPU-accelerated processing
**Intel-based Mac**
- CPU-only processing
- Uses regular processor, works slower
- CPU processing only
- Standard performance
_To verify your Mac's processor architecture: Apple menu  → About This Mac._
_Check your Mac's processor: Apple menu → About This Mac_
## Install Jan
To install Jan, follow the steps below:
Installation steps:
<Steps>
### Step 1: Download Application
Jan provides 3 types of releases:
Select version:
<Tabs items={['Stable Release', 'Beta Release', 'Nightly Release']}>
<Tabs.Tab>
Please download Jan from official distributions, or build it from source.
Get Jan from here:
- [Download Jan's Stable Version](https://app.jan.ai/download/latest/mac-universal)
- Official Website: https://jan.ai/download
@ -72,22 +72,22 @@ Please download Jan from official distributions, or build it from source.
</Tabs.Tab>
<Tabs.Tab>
Beta releases let you test new features, which may be buggy:
Beta: New features with potential instability.
[Download Jan's Beta Version](https://app.jan.ai/download/beta/mac-universal)
<Callout type="info">
Keep in mind that this build might crash frequently or contain bugs!
<Callout type="warning">
May contain bugs.
</Callout>
</Tabs.Tab>
<Tabs.Tab>
Nightly releases are for internal team to test new feature builds everyday, which is very buggy:
Nightly: Latest features, less stable.
[Download Jan's Nightly Version](https://app.jan.ai/download/nightly/mac-universal)
<Callout type="info">
Keep in mind that this build crashes frequently or contains bugs!
Expect potential instability.
</Callout>
</Tabs.Tab>
</Tabs>
@ -95,23 +95,23 @@ Keep in mind that this build crashes frequently or contains bugs!
### Step 2: Install Application
1. Download and open the Jan installer (`.dmg` file)
2. Drag the Jan icon to your **Applications** folder
3. Installation will take a few moments to complete
4. Launch Jan from your Applications folder
1. Open the Jan installer (`.dmg` file)
2. Drag Jan to **Applications**
3. Wait a moment
4. Launch Jan
</Steps>
## Jan Data Folder
By default, Jan is installed in the following directory:
Default location:
```sh
# Default installation directory
~/Library/Application\ Support/Jan/data
```
See [Jan Data Folder](/docs/data-folder) for more details about the data folder structure.
See [Jan Data Folder](/docs/data-folder) for details.
## Uninstall Jan
@ -119,44 +119,47 @@ See [Jan Data Folder](/docs/data-folder) for more details about the data folder
<Steps>
### Step 1: Remove Application
1. If Jan is currently open, exit the app
2. Open **Finder** menu.
3. Navigate to **Applications**
4. Locate Jan (or use the search bar)
5. Remove the application using any method:
1. Close Jan if it's running
2. Open **Finder**
3. Go to **Applications**
4. Find Jan
5. Pick your removal method:
- Drag to **Trash**
- Right-click → **Move to Trash**
- Select and press **Command-Delete**
- **Command-Delete**
### Step 2: Clean Up Data (Optional)
Open **Terminal** and run these commands to remove all Jan-related data:
Run this in **Terminal** to remove all data:
```bash
rm -rf ~/Library/Application\ Support/Jan/data
```
</Steps>
<Callout type="warning">
Deleted data folders cannot be restored. Make sure to backup any important data before proceeding with deletion.
This permanently deletes all data. Create backups if needed.
</Callout>
{/* ## FAQs
<FAQBox title="What are Nightly Releases, and how can I access them?">
Nightly Releases allow you to test new features and previews of upcoming stable releases. You can download them from Jan's GitHub repository. However, remember that these builds might contain bugs and crash frequently.
Nightly Releases allow you to test new features and previews of upcoming stable releases. You can download
them from Jan's GitHub repository. However, remember that these builds might contain bugs and crash frequently.
</FAQBox>
<FAQBox title="Can I move the Jan data folder to a different location?">
Yes, you can move the Jan data folder.
</FAQBox>
<FAQBox title="How do I enable GPU acceleration for better performance">
Depending on your Mac type (Apple Silicon or Intel), you won't be able to utilize the GPU acceleration feature if you have a Mac with an Intel processor.
Depending on your Mac type (Apple Silicon or Intel), you won't be able to utilize the GPU acceleration feature
if you have a Mac with an Intel processor.
</FAQBox>
<FAQBox title="Can I recover the deleted Jan data folder after uninstallation?">
No, it cannot be restored once you delete the Jan data folder during uninstallation.
</FAQBox>
<Callout type="info">
💡 Warning: If you have any trouble during installation, please see our [Troubleshooting](/docs/troubleshooting) guide to resolve your problem.
💡 Warning: If you have any trouble during installation, please see our [Troubleshooting](/docs/troubleshooting)
guide to resolve your problem.
</Callout>
*/}

View File

@ -1,6 +1,6 @@
---
title: Windows
description: Get started quickly with Jan, a ChatGPT-alternative that runs on your own computer, with a local API server. Learn how to install Jan and select an AI model to start chatting.
description: Run AI models locally on your Windows machine with Jan. Quick setup guide for local inference and chat.
keywords:
[
Jan,
@ -26,9 +26,8 @@ import { Settings } from 'lucide-react'
# Windows Installation
To install Jan desktop on Windows, follow the steps below:
## Compatibility
Ensure that your system meets the following requirements to use Jan effectively:
System requirements:
- **Operating System**: Windows 10 or higher.
- **CPU**
<Tabs items={['Intel', 'AMD']}>
@ -42,7 +41,8 @@ Ensure that your system meets the following requirements to use Jan effectively:
</Tabs>
<Callout type="info">
Jan requires a processor with **AVX2 or newer** for optimal performance. See [full list of supported processors](https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#CPUs_with_AVX2). While Jan may run on processors with only AVX support, performance will be significantly reduced.
Processor must support **AVX2 or newer**. See [full list of supported processors](https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#CPUs_with_AVX2).
Performance is significantly degraded on AVX-only processors.
</Callout>
- **Memory (RAM)**
@ -51,7 +51,7 @@ Jan requires a processor with **AVX2 or newer** for optimal performance. See [fu
- 32GB → up to 13B parameter models (int4)
<Callout type="info">
DDR2 RAM is supported but newer RAM generations are recommended for better performance.
Newer RAM generations provide better performance.
</Callout>
- **GPU**:
@ -63,71 +63,63 @@ DDR2 RAM is supported but newer RAM generations are recommended for better perfo
Minimum 6GB VRAM recommended for NVIDIA, AMD, or Intel Arc GPUs.
</Callout>
- **Storage:** Minimum 10GB free space for application and model downloads
- **Storage:** 10GB free space minimum for app and models
## Install Jan
To install Jan, follow the steps below:
<Steps>
### Step 1: Download Application
Jan provides 3 types of releases:
<Tabs items={['Stable Release', 'Beta Release', 'Nightly Release']}>
<Tabs.Tab>
Please download Jan from official distributions, or build it from source.
- [Download Jan's Stable Version](https://app.jan.ai/download/latest/win-x64)
- Official Website: https://jan.ai/download
- [Download Stable Jan](https://app.jan.ai/download/latest/win-x64)
- Official Website: [Download Jan](https://jan.ai/download)
</Tabs.Tab>
<Tabs.Tab>
Beta releases let you test new features, which may be buggy:
Beta: Contains newer features but may be unstable
[Download Jan's Beta Version](https://app.jan.ai/download/beta/win-x64)
[Download Beta Jan](https://app.jan.ai/download/beta/win-x64)
<Callout type="info">
Keep in mind that this build might crash frequently or contain bugs!
<Callout type="warning">
May be unstable
</Callout>
</Tabs.Tab>
<Tabs.Tab>
Nightly releases are for internal team to test new feature builds everyday, which is very buggy:
Nightly: Development build with latest features
[Download Jan's Nightly Version](https://app.jan.ai/download/nightly/win-x64)
[Download Nightly Jan](https://app.jan.ai/download/nightly/win-x64)
<Callout type="info">
Keep in mind that this build crashes frequently or contains bugs!
<Callout type="warning">
Unstable development build
</Callout>
</Tabs.Tab>
</Tabs>
### Step 2: Install Application
1. Once you have downloaded the Jan app `.exe` file, open the file.
2. Wait for Jan to be completely installed on your machine.
3. Once installed, you can access Jan on your machine.
1. Run the downloaded `.exe` file
2. Wait for installation to complete
3. Launch Jan
</Steps>
## Data Folder
By default, Jan is installed in the following directory:
Default installation path:
```
```sh
# Default installation directory
~/Users/<YourUsername>/AppData/Roaming/Jan/data
~\Users\<YourUsername>\AppData\Roaming\Jan\data
```
See [Jan Data Folder](/docs/data-folder) for more details about the data folder structure.
See [Jan Data Folder](/docs/data-folder) for complete folder structure details.
## GPU Acceleration
Jan can leverage your GPU to significantly improve model performance and inference speed. Here's how to enable GPU acceleration for different hardware:
<Tabs items={['NVIDIA GPU', 'AMD GPU', 'Intel Arc GPU']}>
@ -138,30 +130,29 @@ Jan can leverage your GPU to significantly improve model performance and inferen
### Step 1: Verify Hardware & Install Dependencies
**1.1. Check GPU Detection**
To verify that your system recognizes the NVIDIA GPU:
Verify GPU is recognized:
- Right-click desktop > NVIDIA Control Panel
- Or check Device Manager > Display Adapters
**1.2. Install Required components**
**NVIDIA Driver:**
1. Install [NVIDIA Driver](https://www.nvidia.com/en-us/drivers/) for your GPU (NVIDIA driver **470.63.01 or higher**).
1. Install [NVIDIA Driver](https://www.nvidia.com/en-us/drivers/) (version **470.63.01 or higher**)
2. Verify installation:
```
```sh
nvidia-smi
```
Expected output should show your GPU model and driver version.
**CUDA Toolkit:**
1. Download and install [CUDA toolkit](https://developer.nvidia.com/cuda-downloads) (**CUDA 11.7 or higher**)
1. Install [CUDA toolkit](https://developer.nvidia.com/cuda-downloads) (**11.7 or higher**)
2. Verify installation:
```
```sh
nvcc --version
```
### Step 2: Enable GPU Acceleration
1. Navigate to **Settings** (<Settings width={16} height={16} style={{display:"inline"}}/>) > **Local Engine** > **Llama.cpp**
2. At **llama-cpp Backend**, select backend. For example `windows-amd64-vulkan` if you have and AMD gaphic card. For more info, see [our guide](/docs/local-engines/llama-cpp).
2. Select appropriate backend in **llama-cpp Backend**. See [our guide](/docs/local-engines/llama-cpp).
</Steps>
@ -171,7 +162,7 @@ nvcc --version
AMD GPUs require **Vulkan** support.
1. Navigate to **Settings** (<Settings width={16} height={16} style={{display:"inline"}}/>) > **Local Engine** > **Llama.cpp**
2. At **llama-cpp Backend**, select backend. For example `windows-amd64-vulkan` if you have and AMD gaphic card. For more info, see [our guide](/docs/local-engines/llama-cpp).
2. Select appropriate backend in **llama-cpp Backend**. See [our guide](/docs/local-engines/llama-cpp).
</Tabs.Tab>
@ -179,12 +170,11 @@ AMD GPUs require **Vulkan** support.
Intel Arc GPUs require **Vulkan** support.
1. Navigate to **Settings** (<Settings width={16} height={16} style={{display:"inline"}}/>) > **Local Engine** > **Llama.cpp**
2. At **llama-cpp Backend**, select backend. For example `windows-amd64-vulkan` if you have and AMD gaphic card. For more info, see [our guide](/docs/local-engines/llama-cpp).
2. Select appropriate backend in **llama-cpp Backend**. See [our guide](/docs/local-engines/llama-cpp).
</Tabs.Tab>
</Tabs>
## Uninstall Jan
<Steps>
@ -201,38 +191,40 @@ Intel Arc GPUs require **Vulkan** support.
### Step 2: Clean Up Remaining Files
To ensure a complete uninstallation, remove the app cache:
Remove app data:
1. Navigate to `C:\Users\[username]\AppData\Roaming`
2. Delete Jan folder
or through **Terminal**:
```
or via **Terminal**:
```sh
cd C:\Users\%USERNAME%\AppData\Roaming
rmdir /S Jan
```
</Steps>
<Callout type="warning">
Deleted data folders cannot be restored. Make sure to backup any important data before proceeding with deletion.
Deleted data folders cannot be recovered. Backup important data first.
</Callout>
{/* ## FAQs
<FAQBox title="What are Nightly Releases, and how can I access them?">
Nightly Releases allow you to test new features and previews of upcoming stable releases. You can download them from Jan's GitHub repository. However, remember that these builds might contain bugs and crash frequently.
Nightly Releases allow you to test new features and previews of upcoming stable releases. You can download
them from Jan's GitHub repository. However, remember that these builds might contain bugs and crash frequently.
</FAQBox>
<FAQBox title="Can I move the Jan data folder to a different location?">
Yes, you can move the Jan data folder.
</FAQBox>
<FAQBox title="How do I enable GPU acceleration for better performance?">
Depending on your GPU type (NVIDIA, AMD, or Intel), follow the respective instructions provided in the [GPU Acceleration](https://www.notion.so/docs/desktop/windows#gpu-acceleration) section above.
Depending on your GPU type (NVIDIA, AMD, or Intel), follow the respective instructions provided in the
[GPU Acceleration](https://www.notion.so/docs/desktop/windows#gpu-acceleration) section above.
</FAQBox>
<FAQBox title="Can I recover the deleted Jan data folder after uninstallation?">
No, it cannot be restored once you delete the Jan data folder during uninstallation.
</FAQBox>
<Callout type="warning">
If you have any trouble during installation, please see our [Troubleshooting](https://www.notion.so/docs/troubleshooting) guide to resolve your problem.
If you have any trouble during installation, please see our [Troubleshooting](https://www.notion.so/docs/troubleshooting)
guide to resolve your problem.
</Callout> */}

View File

@ -5,11 +5,9 @@ keywords:
[
Jan AI,
Jan,
ChatGPT alternative,
local AI,
private AI,
conversational AI,
OpenAI platform alternative,
no-subscription fee,
large language model,
about Jan,
@ -25,51 +23,53 @@ import { Callout } from 'nextra/components'
# Privacy
Jan is an app that allows you to own your AI. We prioritize local AI models and your control over your data. This page explains what data we collect and why. No tricks.
Jan is your AI. Period. Here's what we do with data.
<Callout>
For a comprehensive overview of our privacy practices, you can read our full [Privacy Policy](/docs/privacy-policy).
Full privacy policy lives [here](/docs/privacy-policy), if you're into that sort of thing.
</Callout>
<Callout type="info">
We don't collect any data until you explicitly allow tracking.
Zero data collection until you say so. Scout's honor.
</Callout>
You'll be asked about your tracking preferences when you first launch the app, and you can change them at any time in Settings.
You'll choose tracking preferences at first launch. Change them anytime in Settings.
Regardless of your analytics permissions, Jan will **never** access your chat history, chat settings, or the language models you have used.
Jan will **never** peek at your chats, settings, or model choices. Not even if you ask nicely.
## Why and what we track
## Data We Track (With Permission)
To build a reliable, user-friendly AI that you own, we need to understand how Jan is used. If users allowed us to track, we collect product analytics data.
We track basic app usage to improve Jan. That's it.
### Product Analytics
We track data like how often the app is opened to check:
When allowed, we count:
- **Active Users**: How many people use Jan daily to measure engagement
- **Retention Rates**: To understand if users are finding value in Jan over time
- **Active Users**: Daily Jan-thusiasts
- **Retention**: Who sticks around
Product analytics data is tied to a randomly generated user ID. None of our usage data can be linked to your personal identity. Your chat history and personal data are never tracked.
Everything's tied to a random ID - not you. Your chats stay yours.
## What we **DO NOT** track
## What We Don't Track
<Callout type="info">
Even if you grant analytics permissions, Jan doesn't track many of your private activities.
Jan respects boundaries. We're committed to protecting your privacy.
</Callout>
- We don't track your conversations with Jan.
- We don't scan, upload, or look at your files.
- We don't collect anything tied to your identity.
- We don't track your prompts and prompt templates.
- We don't monitor context length or conversation length.
- We don't track the models you have used or their types.
- No chat snooping
- No file scanning
- No identity tracking
- No prompt logging
- No conversation monitoring
- No model tracking
You store the files and logs that are a priority for your privacy yourself.
Your private stuff stays private.
## Using Cloud Models
## Cloud Model Use
Jan allows you to connect cloud model APIs. If you choose to use cloud-based models (e.g. GPT, Claude models), the API provider handling the model will have access to your messages as part of processing the request. Again, Jan doesn't see or store these messages - they go directly to the provider. Remember: With local models, everything stays on your device, so no one - not even us- can see your messages.
Cloud models (like GPT, Claude) need to see your messages to work. That's between you and them - Jan just makes
the introduction. Local models keep everything at home where the neighbors can't gossip.
## Where we store & process data
We use [PostHog](https://posthog.com/eu) EU for analytics, ensuring all data is processed within the European Union. This setup complies with GDPR and other strict privacy regulations. PostHog lets us securely manage the data we collect. Read more [on PostHog's GDPR doc](https://posthog.com/docs/privacy/gdpr-compliance).
## Data Storage
[PostHog EU](https://posthog.com/eu) handles our analytics. All EU-based, GDPR-compliant, properly buttoned
up. Details in their [GDPR docs](https://posthog.com/docs/privacy/gdpr-compliance).