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 title: Jan Data Folder
description: Discover the Structure of Jan Data. description: A guide to Jan's data structure.
sidebar_position: 2 sidebar_position: 2
keywords: keywords:
[ [
@ -25,19 +25,17 @@ import { Settings, FolderOpen } from 'lucide-react'
# Jan Data Folder # 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. Jan stores your data locally in JSON format. Your data is yours alone.
This guide helps you understand where and how this data is stored.
## Open Jan Data Folder ## Open Jan Data Folder
To open from Jan's interface: Via Jan:
1. In Jan, navigate to **Settings** (<Settings width={16} height={16} style={{display:"inline"}}/>) > **Advanced Settings** 1. 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 2. Click <FolderOpen width={16} height={16} style={{display:"inline"}}/>
<br/> <br/>
![Open Jan Data Folder](./_assets/settings-11.png) ![Open Jan Data Folder](./_assets/settings-11.png)
<br/> <br/>
To open through Terminal: Via Terminal:
```bash ```bash
# Windows # Windows
@ -47,22 +45,16 @@ cd %APPDATA%/Jan/data
cd ~/Library/Application\ Support/Jan/data cd ~/Library/Application\ Support/Jan/data
# Linux # Linux
## Custom installation directory cd $XDG_CONFIG_HOME/Jan/data # Custom install
cd $XDG_CONFIG_HOME/Jan/data cd ~/.config/Jan/data # Default install
# or
## Default installation directory
cd ~/.config/Jan/data
``` ```
## Folder Structure ## Directory Structure
Jan app data folder should have the following folder structure:
<Callout type="info"> <Callout type="info">
Jan is stored in the root `~/jan` by default. Root directory: `~/jan`
</Callout> </Callout>
```yaml ```sh
/assistants /assistants
/jan /jan
assistant.json assistant.json
@ -93,15 +85,9 @@ Jan is stored in the root `~/jan` by default.
thread.json thread.json
messages.jsonl 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/` ### `assistants/`
Where AI personalities live. The default one (`/assistants/jan/`):
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:
```json ```json
{ {
@ -114,132 +100,127 @@ Stores configuration files for various AI assistants. Each assistant within this
"model": "*", "model": "*",
"instructions": "" "instructions": ""
} }
``` ```
Each parameter in the file is defined as follows: Parameters:
| 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 |
| 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/`
Add-on central. Organization extensions live in `@janhq/`, solo ones in root.
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.
### `logs/` ### `logs/`
Debugging headquarters (`/logs/app.txt`):
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]**: Core logs
- **[APP]**: App logs - **[SERVER]**: API drama
- **[SERVER]**: API server logs - **[SPECS]**: Hardware confessions
- **[SPECS]**: Hardware information logs
### `models/` ### `models/`
The silicon brain collection. Each model has its own `model.json`.
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.
<Callout type="info"> <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> </Callout>
### `settings/` ### `settings/`
Control panel. Extension settings in `/settings/@janhq/`:
General settings for the application are stored here, separate from individual assistant or engine configurations. | Parameter | Description |
|----------------|----------------------------------------------------|
- **Extension-specific Settings**: Additional settings for extensions are stored in respective subdirectories under `/settings/@janhq/`. Each parameter in the file is defined as follows: | key | Setting identifier |
| title | Display name |
| Parameter | Description | | description | Setting explanation |
|-----------------|----------------------------------------------------------------------| | controllerType | UI component type |
| `key` | The setting key. | | controllerProps| Component properties |
| `title` | The setting title. | | extensionName | Parent extension link |
| `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. |
- **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:
| 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). |
GPU settings (`settings.json`):
| Parameter | Description |
|----------------------|--------------------------------------------|
| 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/` ### `themes/`
Visual wardrobe. Each theme's `theme.json`:
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: | Parameter | Description |
|------------------|-------------------------------------------|
| Parameter | Description | | id | Theme identifier |
|----------------------|----------------------------------------------------------------------------------| | displayName | UI name |
| `id` | The theme's ID. | | reduceTransparent| Transparency control |
| `displayName` | Theme display name, as seen in theme settings. | | nativeTheme | OS theme sync |
| `reduceTransparent` | Setting to reduce transparency of the window/background. | | variables | Component settings |
| `nativeTheme` | Indicates whether the theme depends on the OS's light/dark settings. |
| `variables` | Contains all possible component configurations. |
### `threads/` ### `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`:
```json
- `messages.jsonl`: Array of OpenAI compatible message objects belong to the thread. For example: {
"id":"01J6Y6FH8PFTHQB5PNJTHEN27C",
```jsonl "thread_id":"jan_1725437954",
{"id":"01J6Y6FH8PFTHQB5PNJTHEN27C","thread_id":"jan_1725437954","type":"Thread","role":"assistant","content": "type":"Thread",
[{"type":"text","text":{"value":"Hello! Is there something I can help you with or would you like to chat?","annotations": "role":"assistant",
[]}}],"status":"ready","created":1725442802966,"updated":1725442802966,"object":"thread.message"} "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 | | Parameter | Description |
|----------------|---------------------------------------------------------------------------------------------------------------------------------------------| |------------|------------------------------------------------|
| `id` | Thread's ID (can be generated by the folder name). | | id | Thread identifier |
| `object` | "thread" (OpenAI-compatible field). | | object | OpenAI compatibility marker |
| `title` | Thread's title (editable in the GUI from the Thread List on the left panel). | | title | Thread name |
| `assistants` | Contains cloned assistant metadata and specialized settings for the thread. Includes all assistant settings mentioned under the Jan assistant section. | | assistants | Assistant configuration clone |
| `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. | | model | Active model settings |
| `metadata` | Additional thread data, such as `lastMessage`, which provides GUI information but does not use OpenAI-compatible fields. | | metadata | Additional thread data |
## Delete Jan Data
## Delete Jan Data Folder 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).
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).

View File

@ -1,6 +1,6 @@
--- ---
title: Linux 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: keywords:
[ [
Jan, Jan,
@ -28,9 +28,10 @@ import { Settings } from 'lucide-react'
# Linux Installation # Linux Installation
To install Jan desktop on Linux, follow the steps below: Instructions for installing Jan on Linux.
## Compatibility ## Compatibility
Ensure that your system meets the following requirements to use Jan effectively: System requirements:
<Tabs items={['OS', 'CPU', 'RAM', 'GPU', 'Disk']}> <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) - openSUSE (Both desktop and server)
<Callout type="info"> <Callout type="info">
Please check whether your Linux distribution supports desktop, server, or both environments. Desktop or server support varies by distribution.
</Callout> </Callout>
</Tabs.Tab> </Tabs.Tab>
@ -69,7 +70,7 @@ Please check whether your Linux distribution supports desktop, server, or both e
- Excavator processors (Q2 2015) and newer - Excavator processors (Q2 2015) and newer
<Callout type="info"> <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> </Callout>
</Tabs.Tab> </Tabs.Tab>
@ -79,95 +80,85 @@ Jan requires a processor with **AVX2 or newer** for optimal performance. See [fu
- 32GB → up to 13B parameter models (int4) - 32GB → up to 13B parameter models (int4)
<Callout type="info"> <Callout type="info">
DDR2 RAM minimum supported, newer generations recommended for better performance. DDR3 or newer recommended.
</Callout> </Callout>
</Tabs.Tab> </Tabs.Tab>
<Tabs.Tab> <Tabs.Tab>
- 6GB → up to 3B parameter models (int4) - 6GB → up to 3B parameter models (int4)
- 8GB → up to 7B parameter models (int4) - 8GB → up to 7B parameter models (int4)
- 12GB → up to 13B parameter models (int4) - 12GB → up to 13B parameter models (int4)
<Callout type="info"> <Callout type="info">
Minimum 6GB VRAM recommended for NVIDIA, AMD, or Intel Arc GPUs. 6GB VRAM minimum required.
</Callout> </Callout>
</Tabs.Tab> </Tabs.Tab>
<Tabs.Tab> <Tabs.Tab>
At least **10GB** for app installation and model downloads. Minimum 10GB free disk space required.
</Tabs.Tab> </Tabs.Tab>
</Tabs> </Tabs>
## Install Jan ## Install Jan
To install Jan, follow the steps below: Installation steps:
<Steps> <Steps>
### Step 1: Download Application ### Step 1: Download Application
Jan provides 3 types of releases: Available releases:
<Tabs items={['Stable Release', 'Beta Release', 'Nightly Release']}> <Tabs items={['Stable Release', 'Beta Release', 'Nightly Release']}>
<Tabs.Tab> <Tabs.Tab>
Please download Jan from official distributions, or build it from source. Stable release:
- Download Jan on **Ubuntu**: [jan.deb](https://app.jan.ai/download/latest/linux-amd64-deb) - 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) - Others: [Jan.AppImage](https://app.jan.ai/download/latest/linux-amd64-appimage)
- Official Website: https://jan.ai/download - Official Website: https://jan.ai/download
</Tabs.Tab> </Tabs.Tab>
<Tabs.Tab> <Tabs.Tab>
Beta releases let you test new features, which may be buggy: Beta release:
- Download Jan's Beta Version on **Ubuntu**: [jan.deb](https://app.jan.ai/download/beta/linux-amd64-deb) - 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) - Others: [Jan.AppImage](https://app.jan.ai/download/beta/linux-amd64-appimage)
<Callout type="info"> <Callout type="info">
Keep in mind that this build might crash frequently or contain bugs! May contain bugs. Use with caution.
</Callout> </Callout>
</Tabs.Tab> </Tabs.Tab>
<Tabs.Tab> <Tabs.Tab>
Nightly releases are for internal team to test new feature builds everyday, which is very buggy: Development build:
- Ubuntu: [jan.deb](https://app.jan.ai/download/nightly/linux-amd64-deb)
- Download Jan's Nightly Version on **Ubuntu**: [jan.deb](https://app.jan.ai/download/nightly/linux-amd64-deb) - Others: [Jan.AppImage](https://app.jan.ai/download/nightly/linux-amd64-appimage)
- Download Jan's Nightly Version on **Fedora**: [jan.AppImage](https://app.jan.ai/download/nightly/linux-amd64-appimage)
<Callout type="info"> <Callout type="info">
Keep in mind that this build crashes frequently or contains bugs! Experimental version. Expect instability.
</Callout> </Callout>
</Tabs.Tab> </Tabs.Tab>
</Tabs> </Tabs>
### Step 2: Install Application ### 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> <Tabs.Tab>
Install Jan using either **dpkg** or **apt-get**:
##### dpkg ##### dpkg
```bash ```bash
# Install Jan using dpkg
sudo dpkg -i jan-linux-amd64-{version}.deb sudo dpkg -i jan-linux-amd64-{version}.deb
``` ```
##### apt-get ##### apt-get
```bash ```bash
# Install Jan using apt-get
sudo apt-get install ./jan-linux-amd64-{version}.deb 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>
<Tabs.Tab> <Tabs.Tab>
1. Make the AppImage executable using the following command:
```bash ```bash
chmod +x jan-linux-x86_64-{version}.AppImage chmod +x jan-linux-x86_64-{version}.AppImage
```
2. Run the AppImage file using the following command:
```bash
./jan-linux-x86_64-{version}.AppImage ./jan-linux-x86_64-{version}.AppImage
``` ```
</Tabs.Tab> </Tabs.Tab>
@ -178,7 +169,7 @@ chmod +x jan-linux-x86_64-{version}.AppImage
## Data Folder ## Data Folder
By default, Jan is installed in the following directory: Default locations:
```bash ```bash
# Custom installation directory # Custom installation directory
@ -190,11 +181,11 @@ or
~/.config/Jan/data ~/.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 ## 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']}> <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> <Steps>
### Step 1: Verify Hardware & Install Dependencies ### Step 1: Verify Hardware & Install Dependencies
**1.1. Check GPU Detection** **1.1. Check GPU Detection**
To verify that your system recognizes the NVIDIA GPU: ```sh
```
lspci | grep -i nvidia lspci | grep -i nvidia
``` ```
**1.2. Install Required components** **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 nvidia-smi
``` ```
Expected output should show your GPU model and driver version.
**CUDA Toolkit:** **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 nvcc --version
``` ```
**Linux Additional Requirements:**
1. Required packages are installed: **Additional Requirements:**
```
```sh
sudo apt update sudo apt update
sudo apt install gcc-11 g++-11 cpp-11 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 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 ### 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"> <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> </Callout>
</Steps> </Steps>
@ -252,83 +243,45 @@ While **Vulkan** can enable Nvidia GPU acceleration in the Jan app, **CUDA** is
</Tabs.Tab> </Tabs.Tab>
<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** 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>
<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** 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>
</Tabs> </Tabs>
## Uninstall Jan ## Uninstall Jan
Open **Terminal** and run these commands to remove all Jan-related data: Removal commands:
<Tabs items={['Ubuntu', 'Fedora']}> <Tabs items={['Ubuntu', 'Others']}>
<Tabs.Tab> <Tabs.Tab>
```bash ```bash
# Uninstall Jan
sudo apt-get remove jan sudo apt-get remove jan
# Remove the Jan data folder
rm -rf Jan rm -rf Jan
# Delete the application data
rm -rf ~/.config/Jan/data rm -rf ~/.config/Jan/data
# Delete the application cache
rm -rf ~/.config/Jan/cache rm -rf ~/.config/Jan/cache
``` ```
</Tabs.Tab> </Tabs.Tab>
<Tabs.Tab> <Tabs.Tab>
```bash ```bash
# Uninstall Jan
sudo dnf remove jan sudo dnf remove jan
# Delete the application data
rm -rf ~/.config/Jan/data rm -rf ~/.config/Jan/data
# Delete the application cache
rm -rf ~/.config/Jan/cache rm -rf ~/.config/Jan/cache
``` ```
</Tabs.Tab> </Tabs.Tab>
</Tabs> </Tabs>
<Callout type="warning"> <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> </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 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: keywords:
[ [
Jan, Jan,
@ -27,11 +27,11 @@ import { Callout, Steps } from 'nextra/components'
# Mac Installation # 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 ## Compatibility
### Minimum Requirements ### Minimum Requirements
Ensure that your system meets the following requirements to use Jan effectively: Your Mac needs:
- **Operating System:** MacOSX 13.6 or higher - **Operating System:** MacOSX 13.6 or higher
- **Memory:** - **Memory:**
- 8GB → up to 3B parameter models - 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 ### Mac Performance Guide
<Callout type="info"> <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> </Callout>
**Apple Silicon (M1, M2, M3)** **Apple Silicon (M1, M2, M3)**
- Metal acceleration enabled by default, no configuration required - Metal acceleration enabled by default
- Optimized GPU-accelerated performance - GPU-accelerated processing
**Intel-based Mac** **Intel-based Mac**
- CPU-only processing - CPU processing only
- Uses regular processor, works slower - 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 ## Install Jan
To install Jan, follow the steps below: Installation steps:
<Steps> <Steps>
### Step 1: Download Application ### Step 1: Download Application
Jan provides 3 types of releases: Select version:
<Tabs items={['Stable Release', 'Beta Release', 'Nightly Release']}> <Tabs items={['Stable Release', 'Beta Release', 'Nightly Release']}>
<Tabs.Tab> <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) - [Download Jan's Stable Version](https://app.jan.ai/download/latest/mac-universal)
- Official Website: https://jan.ai/download - Official Website: https://jan.ai/download
@ -72,46 +72,46 @@ Please download Jan from official distributions, or build it from source.
</Tabs.Tab> </Tabs.Tab>
<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) [Download Jan's Beta Version](https://app.jan.ai/download/beta/mac-universal)
<Callout type="info"> <Callout type="warning">
Keep in mind that this build might crash frequently or contain bugs! May contain bugs.
</Callout> </Callout>
</Tabs.Tab> </Tabs.Tab>
<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) [Download Jan's Nightly Version](https://app.jan.ai/download/nightly/mac-universal)
<Callout type="info"> <Callout type="info">
Keep in mind that this build crashes frequently or contains bugs! Expect potential instability.
</Callout> </Callout>
</Tabs.Tab> </Tabs.Tab>
</Tabs> </Tabs>
### Step 2: Install Application ### Step 2: Install Application
1. Download and open the Jan installer (`.dmg` file) 1. Open the Jan installer (`.dmg` file)
2. Drag the Jan icon to your **Applications** folder 2. Drag Jan to **Applications**
3. Installation will take a few moments to complete 3. Wait a moment
4. Launch Jan from your Applications folder 4. Launch Jan
</Steps> </Steps>
## Jan Data Folder ## Jan Data Folder
By default, Jan is installed in the following directory: Default location:
```sh ```sh
# Default installation directory # Default installation directory
~/Library/Application\ Support/Jan/data ~/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 ## Uninstall Jan
@ -119,44 +119,47 @@ See [Jan Data Folder](/docs/data-folder) for more details about the data folder
<Steps> <Steps>
### Step 1: Remove Application ### Step 1: Remove Application
1. If Jan is currently open, exit the app 1. Close Jan if it's running
2. Open **Finder** menu. 2. Open **Finder**
3. Navigate to **Applications** 3. Go to **Applications**
4. Locate Jan (or use the search bar) 4. Find Jan
5. Remove the application using any method: 5. Pick your removal method:
- Drag to **Trash** - Drag to **Trash**
- Right-click → **Move to Trash** - Right-click → **Move to Trash**
- Select and press **Command-Delete** - **Command-Delete**
### Step 2: Clean Up Data (Optional) ### 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 ```bash
rm -rf ~/Library/Application\ Support/Jan/data rm -rf ~/Library/Application\ Support/Jan/data
``` ```
</Steps> </Steps>
<Callout type="warning"> <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> </Callout>
{/* ## FAQs {/* ## FAQs
<FAQBox title="What are Nightly Releases, and how can I access them?"> <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>
<FAQBox title="Can I move the Jan data folder to a different location?"> <FAQBox title="Can I move the Jan data folder to a different location?">
Yes, you can move the Jan data folder. Yes, you can move the Jan data folder.
</FAQBox> </FAQBox>
<FAQBox title="How do I enable GPU acceleration for better performance"> <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>
<FAQBox title="Can I recover the deleted Jan data folder after uninstallation?"> <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. No, it cannot be restored once you delete the Jan data folder during uninstallation.
</FAQBox> </FAQBox>
<Callout type="info"> <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> </Callout>
*/} */}

View File

@ -1,6 +1,6 @@
--- ---
title: Windows 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: keywords:
[ [
Jan, Jan,
@ -26,9 +26,8 @@ import { Settings } from 'lucide-react'
# Windows Installation # Windows Installation
To install Jan desktop on Windows, follow the steps below:
## Compatibility ## Compatibility
Ensure that your system meets the following requirements to use Jan effectively: System requirements:
- **Operating System**: Windows 10 or higher. - **Operating System**: Windows 10 or higher.
- **CPU** - **CPU**
<Tabs items={['Intel', 'AMD']}> <Tabs items={['Intel', 'AMD']}>
@ -42,7 +41,8 @@ Ensure that your system meets the following requirements to use Jan effectively:
</Tabs> </Tabs>
<Callout type="info"> <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> </Callout>
- **Memory (RAM)** - **Memory (RAM)**
@ -51,83 +51,75 @@ Jan requires a processor with **AVX2 or newer** for optimal performance. See [fu
- 32GB → up to 13B parameter models (int4) - 32GB → up to 13B parameter models (int4)
<Callout type="info"> <Callout type="info">
DDR2 RAM is supported but newer RAM generations are recommended for better performance. Newer RAM generations provide better performance.
</Callout> </Callout>
- **GPU**: - **GPU**:
- 6GB → up to 3B parameter models - 6GB → up to 3B parameter models
- 8GB → up to 7B parameter models - 8GB → up to 7B parameter models
- 12GB → up to 13B parameter models - 12GB → up to 13B parameter models
<Callout type="info"> <Callout type="info">
Minimum 6GB VRAM recommended for NVIDIA, AMD, or Intel Arc GPUs. Minimum 6GB VRAM recommended for NVIDIA, AMD, or Intel Arc GPUs.
</Callout> </Callout>
- **Storage:** Minimum 10GB free space for application and model downloads - **Storage:** 10GB free space minimum for app and models
## Install Jan ## Install Jan
To install Jan, follow the steps below:
<Steps> <Steps>
### Step 1: Download Application ### Step 1: Download Application
Jan provides 3 types of releases:
<Tabs items={['Stable Release', 'Beta Release', 'Nightly Release']}> <Tabs items={['Stable Release', 'Beta Release', 'Nightly Release']}>
<Tabs.Tab> <Tabs.Tab>
Please download Jan from official distributions, or build it from source. - [Download Stable Jan](https://app.jan.ai/download/latest/win-x64)
- Official Website: [Download Jan](https://jan.ai/download)
- [Download Jan's Stable Version](https://app.jan.ai/download/latest/win-x64)
- Official Website: https://jan.ai/download
</Tabs.Tab> </Tabs.Tab>
<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"> <Callout type="warning">
Keep in mind that this build might crash frequently or contain bugs! May be unstable
</Callout> </Callout>
</Tabs.Tab> </Tabs.Tab>
<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"> <Callout type="warning">
Keep in mind that this build crashes frequently or contains bugs! Unstable development build
</Callout> </Callout>
</Tabs.Tab> </Tabs.Tab>
</Tabs> </Tabs>
### Step 2: Install Application ### Step 2: Install Application
1. Once you have downloaded the Jan app `.exe` file, open the file. 1. Run the downloaded `.exe` file
2. Wait for Jan to be completely installed on your machine. 2. Wait for installation to complete
3. Once installed, you can access Jan on your machine. 3. Launch Jan
</Steps> </Steps>
## Data Folder ## Data Folder
By default, Jan is installed in the following directory: Default installation path:
``` ```sh
# Default installation directory # 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 ## 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']}> <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 ### Step 1: Verify Hardware & Install Dependencies
**1.1. Check GPU Detection** **1.1. Check GPU Detection**
To verify that your system recognizes the NVIDIA GPU: Verify GPU is recognized:
- Right-click desktop > NVIDIA Control Panel - Right-click desktop > NVIDIA Control Panel
- Or check Device Manager > Display Adapters - Or check Device Manager > Display Adapters
**1.2. Install Required components** **1.2. Install Required components**
**NVIDIA Driver:** **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: 2. Verify installation:
``` ```sh
nvidia-smi nvidia-smi
``` ```
Expected output should show your GPU model and driver version.
**CUDA Toolkit:** **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: 2. Verify installation:
``` ```sh
nvcc --version nvcc --version
``` ```
### Step 2: Enable GPU Acceleration ### Step 2: Enable GPU Acceleration
1. Navigate to **Settings** (<Settings width={16} height={16} style={{display:"inline"}}/>) > **Local Engine** > **Llama.cpp** 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> </Steps>
@ -171,20 +162,19 @@ nvcc --version
AMD GPUs require **Vulkan** support. AMD GPUs require **Vulkan** support.
1. Navigate to **Settings** (<Settings width={16} height={16} style={{display:"inline"}}/>) > **Local Engine** > **Llama.cpp** 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.Tab>
<Tabs.Tab> <Tabs.Tab>
Intel Arc 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** 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.Tab>
</Tabs> </Tabs>
## Uninstall Jan ## Uninstall Jan
<Steps> <Steps>
@ -201,38 +191,40 @@ Intel Arc GPUs require **Vulkan** support.
### Step 2: Clean Up Remaining Files ### 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` 1. Navigate to `C:\Users\[username]\AppData\Roaming`
2. Delete Jan folder 2. Delete Jan folder
or through **Terminal**: or via **Terminal**:
``` ```sh
cd C:\Users\%USERNAME%\AppData\Roaming cd C:\Users\%USERNAME%\AppData\Roaming
rmdir /S Jan rmdir /S Jan
``` ```
</Steps> </Steps>
<Callout type="warning"> <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> </Callout>
{/* ## FAQs {/* ## FAQs
<FAQBox title="What are Nightly Releases, and how can I access them?"> <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>
<FAQBox title="Can I move the Jan data folder to a different location?"> <FAQBox title="Can I move the Jan data folder to a different location?">
Yes, you can move the Jan data folder. Yes, you can move the Jan data folder.
</FAQBox> </FAQBox>
<FAQBox title="How do I enable GPU acceleration for better performance?"> <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>
<FAQBox title="Can I recover the deleted Jan data folder after uninstallation?"> <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. No, it cannot be restored once you delete the Jan data folder during uninstallation.
</FAQBox> </FAQBox>
<Callout type="warning"> <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> */} </Callout> */}

View File

@ -5,11 +5,9 @@ keywords:
[ [
Jan AI, Jan AI,
Jan, Jan,
ChatGPT alternative,
local AI, local AI,
private AI, private AI,
conversational AI, conversational AI,
OpenAI platform alternative,
no-subscription fee, no-subscription fee,
large language model, large language model,
about Jan, about Jan,
@ -25,51 +23,53 @@ import { Callout } from 'nextra/components'
# Privacy # 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> <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>
<Callout type="info"> <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> </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 ### 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 - **Active Users**: Daily Jan-thusiasts
- **Retention Rates**: To understand if users are finding value in Jan over time - **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"> <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> </Callout>
- We don't track your conversations with Jan. - No chat snooping
- We don't scan, upload, or look at your files. - No file scanning
- We don't collect anything tied to your identity. - No identity tracking
- We don't track your prompts and prompt templates. - No prompt logging
- We don't monitor context length or conversation length. - No conversation monitoring
- We don't track the models you have used or their types. - 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 ## Data Storage
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). [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).