# Table of Contents - [Onboarding - Msty Docs](#onboarding-msty-docs) - [Download - Msty Docs](#download-msty-docs) - [Creating a Knowledge Stack - Msty Docs](#creating-a-knowledge-stack-msty-docs) - [Understanding Embeddings - Msty Docs](#understanding-embeddings-msty-docs) - [OpenAI Deep Research like service with Msty - Msty Docs](#openai-deep-research-like-service-with-msty-msty-docs) - [Download Offline Models - Msty Docs](#download-offline-models-msty-docs) - [Stuck at App Update - Msty Docs](#stuck-at-app-update-msty-docs) - [Export Chat - Msty Docs](#export-chat-msty-docs) - [Model Selector - Msty Docs](#model-selector-msty-docs) - [Capture Local AI Logs - Msty Docs](#capture-local-ai-logs-msty-docs) - [Real-Time Data - Msty Docs](#real-time-data-msty-docs) - [Make Local AI service available on your network - Msty Docs](#make-local-ai-service-available-on-your-network-msty-docs) - [Keyboard Shortcuts - Msty Docs](#keyboard-shortcuts-msty-docs) - [GPUs Supported by Msty - Msty Docs](#gpus-supported-by-msty-msty-docs) - [Ignore files and folders in Knowledge Stack - Msty Docs](#ignore-files-and-folders-in-knowledge-stack-msty-docs) - [Understanding RAG in Knowledge Stacks - Msty Docs](#understanding-rag-in-knowledge-stacks-msty-docs) - [Share Msty Data Between Devices using Workspaces - Msty Docs](#share-msty-data-between-devices-using-workspaces-msty-docs) - [Set Safety Settings When Using Gemini Models - Msty Docs](#set-safety-settings-when-using-gemini-models-msty-docs) - [Vapor Chat - Msty Docs](#vapor-chat-msty-docs) - [Find API Keys - Msty Docs](#find-api-keys-msty-docs) - [Add Models Not Included in Registry - Msty Docs](#add-models-not-included-in-registry-msty-docs) - [License Activation - Msty Docs](#license-activation-msty-docs) - [AMD ROCm on Windows Issues - Msty Docs](#amd-rocm-on-windows-issues-msty-docs) - [Advanced Knowledge Stack Settings - Msty Docs](#advanced-knowledge-stack-settings-msty-docs) - [Miscellaneous Troubleshooting - Msty Docs](#miscellaneous-troubleshooting-msty-docs) - [Chat Attachments - Msty Docs](#chat-attachments-msty-docs) - [Use existing Ollama Models - Msty Docs](#use-existing-ollama-models-msty-docs) - [Linux Issues - Msty Docs](#linux-issues-msty-docs) - [Get the latest version of Local AI service - Msty Docs](#get-the-latest-version-of-local-ai-service-msty-docs) - [Chat with Models from SambaNova - Msty Docs](#chat-with-models-from-sambanova-msty-docs) - [Knowledge Stack Basics - Msty Docs](#knowledge-stack-basics-msty-docs) - [Install Msty on Linux - Msty Docs](#install-msty-on-linux-msty-docs) --- # Onboarding - Msty Docs Onboarding ========== Get started with Msty in a few easy steps Welcome to Msty! Setting up is simple and quick. Follow the steps below to get started with local AI models, connect to remote providers, or use pre-existing models. ### [Choose an onboarding option](#choose-an-onboarding-option) When you first open Msty, you will be greeted by the onboarding page. This page offers three primary setup options: Setup Local AI Add Remote Models Provider Use Ollama Models (Advanced) #### [Setup Local AI](#setup-local-ai) This option will download and install a local AI model on your machine. * By default, Msty will download Google’s Gemma 2 model, which requires approximately 1.6 GB of disk space. * You can also click on the **'Gemma 2'** label to reveal a dropdown menu that allows you to select a different AI model for downloading during onboarding. Once you’ve selected a local AI model, the system will begin downloading and installing it. This process may take some time depending on your internet speed and the model size. Note: If you onboarded with `Setup Local AI` and want to switch to using models from Ollama, see [how to use existing Ollama models](/how-to-guides/use-existing-ollama-models) in Msty. #### [Add Remote Models Provider](#add-remote-models-provider) This option allows you to quickly onboard with a variety of remote AI models. To do so, simply enter the [API key](/how-to-guides/find-api-keys) for your chosen provider and select the desired models. Available providers include: * Open AI * Azure Open AI Aurum Perk * Claude * Perplexity * Google Gemini * Mistral AI * Groq AI * Open Router * Any other Open AI compatible models provider #### [Use Ollama Models (Advanced)](#use-ollama-models-advanced) For advanced users who have Ollama installed, Msty will automatically detect it and allow you to continue with them during onboarding. This enables you to onboard using your **existing models**, providing an even faster setup experience. [![Onboarding options in Msty](/getting-started/installation/onboarding.webp)](/getting-started/installation/onboarding.webp) Onboarding options in Msty ### [Start chatting](#start-chatting) After the setup is complete, you will be redirected to the chats page, where you can begin chatting with the AI model(s) you've just set up. [Download\ \ Download Msty for Windows, Mac, and Linux](/getting-started/download) [GPUs Supported by Msty\ \ Msty supports a wide range of GPUs for faster inference. Check if your GPU is supported by Msty.](/getting-started/gpus-support) --- # Download - Msty Docs Download ======== Download Msty for Windows, Mac, and Linux Find the right Msty installer for your operating system and hardware. Whether you're on Windows, Mac, or Linux, we offer versions optimized for both CPU and GPU setups. Windows Mac Linux ### [Windows](#windows) Choose between two versions depending on your hardware. #### [CPU-Only Version](#cpu-only-version) Ideal for systems without a dedicated GPU. [Download Msty (x64 CPU)](https://assets.msty.app/prod/latest/win/cpu/Msty_x64.exe) * * * #### [GPU Version](#gpu-version) Optimized for systems with a [compatible AMD or NVIDIA GPU](/getting-started/gpus-support) , offering improved performance. [Download Msty (x64 GPU)](https://assets.msty.app/prod/latest/win/auto/Msty_x64.exe) ### [Mac](#mac) We offer installers for both Apple Silicon and Intel-based Macs. #### [Apple Silicon](#apple-silicon) For M1, M2 and M3 chip-based Macs. [Download Msty (M1/M2/M3)](https://assets.msty.app/prod/latest/mac/Msty_arm64.dmg) * * * #### [Intel](#intel) For Macs with Intel processors. [Download Msty (Intel)](https://assets.msty.app/prod/latest/mac/Msty_x64.dmg) ### [Linux](#linux) Download the version that best fits your setup. #### [AppImage (CPU Version)](#appimage-cpu-version) A universal package that runs on most Linux distributions, optimized for CPUs. [Download Msty (AppImage CPU)](https://assets.msty.app/prod/latest/linux/amd64/Msty_x86_64_amd64.AppImage) * * * #### [Deb Installer (CPU Version)](#deb-installer-cpu-version) Specifically for Debian-based distributions (like Ubuntu) with CPU optimization. [Download Msty (.deb CPU)](https://assets.msty.app/prod/latest/linux/amd64/Msty_amd64_amd64.deb) * * * #### [AppImage (AMD GPU - ROCm Version)](#appimage-amd-gpu-rocm-version) For systems with AMD GPUs using ROCm, available as a universal AppImage. [Download Msty (AppImage AMD GPU)](https://assets.msty.app/prod/latest/linux/rocm/Msty_x86_64_rocm.AppImage) * * * #### [Deb Installer (AMD GPU - ROCm Version)](#deb-installer-amd-gpu-rocm-version) A ROCm-optimized version for Debian-based distributions. [Download Msty (.deb AMD GPU)](https://assets.msty.app/prod/latest/linux/rocm/Msty_amd64_rocm.deb) [Installation Instructions](#installation-instructions) -------------------------------------------------------- After downloading the appropriate installer for your system, follow the instructions below: Windows Mac Linux ### [Windows](#windows-1) Double-click the installer and follow the setup wizard. ### [Mac](#mac-1) Open the downloaded `.dmg` file and drag Msty to your Applications folder. ### [Linux](#linux-1) Read [how to install Msty on Linux.](/how-to-guides/install-msty-on-linux) [Onboarding\ \ Get started with Msty in a few easy steps](/getting-started/onboarding) --- # Creating a Knowledge Stack - Msty Docs Creating a Knowledge Stack ========================== Step-by-step guide to creating and populating Knowledge Stacks ### [1\. Start a New Stack](#_1-start-a-new-stack) Click the Knowledge Stack button in the sidebar to begin [![New Knowledge Stack button in sidebar](/how-to/create-knowledge-stack/new-stack-button.webp)](/how-to/create-knowledge-stack/new-stack-button.webp) New Knowledge Stack button in sidebar ### [2\. Add Your Content](#_2-add-your-content) Files Obsidian Folders Notes YouTube #### [Documents & Files](#documents-files) Drag and drop or browse for: * PDFs, Word docs, text files * Code files and spreadsheets * EPUBs and RTF documents [![File import interface](/how-to/create-knowledge-stack/file-import.webp)](/how-to/create-knowledge-stack/file-import.webp) File import interface #### [Vault Integration](#vault-integration) Connect entire Obsidian vaults while preserving: * Folder structure * Internal links * Metadata [![Obsidian vault import](/how-to/create-knowledge-stack/obsidian-import.webp)](/how-to/create-knowledge-stack/obsidian-import.webp) Obsidian vault import #### [Bulk Import](#bulk-import) Add entire folders with mixed content: * Drag & drop folders * Maintains original structure * Processes all supported file types [![Folder import interface](/how-to/create-knowledge-stack/folder-import.webp)](/how-to/create-knowledge-stack/folder-import.webp) Folder import interface #### [Quick Add Notes](#quick-add-notes) Type or paste custom text directly: * Perfect for last-minute additions * Supports markdown formatting * Appears as "Custom Notes" in stack [![Custom notes field](/how-to/create-knowledge-stack/custom-notes-import.webp)](/how-to/create-knowledge-stack/custom-notes-import.webp) Custom notes field #### [Video Content](#video-content) Paste YouTube URLs to add: * Automatic transcript processing * Video metadata inclusion * Multiple URLs supported [![YouTube URL field](/how-to/create-knowledge-stack/youtube-import.webp)](/how-to/create-knowledge-stack/youtube-import.webp) YouTube URL field ### [3\. Configure Processing](#_3-configure-processing) Click the gear icon to adjust chunk settings: [![Chunk processing settings](/how-to/create-knowledge-stack/chunk-settings-interface.webp)](/how-to/create-knowledge-stack/chunk-settings-interface.webp) Chunk processing settings * **Embedding Model**: Choose local or cloud-based * **Splitter Type**: Recursive vs sentence-based * **Chunk Size**: Balance context vs specificity * **Overlap**: Control context connections Need help choosing settings? See our [Advanced Configuration Guide](/features/knowledge-stack/advanced-features) ### [4\. Fine-tune Search](#_4-fine-tune-search) Click the sliders icon for precision controls: [![Search settings interface](/how-to/create-knowledge-stack/search-settings-interface.webp)](/how-to/create-knowledge-stack/search-settings-interface.webp) Search settings interface * Results quantity and quality thresholds * Custom prompt prefixes * Jina AI reranking integration ### [5\. Save & Activate](#_5-save-activate) Choose your workflow: [![Save and compose buttons](/how-to/create-knowledge-stack/compose-save-as-draft-buttons.webp)](/how-to/create-knowledge-stack/compose-save-as-draft-buttons.webp) Save and compose buttons * **Save Draft**: Store unfinished stack * **Compose**: Build ready-to-use stack * **Three-dot Menu**: Update existing stacks Remember: You can always [recompose your stack](/features/knowledge-stack/advanced-features#recomposing-stacks) later if you add new content or change settings! ### [6\. Chat with Your Stack](#_6-chat-with-your-stack) Access your knowledge in any chat: [![Knowledge Stack selection in chat interface](/how-to/create-knowledge-stack/choose-knowledge-stack-in-chat-interface.webp)](/how-to/create-knowledge-stack/choose-knowledge-stack-in-chat-interface.webp) Knowledge Stack selection in chat interface 1. Start a new chat 2. Click the Knowledge Stack icon 3. Select stacks to reference 4. Adjust settings: * **Similarity**: Match strictness (Low=Broad, High=Exact) * **Chunks**: Number of references to use 5. Ask natural language questions Pro Tip: Combine multiple stacks for cross-reference queries! The selected stacks will show a checkmark badge when active. Want deeper control? Learn about [optimizing search results](/features/knowledge-stack/embeddings) and [how RAG works](/features/knowledge-stack/rag-explained) . [Chat with Models from SambaNova\ \ Use Llama 3.1 8B, 70B and 405B models from SambaNova in Msty](/how-to-guides/chat-with-sambanova-models) [Get the latest version of Local AI service\ \ Learn how to get the latest version of Local AI service](/how-to-guides/get-the-latest-version-of-local-ai-service) --- # Understanding Embeddings - Msty Docs Understanding Embeddings ======================== Learn how Msty makes your documents searchable Embeddings are what make Knowledge Stacks "smarter" than a regular search. They help Msty understand the meaning behind your words, not just match exact phrases. [What Makes it Special?](#what-makes-it-special) ------------------------------------------------- Think about how you'd search for a recipe: * Regular search looks for exact words like "chocolate cake" * Msty understands that "dessert with cocoa" means the same thing * It can even find recipes that never use the exact words you typed [![Search settings showing similarity controls](/how-to/create-knowledge-stack/search-settings-interface.webp)](/how-to/create-knowledge-stack/search-settings-interface.webp) Search settings showing similarity controls [How Embeddings Work](#how-embeddings-work) -------------------------------------------- Imagine translating colors into numbers: * Red = 255, 0, 0 * Blue = 0, 0, 255 * Purple = 128, 0, 128 Embeddings do the same thing with words and ideas: * "happy" and "joyful" get similar numbers * "bank" (money) and "bank" (river) get different numbers * "I'm freezing" and "it's cold" get similar numbers [Embedding Models](#embedding-models) -------------------------------------- [![Embedding model selection](/how-to/create-knowledge-stack/chunk-settings-interface.webp)](/how-to/create-knowledge-stack/chunk-settings-interface.webp) Embedding model selection ### [1\. Local Embeddings](#_1-local-embeddings) * ✅ Completely private - nothing leaves your computer * ✅ Free to use forever * ✅ Works offline * ⚠️ Slightly less accurate * ⚠️ Uses more CPU power ### [2\. Remote Embeddings (via OpenAI)](#_2-remote-embeddings-via-openai) * ✅ More accurate understanding * ✅ Less CPU usage * ⚠️ Requires API key * ⚠️ Small cost per use * ⚠️ Sends text to external service Start with local embeddings - they work great for most uses! Switch to remote only if you need extra accuracy. [Similarity Settings](#similarity-settings) -------------------------------------------- Control how strictly Msty matches content: 1. **Similarity Threshold** * Low: Broader matches, more results * Medium: Balanced relevance * High: Stricter matching * Highest: Only very close matches 2. **Number of Chunks** * Default: 15 chunks * Adjust based on needs: * More chunks → broader context * Fewer chunks → focused answers These settings can be adjusted per chat session in the Knowledge Stack selector! [Getting Started](#getting-started) ------------------------------------ 1. Create a new Knowledge Stack 2. Click the gear icon 3. Choose your embedding model 4. Adjust similarity settings as needed Want to fine-tune your results? Check out our guide on [Advanced Knowledge Stack Settings](/features/knowledge-stack/advanced-features) . [Knowledge Stack Basics\ \ Get started with Knowledge Stacks in Msty](/features/knowledge-stack/basics) [Understanding RAG in Knowledge Stacks\ \ Learn how Retrieval Augmented Generation works in Msty](/features/knowledge-stack/rag-explained) --- # OpenAI Deep Research like service with Msty - Msty Docs OpenAI Deep Research like service with Msty =========================================== Learn how to have your own locally hostedl OpenAI Deep Research-like service in Msty [Pre-requisite](#pre-requisite) -------------------------------- First, please make sure you have git installed `brew install git # Mac winget install git # Win 10 or later apt install git # Ubuntu` Then clone my repo to a place that you want to setup the service and store cache `git clone https://github.com/benhaotang/OpenDeepResearcher-via-searxng.git cd OpenDeepResearcher-via-searxng/docker` [Setup](#setup) ---------------- Now, open the research.config file in `OpenDeepResearcher-via-searxng/docker`, you will see there are many options, don't be overwhelmed by that. Simple modifications can already get you started. Here are three operation modes you can choose from (minimal setup): ### [1\. Online Mode (Maximum Speed and quality):](#_1-online-mode-maximum-speed-and-quality) `[Settings] use_jina = true use_ollama = false default_model = anthropic/claude-3.5-haiku reason_model = deepseek/deepseek-r1-distill-qwen-32b [API] openai_compat_api_key = your-openrouter-key jina_api_key = your-jina-key searxng_url = http://localhost:4000/search # Already setup for docker searxng_url = https://searx.perennialte.ch/search # If you don't want to setup docker or want to use a public instance` ### [2\. Hybrid Mode (Balance):](#_2-hybrid-mode-balance) `[LocalAI] ollama_base_url = http://localhost:10000/ # See LocalAI service endpoint settings in Msty [Settings] use_jina = true use_ollama = true default_model = mistral-small # Can use any model available in your Msty LocalAI reason_model = deepseek-r1:14b # Can use any model available in your Msty LocalAI [API] jina_api_key = your-jina-key searxng_url = http://localhost:4000/search # Already setup for docker searxng_url = https://searx.perennialte.ch/search # If you don't want to setup docker or want to use a public instance` Note: You can use Msty's "LocalAI Models" GUI to download and manage models. Any model you have in Msty can be used by changing the model names in the config. If you want to use the default settings, **make sure to have mistral-small and deepseek-r1:14b are available in Msty and named as is**. ### [3\. Fully Local Mode (Maximum Privacy):](#_3-fully-local-mode-maximum-privacy) `[LocalAI] ollama_base_url = http://localhost:10000/ # See LocalAI service endpoint settings in Msty [Settings] use_jina = false use_ollama = true default_model = mistral-small # Can use any model available in your Msty LocalAI reason_model = deepseek-r1:14b # Can use any model available in your Msty LocalAI [Concurrency] use_embed_browser = true/false # Choose between embedded or external browser [API] searxng_url = http://localhost:4000/search # Already setup for docker searxng_url = https://searx.perennialte.ch/search # If you don't want to setup docker or want to use a public instance` **Additional setup:** * Use Msty's LocalAI GUI to download your preferred models and **reader-lm:0.5b** for webpage parsing * For external browser (if use\_embed\_browser = false): Start Chrome with `google-chrome --remote-debugging-port=9222 --remote-debugging-address=0.0.0.0`, add `--user-data-dir=/path/to/profile` to bypass paywalled material with your own credentials. * For embedded browser (if use\_embed\_browser = true): No additional setup needed **Note about SearXNG:** You can either: 1. Use [https://searx.perennialte.ch/](https://searx.perennialte.ch/) (a reliable public instance that supports JSON output) 2. Run SearXNG locally using the provided Docker setup 3. Use any other public SearXNG instance that supports JSON output (test with `https://your-searxng-url/search?q=test&format=json` - if it returns JSON data instead of 403, you can use it) More advanced settings please consult the [README](https://github.com/benhaotang/OpenDeepResearcher-via-searxng/blob/main/docker/README.md) in the docker folder. [Start the service](#start-the-service) ---------------------------------------- Start the service using either Docker (recommended) or direct Python (in the `docker/` folder): `# Option 1: Using Docker (recommended), build time around 3 minutes for the first time docker compose up --build # Option 2: Direct Python pip install -r requirements.txt python main.py # Runs on http://localhost:8000` [![Docker Building](/how-to/deep-research/docker-building.webp)](/how-to/deep-research/docker-building.webp) Docker Building When you see the following log: `INFO: Started server process [1] INFO: Waiting for application startup. INFO: Application startup complete. INFO: Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)` The service is ready to use. [Msty Setup](#msty-setup) -------------------------- After the server log shows it starts listening on port 8000, let's go back to set up Msty. 1. Open Msty, open "add remote model provider". 2. Choose "OpenAI compatible endpoint". 3. Set API endpoint to `http://localhost:8000/v1`. 4. Press "Fetch Models" button, the model name should automatically populate. 5. Save and you can start using. 6. _optional_ If you use local AI models, also make sure the models you want to use and **reader-lm:0.5b** is available in Msty. [![Remote provider settings](/how-to/deep-research/oaisetting.webp)](/how-to/deep-research/oaisetting.webp) Remote provider settings You have some extra model parameters that you can set in the model options `{ "max_iterations": 5, "max_search_items": 4, "default_model": "mistral-small" "reason_model": "deepseek-r1:14b" }` [![Extra Parameters](/how-to/deep-research/extrapara.webp)](/how-to/deep-research/extrapara.webp) Extra Parameters These parameters control: * max\_iterations: Number of plan-search-evaluate cycles, higher means more thorough research but longer runtime. Default: 10 * max\_search\_items: Number of search results to process per query (only affects local mode). Default: 4 * default\_model: Override the model used for search and writing from config. Optional, uses research.config setting if not set * reason\_model: Override the model used for planning and reasoning from config. Optional, uses research.config setting if not set You are all set! Now you can start using the OpenAI deep research like service in Msty. Our endpoint also support printing inner process logs as thinking process. Enjoy! [![./assets/Purelocaldemos.webp](/how-to/deep-research/Purelocaldemos.webp)](/how-to/deep-research/Purelocaldemos.webp) ./assets/Purelocaldemos.webp _An exmaple running purely locally with default settings_ [Price prediction](#price-prediction) -------------------------------------- * If you use the online mode, the cost is around $0.1 to $0.5 for simple reports in minutes or up to $2 for complex reports in up to an hour. (Using Gemini 2.0 Flash paid version as reference, claude and o3-mini will be much expensive) * If you use the hybrid mode, the cost is around $0.01 to $0.1 for even most comprehensive reports. But please ensure you have enough context length for the models to work with, recommend at least 32k tokens. My example, a 8-pages proceeding style physics report going through 573 sources took 51 min at €1.4 with Gemini 2.0 Flash(via openrouter) and Jina. Of course, the above is if you don't count electricity bill. [Limitations](#limitations) ---------------------------- Now there are some caveats that you should know: * Currently system instruction are only writing style instructions, while search instructions are still working in progress. * Multi-turn chat is not supported yet, so no follow-up questions possible. * If you want to go full local, a GPU with **at least 12GB** is needed, as small models are bad at instruction following and agentic job and meanwhile you need to leave overhead for parsing. [Roadmap](#roadmap) -------------------- * [ ] Refine process and reduce token usage via DSPy. * [ ] Support multi-turn chat and search instructions. * [ ] Integrate tool calling. * [ ] Add classifer models to fact-check sources by small models to avoid hallucination. [Acknowledgement](#acknowledgement) ------------------------------------ Huge thanks to [Benhao Tang](https://github.com/benhaotang) for contributing this guide. #### [Authors Note:](#authors-note) Thanks to Matt for bootstrapping the project with Jupyter notebook. Thanks arq at Msty Discord channel for sharing early testing results. Thanks for the Msty team for providing such a great frontend for us to build on and all the open-source software we have used in this project, including [ollama](https://github.com/ollama/ollama) , [searxng](https://github.com/searxng/searxng) , [docling](https://github.com/DS4SD/docling) , [playwright](https://github.com/microsoft/playwright) , [Jina](https://huggingface.co/jinaai/reader-lm-1.5b) and many more. [Make Local AI service available on your network\ \ Learn how to access Local AI service from other devices on your network](/how-to-guides/make-local-ai-service-available-on-the-network) [Share Msty Data Between Devices using Workspaces\ \ Learn how to share conversations, settings, API keys, Knowledge Stacks, Prompts, and more between devices.](/how-to-guides/sync-msty-between-devices) --- # Download Offline Models - Msty Docs Download Offline Models ======================= Download a wide variety of models to use offline with Local AI Msty lets you download a wide variety of models to use offline with Local AI. You can choose to install any model from Ollama or import supported `gguf` model files from HuggingFace, directly within Msty. [Featured Models](#featured-models) ------------------------------------ Msty provides a list of hand-picked models that makes it easy for users to quickly download a model better suited for tasks such as coding, text generation, multilingual support, image to text generation, etc. The models vary by size, parameters, and use case. To go to the Featured Models page, click on Local AI from the sidebar. [![Featured models in Local AI](/how-to/download-offline-models/local-ai-models.webp)](/how-to/download-offline-models/local-ai-models.webp) Featured models in Local AI [Model Hub](#model-hub) ------------------------ For our more advanced users, Msty provides a Model Hub where you can search for and install any model from Ollama and HuggingFace. In the Model Hub, you can download additional models or their variants that are not in the Featured Models section. Like in the Featured Models, you can find a wide variety of models that differ by size, parameters, and use case. To go to the Model Hub, open Local AI from the sidebar and click on 'Download More Models...' button from the page header. [![Model Hub to search for Ollama and HuggingFace models](/how-to/download-offline-models/model-hub.webp)](/how-to/download-offline-models/model-hub.webp) Model Hub to search for Ollama and HuggingFace models Once the Model Hub is open, you can choose to search for models in Ollama or HuggingFace from the search bar dropdown and install the model you are looking for. [Vapor Chat\ \ Flexible chat without saving—unless you want to](/features/vapor-chat) [Find API Keys\ \ Learn how to find API keys for various Online AI services](/how-to-guides/find-api-keys) --- # Stuck at App Update - Msty Docs Stuck at App Update =================== If you are stuck at the app update screen, here is how you can fix it. [On Windows](#on-windows) -------------------------- 1. Right-click on Local AI service icon on the sidebar and stop the service 2. Open Task Manager and search `msty` and kill all the processes 3. Search for `ollama-runner` and kill the process 4. Go to `Settings > General Settings` and click on `Check for Updates` 5. Restart the app 6. If the problem persists, follow step 1 to 3 and then manually install the app again. [On macOS](#on-macos) ---------------------- 1. Right-click on Local AI service icon on the sidebar and stop the service 2. Open Activity Monitor and search `msty` and kill all the processes 3. Go to `Settings > General Settings` and click on `Check for Updates` 4. Restart the app 5. If the problem persists, follow step 1 to 2 and then manually install the app again. [Share Msty Data Between Devices using Workspaces\ \ Learn how to share conversations, settings, API keys, Knowledge Stacks, Prompts, and more between devices.](/how-to-guides/sync-msty-between-devices) [Linux Issues\ \ Troubleshooting common issues on Linux](/troubleshooting/linux-issues) --- # Export Chat - Msty Docs Export Chat =========== Save your conversations in Markdown or JSON Msty's chat export feature allows you to save your conversations for future reference. You can export your chats in different formats depending on your needs. [Export as Markdown](#export-as-markdown) ------------------------------------------ Users can export the active chat branch as a Markdown file, which can be used for easy reading and formatting in various text editors. [Cherry-Pick individual messages\ \ Aurum Perk](#cherry-pick-individual-messages) -------------------------------------------------------------------------------- Users can select specific messages from the chat and export them individually, giving them granular control over what gets saved. [Export as JSON\ \ Aurum Perk](#export-as-json) ---------------------------------------------- For more detailed and structured data, Aurum users can export the active branch as a JSON file. This format is useful for preserving metadata and structure in a machine-readable format. #### [All Branches (full chat tree)](#all-branches-full-chat-tree) Aurum users can also export the entire chat with all its branches in the JSON format. This option captures the full conversation, including branches, making it ideal for comprehensive archiving. [![Export chat options in Msty](/features/export-chat/export-chat-options.webp)](/features/export-chat/export-chat-options.webp) Export chat options in Msty [Chat Attachments\ \ Enhance your chats with documents, images, and YouTube link attachments](/features/chat-attachments) [Knowledge Stack Basics\ \ Get started with Knowledge Stacks in Msty](/features/knowledge-stack/basics) --- # Model Selector - Msty Docs Model Selector ============== A unified model selection and configuration tool The text chat model selector in Msty provides a flexible way to choose between a variety of models, whether from remote providers such as OpenAI and Open Router, or local models hosted on your own machine. With recent improvements, users now have enhanced control over how models are organized and accessed. This includes the ability to pin frequently used models, assign specific categories to models, and configure additional settings for local models. [Pinning Models for Easy Access](#pinning-models-for-easy-access) ------------------------------------------------------------------ To streamline workflows, users can now pin models to the top of the model selector list. This feature is particularly useful for models that are used frequently, allowing for quicker selection without needing to scroll through a long list of options. #### [How to Pin a Model:](#how-to-pin-a-model) * In the model selector list, hover over the desired model. * Select the "Pin" icon next to the model name. * The pinned model will now appear at the top of the list until unpinned. [![Model Selector In Text Chat](/features/model-selector/text-chat-model-selector.webp)](/features/model-selector/text-chat-model-selector.webp) Model Selector In Text Chat [Model Categories for Remote Models](#model-categories-for-remote-models) -------------------------------------------------------------------------- Remote models often serve different purposes, such as handling text-based tasks, embedding generation, vision-related processes, or code-related outputs. To make it easier to find the right model for a specific task, users can assign a category to each remote model. #### [Available Categories:](#available-categories) * Text: For models designed to generate or interpret text. * Embedding: For models focused on generating vector embeddings. * Vision: For models specialized in image and vision-based tasks. * Coding: For models designed to handle code generation or interpretation. #### [How to Assign a Category:](#how-to-assign-a-category) * Open the model's sub-menu by clicking on the "Chevron" icon next to the model name. * Choose the appropriate category (Text, Embedding, Vision, or Coding) and click Update. [Configuring Local Models](#configuring-local-models) ------------------------------------------------------ For local models, users have even more control, including the ability to set a custom prompt template, assign a model label, or categorize the model, just like with remote models. This allows for a tailored experience when working with locally hosted models, making sure they fit seamlessly into your workflow. #### [Customizations for Local Models:](#customizations-for-local-models) * Prompt Template: Define a standard prompt format to be used every time the model is called. * Model Label: Assign a recognizable label to the model to make it easier to identify. * Model Category: Assign the model to a category (Text, Embedding, Vision, or Coding) for easier navigation. #### [How to Configure Local Models:](#how-to-configure-local-models) * Hover over the local model in the selector. * From the options menu, select the “Customize” option. * Configure the prompt template, label, or category as needed. The improvements to the model selector make managing and using various models more efficient, whether they are from remote providers or hosted locally. These enhancements ensure that users can quickly access the models they need, with the ability to organize and customize them for specific tasks. [Advanced Knowledge Stack Settings\ \ Fine-tune document processing and search quality](/features/knowledge-stack/advanced-features) [Real-Time Data\ \ Bring the latest information into your chats](/features/real-time-data) --- # Capture Local AI Logs - Msty Docs Capture Local AI Logs ===================== Learn how to capture Local AI service logs on your device You can capture Local AI service logs on your device to debug issues with Local AI. To capture the logs, go to Local AI settings and enable the 'Capture Service Logs' setting and save the changes. We recommend enabling the setting only when necessary. Please consider disabling after you are done with debugging. [![Capture Local AI Service Logs](/troubleshooting/local-ai-logs/capture-local-ai-service-logs.webp)](/troubleshooting/local-ai-logs/capture-local-ai-service-logs.webp) Capture Local AI Service Logs The captured logs can be viewed from the path specified in the Service Logs. [Miscellaneous Troubleshooting\ \ Troubleshooting common issues with Msty](/troubleshooting/misc-troubleshooting) [License Activation\ \ Troubleshooting common license activation issues in Msty](/troubleshooting/license-activation) --- # Real-Time Data - Msty Docs Real-Time Data ============== Bring the latest information into your chats Msty's Real-Time Data feature allows you to fetch live data from the internet and use it to enrich your chat conversations. You can easily toggle this feature on or off as needed. #### [How to enable Real-Time Data](#how-to-enable-real-time-data) Click the globe icon inside the chat input box to enable the Real-Time Data feature. When this feature is enabled, Msty retrieves information from the internet and provides it to the model for enhanced context in your conversations. [Search Provider\ \ Aurum Perk](#search-provider) ------------------------------------------------ You have the option to select a search provider to tailor the data fetching process. Supported providers include: * **Google** * **Brave** * **Ecosia** By default, the provider is set to **Auto with Fallback**, which will automatically choose a provider and switch to another if one doesn't respond. You can also choose a provider manually and save it as the default for future chats. To choose a search provider and make further customizations, Ctrl Click on the globe icon. [Advanced Options\ \ Aurum Perk](#advanced-options) -------------------------------------------------- The following advanced options are available for customizing your Real-Time Data search: * **Custom Search Query**: Modify the search query to improve the quality of results. This can be helpful if the AI model's prompt isn’t an optimal search query. * **Limit by Domain**: Restrict your search to a specific domain (e.g., nasa.gov) to narrow down the results. * **Extra Operators**: Add special search operators, such as `site:` or `intitle:`, for more precise search results. * **Date Range**: Use the **After Date** and **Before Date** selectors to limit the search results to a specific time frame. These advanced options give you more control over how Real-Time Data is fetched and integrated into your chat. [![Search Provider and Advanced Options in Real-Time Data](/features/real-time-data/real-time-data-with-custom-query.webp)](/features/real-time-data/real-time-data-with-custom-query.webp) Search Provider and Advanced Options in Real-Time Data [Model Selector\ \ A unified model selection and configuration tool](/features/model-selector) [Vapor Chat\ \ Flexible chat without saving—unless you want to](/features/vapor-chat) --- # Make Local AI service available on your network - Msty Docs Make Local AI service available on your network =============================================== Learn how to access Local AI service from other devices on your network Msty's Local AI service is designed to be accessible only from the computer where it is installed. This is a security feature to prevent unauthorized access to your Local AI service. However, there are times when you may want to access your Local AI service from other devices on your network. For example, you may want to use Msty on your laptop while sitting on your couch or use it on your tablet while relaxing in your backyard. Or you might just happen to have a powerful server in your home network and want to use it to run your Local AI service and access it from your laptop or desktop. Msty makes it easy to make your Local AI service available on your network. You can enable network access to your Local AI service by following these simple steps: 1. Open Msty's settings 2. Go to Local AI 3. Under `Service Configs`, enable `Make Service Available on Network`, and hit `Save` 4. Msty will restart the service for you with Local AI service now available on your network 5. As a convenience, Msty will show you the IP address and port number where the service is available. Find it under `Local AI Service` > `Service Endpoint` > `Network IP`. 6. On a different device on the same network, go to `Settings` > `Remote Model Providers` > `Add New Provider` and select `Msty Remote` as the provider. Enter the IP address and port number you found in step 5, add some models, and hit `Save`. Now you can use the models from your Local AI service on this device. Accessing Msty from Msty! Mstyception? How cool is that? [![Msty makes is super easy to make your Local AI service available on your network](/how-to/network-access/enable-network-access.webp)](/how-to/network-access/enable-network-access.webp) Msty makes is super easy to make your Local AI service available on your network [Troubleshooting](#troubleshooting) ------------------------------------ * Make sure that your firewall is not blocking the connection. * Make sure that the service and the device that you are trying to connect to are on the same network. * Make sure the Network IP matches the IP address of the device where Msty is installed. * If you are still having trouble, try restarting Msty. [Install Msty on Linux\ \ Learn how to install Msty on your Linux machine](/how-to-guides/install-msty-on-linux) [OpenAI Deep Research like service with Msty\ \ Learn how to have your own locally hostedl OpenAI Deep Research-like service in Msty](/how-to-guides/openai-deep-research-with-msty) --- # Keyboard Shortcuts - Msty Docs Keyboard Shortcuts ================== Speed up your workflow with some handy keyboard shortcuts in Msty The following keyboard shortcuts are available in Msty: | Shortcut | Action | | --- | --- | | Ctrl N | New Chat | | Ctrl T | Add Split Chat | | Ctrl F | Toggle Search Conversations | | Ctrl Shift N | Toggle Vapor Mode | | Ctrl Shift T | Toggle Theme Tray | | Ctrl Shift C | Copy Last Message | | Ctrl Shift R | Regenerate Last AI Message | | ↑ | Edit Last User Message | | Alt or ⌥ ↑ | Edit Last AI Message | [GPUs Supported by Msty\ \ Msty supports a wide range of GPUs for faster inference. Check if your GPU is supported by Msty.](/getting-started/gpus-support) [Chat Attachments\ \ Enhance your chats with documents, images, and YouTube link attachments](/features/chat-attachments) --- # GPUs Supported by Msty - Msty Docs GPUs Supported by Msty ====================== Msty supports a wide range of GPUs for faster inference. Check if your GPU is supported by Msty. [Nvidia GPUs](#nvidia-gpus) ---------------------------- Msty (and Ollama, the underlying Local AI engine) supports Nvidia GPUs with compute capability 5.0+. Check your compute compatibility to see if your card is supported: [https://developer.nvidia.com/cuda-gpus](https://developer.nvidia.com/cuda-gpus) | Compute Capability | Family | Cards | | --- | --- | --- | | 9.0 | NVIDIA | `H100` | | 8.9 | GeForce RTX 40xx | `RTX 4090` `RTX 4080 SUPER` `RTX 4080` `RTX 4070 Ti SUPER` `RTX 4070 Ti` `RTX 4070 SUPER` `RTX 4070` `RTX 4060 Ti` `RTX 4060` | | | NVIDIA Professional | `L4` `L40` `RTX 6000` | | 8.6 | GeForce RTX 30xx | `RTX 3090 Ti` `RTX 3090` `RTX 3080 Ti` `RTX 3080` `RTX 3070 Ti` `RTX 3070` `RTX 3060 Ti` `RTX 3060` `RTX 3050 Ti` `RTX 3050` | | | NVIDIA Professional | `A40` `RTX A6000` `RTX A5000` `RTX A4000` `RTX A3000` `RTX A2000` `A10` `A16` `A2` | | 8.0 | NVIDIA | `A100` `A30` | | 7.5 | GeForce GTX/RTX | `GTX 1650 Ti` `TITAN RTX` `RTX 2080 Ti` `RTX 2080` `RTX 2070` `RTX 2060` | | | NVIDIA Professional | `T4` `RTX 5000` `RTX 4000` `RTX 3000` `T2000` `T1200` `T1000` `T600` `T500` | | | Quadro | `RTX 8000` `RTX 6000` `RTX 5000` `RTX 4000` | | 7.0 | NVIDIA | `TITAN V` `V100` `Quadro GV100` | | 6.1 | NVIDIA TITAN | `TITAN Xp` `TITAN X` | | | GeForce GTX | `GTX 1080 Ti` `GTX 1080` `GTX 1070 Ti` `GTX 1070` `GTX 1060` `GTX 1050 Ti` `GTX 1050` | | | Quadro | `P6000` `P5200` `P4200` `P3200` `P5000` `P4000` `P3000` `P2200` `P2000` `P1000` `P620` `P600` `P500` `P520` | | | Tesla | `P40` `P4` | | 6.0 | NVIDIA | `Tesla P100` `Quadro GP100` | | 5.2 | GeForce GTX | `GTX TITAN X` `GTX 980 Ti` `GTX 980` `GTX 970` `GTX 960` `GTX 950` | | | Quadro | `M6000 24GB` `M6000` `M5000` `M5500M` `M4000` `M2200` `M2000` `M620` | | | Tesla | `M60` `M40` | | 5.0 | GeForce GTX | `GTX 750 Ti` `GTX 750` `NVS 810` | | | Quadro | `K2200` `K1200` `K620` `M1200` `M520` `M5000M` `M4000M` `M3000M` `M2000M` `M1000M` `K620M` `M600M` `M500M` | ### [GPU Selection](#gpu-selection) If you have multiple NVIDIA GPUs in your system and want to limit Msty to use a subset, you can set `CUDA_VISIBLE_DEVICES` to a comma separated list of GPUs. This value can be set in `Settings` -> `General Settings` -> `Local AI` > `Service Configurations` > `Advanced Configurations`. Numeric IDs may be used, however ordering may vary, so UUIDs are more reliable. You can discover the UUID of your GPUs by running `nvidia-smi -L` If you want to ignore the GPUs and force CPU usage, use an invalid GPU ID (e.g., "-1") [![You can pass extra environment variables to the Local AI service](/getting-started/gpu-service-config.webp)](/getting-started/gpu-service-config.webp) You can pass extra environment variables to the Local AI service ### [Laptop Suspend Resume](#laptop-suspend-resume) On Linux, after a suspend/resume cycle, sometimes Msty/Ollama will fail to discover your NVIDIA GPU, and fallback to running on the CPU. You can work around this driver bug by reloading the NVIDIA UVM driver with `sudo rmmod nvidia_uvm && sudo modprobe nvidia_uvm` [AMD Radeona GPUs](#amd-radeona-gpus) -------------------------------------- Msty/Ollama supports the following AMD GPUs: ### [Linux Support](#linux-support) | Family | Cards and accelerators | | --- | --- | | AMD Radeon RX | `7900 XTX` `7900 XT` `7900 GRE` `7800 XT` `7700 XT` `7600 XT` `7600` `6950 XT` `6900 XTX` `6900XT` `6800 XT` `6800` `Vega 64` `Vega 56` | | AMD Radeon PRO | `W7900` `W7800` `W7700` `W7600` `W7500` `W6900X` `W6800X Duo` `W6800X` `W6800` `V620` `V420` `V340` `V320` `Vega II Duo` `Vega II` `VII` `SSG` | | AMD Instinct | `MI300X` `MI300A` `MI300` `MI250X` `MI250` `MI210` `MI200` `MI100` `MI60` `MI50` | ### [Windows Support](#windows-support) With ROCm v6.1, the following GPUs are supported on Windows. | Family | Cards and accelerators | | --- | --- | | AMD Radeon RX | `7900 XTX` `7900 XT` `7900 GRE` `7800 XT` `7700 XT` `7600 XT` `7600` `6950 XT` `6900 XTX` `6900XT` `6800 XT` `6800` | | AMD Radeon PRO | `W7900` `W7800` `W7700` `W7600` `W7500` `W6900X` `W6800X Duo` `W6800X` `W6800` `V620` | ### [Overrides on Linux](#overrides-on-linux) Msty/Ollama leverages the AMD ROCm library, which does not support all AMD GPUs. In some cases you can force the system to try to use a similar LLVM target that is close. For example The Radeon RX 5400 is `gfx1034` (also known as 10.3.4) however, ROCm does not currently support this target. The closest support is `gfx1030`. You can use the environment variable `HSA_OVERRIDE_GFX_VERSION` with `x.y.z` syntax. So for example, to force the system to run on the RX 5400, you would set `HSA_OVERRIDE_GFX_VERSION="10.3.0"` as an environment variable for the server. If you have an unsupported AMD GPU you can experiment using the list of supported types below. At this time, the known supported GPU types on Linux are the following LLVM Targets. This table shows some example GPUs that map to these LLVM targets: | **LLVM Target** | **An Example GPU** | | --- | --- | | gfx900 | Radeon RX Vega 56 | | gfx906 | Radeon Instinct MI50 | | gfx908 | Radeon Instinct MI100 | | gfx90a | Radeon Instinct MI210 | | gfx940 | Radeon Instinct MI300 | | gfx941 | | | gfx942 | | | gfx1030 | Radeon PRO V620 | | gfx1100 | Radeon PRO W7900 | | gfx1101 | Radeon PRO W7700 | | gfx1102 | Radeon RX 7600 | AMD is working on enhancing ROCm v6 to broaden support for families of GPUs in a future release which should increase support for more GPUs. ### [GPU Selection](#gpu-selection-1) If you have multiple AMD GPUs in your system and want to limit Msty/Ollama to use a subset, you can set `HIP_VISIBLE_DEVICES` to a comma separated list of GPUs. This value can be set in `Settings` -> `General Settings` -> `Local AI` > `Service Configurations` > `Advanced Configurations`. You can see the list of devices with `rocminfo`. If you want to ignore the GPUs and force CPU usage, use an invalid GPU ID (e.g., "-1") [![You can pass extra params to a model globally](/getting-started/gpu-model-config.webp)](/getting-started/gpu-model-config.webp) You can pass extra params to a model globally You can also pass `main_gpu` parameter to each model to specify which GPU to use for that model. This can be set globally for all models in `Settings` -> `General Settings` -> `Local AI` > `Model Configurations` > `Advanced Configurations` or per model in the model's configuration available when chatting with the model. This value can even be set per chat. [![You can pass extra params (A) per chat (B) or per model (B)](/getting-started/model-extra-configs.webp)](/getting-started/model-extra-configs.webp) You can pass extra params (A) per chat (B) or per model (B) ### [Container Permission](#container-permission) In some Linux distributions, SELinux can prevent containers from accessing the AMD GPU devices. On the host system you can run `sudo setsebool container_use_devices=1` to allow containers to use devices. ### [Metal (Apple GPUs)](#metal-apple-gpus) Msty/Ollama supports GPU acceleration on Apple devices via the Metal API. ### [Windows Troubleshooting](#windows-troubleshooting) Check out the [AMD ROCm on Windows Issues](/troubleshooting/amd-rocm-windows-issues) guide for common issues and solutions when using AMD GPUs on Windows. [Onboarding\ \ Get started with Msty in a few easy steps](/getting-started/onboarding) [Keyboard Shortcuts\ \ Speed up your workflow with some handy keyboard shortcuts in Msty](/getting-started/keyboard-shortcuts) --- # Ignore files and folders in Knowledge Stack - Msty Docs Ignore files and folders in Knowledge Stack =========================================== Learn how to use .mstyignore to exclude files and folders from your knowledge stack The `.mstyignore` file is a powerful tool allows you to specify which files and folders should be ignored when composing your knowledge stack. By using `.mstyignore`, you can streamline your knowledge base, exclude unnecessary files, and maintain a cleaner, more focused stack. ### [Understanding .mstyignore Syntax](#understanding-mstyignore-syntax) Good news for those familiar with Git: `.mstyignore` uses the same syntax as `.gitignore`. This means if you're already comfortable with `.gitignore`, you'll find `.mstyignore` intuitive and easy to use. For those new to this syntax, don't worry – it's straightforward and easy to learn. ### [How to Create and Use a .mstyignore File](#how-to-create-and-use-a-mstyignore-file) 1. Create a new file named "`.mstyignore`" in the root directory of your knowledge stack folders or Obsidian vaults. 2. Open the file in a text editor. 3. Add patterns for files and folders you want to ignore, one per line. 4. Save the file. ### [Syntax Rules and Pattern Examples](#syntax-rules-and-pattern-examples) Here are some common patterns and what they do: 1. Ignore specific files: example.txt 2. Ignore all files with a certain extension: \*.log 3. Ignore all files in a specific folder: folder\_name/ 4. Ignore a specific folder and all its contents: folder\_name/\*\* 5. Ignore files or folders that match a pattern: \*_/temp\__ 6. Negate a pattern (include a file that would otherwise be ignored): !important.txt Practical Examples Here's an example of what your `.mstyignore` file might look like: `# Ignore all .log files *.log # Ignore the entire 'temp' folder temp/ # Ignore all .tmp files in any directory **/*.tmp # Ignore all files in the 'drafts' folder drafts/ # But don't ignore important drafts !drafts/important_draft.md # Ignore all files starting with 'temp_' temp_* # Ignore all files ending with '_old' *_old` ### [Best Practices](#best-practices) 1. Keep your `.mstyignore` file in the root directory of your knowledge stack. 2. Use comments (lines starting with #) to explain complex patterns. 3. Be specific to avoid accidentally ignoring important files. 4. Regularly review and update your `.mstyignore` file as your knowledge stack evolves. By effectively using `.mstyignore`, you can maintain a clean, relevant, and efficient knowledge stack in Misty AI. This allows you to focus on the information that matters most, improving the overall quality and usefulness of your AI assistant. [Use existing Ollama Models\ \ Learn how to use your existing Ollama models with Msty](/how-to-guides/use-existing-ollama-models) [Set Safety Settings When Using Gemini Models\ \ Learn how to set safety settings when using Gemini models in Msty](/how-to-guides/set-safety-settings-when-using-gemini-models) --- # Understanding RAG in Knowledge Stacks - Msty Docs Understanding RAG in Knowledge Stacks ===================================== Learn how Retrieval Augmented Generation works in Msty [What is RAG?](#what-is-rag) ----------------------------- RAG (Retrieval Augmented Generation) is the technology that powers Knowledge Stacks in Msty. It's important to understand that RAG doesn't "train" or "teach" the AI new information - instead, it's more like giving the AI a temporary reference book to consult while answering your questions. [How RAG Works](#how-rag-works) -------------------------------- Think of it like this: 1. **You**: Ask a question about your documents 2. **Msty**: * Searches your documents for relevant information * Uses embeddings to find matches * Selects the best chunks (default: 15) 3. **AI**: * Receives your question and selected chunks * Uses this default prompt: `The following text has been extracted from a data source due to its probable relevance to the question. Please use the given information if it is relevant to come up with an answer and don't use anything else. The answer should be as concise and succinct as possible to answer the question.` * Generates a focused answer [![Search settings showing RAG controls](/how-to/create-knowledge-stack/search-settings-interface.webp)](/how-to/create-knowledge-stack/search-settings-interface.webp) Search settings showing RAG controls The AI model itself never learns or remembers your documents. Each time you ask a question, Msty finds the relevant information fresh - like looking up answers in a book each time. [Fine-tuning RAG](#fine-tuning-rag) ------------------------------------ Control how RAG works in the chat interface: 1. **Similarity Threshold**: * Low: Broader context, more results * Medium: Balanced matching * High: Strict matching * Highest: Only exact matches 2. **Number of Chunks**: * Default: 15 chunks * More chunks = broader context * Fewer chunks = focused answers 3. **Custom Prompt**: * Modify the default prompt * Guide AI response style * Maintain answer focus Pro Tip: You can select multiple Knowledge Stacks at once for cross-referencing information! [Why Use RAG?](#why-use-rag) ----------------------------- 1. **Accuracy**: * References specific facts * Reduces "hallucinations" * Provides sourced answers 2. **Privacy**: * Documents stay local * Only relevant snippets sent * Full control over data 3. **Cost Effective**: * Sends minimal context * No training needed * Works with any AI model Want to optimize your results? Learn about [chunk settings](/features/knowledge-stack/advanced-features) and [embedding options](/features/knowledge-stack/embeddings) . [Understanding Embeddings\ \ Learn how Msty makes your documents searchable](/features/knowledge-stack/embeddings) [Advanced Knowledge Stack Settings\ \ Fine-tune document processing and search quality](/features/knowledge-stack/advanced-features) --- # Share Msty Data Between Devices using Workspaces - Msty Docs Share Msty Data Between Devices using Workspaces ================================================ Learn how to share conversations, settings, API keys, Knowledge Stacks, Prompts, and more between devices. Workspace is a collection of data that includes your conversations, settings, API keys, Knowledge Stacks, Prompts, and more. The primpary purpose of Workspaces is to create an isolated environment for your conversations, settings, and other data. You can create multiple Workspaces to keep your data separate and organized. However, you can also use Workspaces to share data between devices by saving the Workspace data to a shared folder. The shared folder could be one on your network or a Dropbox folder, an iCloud folder, etc. As long as the folder is accessible from all the devices you want to share Msty with, you can use it to share data between devices. Msty does not provide a built-in way to sync data between devices. Syncing is **not** a feature of Msty. We don't recommend working on the same workspace from multiple devices **at the same time**. If you do, you may end up with conflicts. This guide will show you how to share Msty data between devices using Workspaces. [Creating a Workspace](#creating-a-workspace) ---------------------------------------------- 1. Open Msty on the device you want to share data from. By default, Msty uses the `Default` Workspace. The Workspace try should be visible at the top of the left sidebar, just below the Msty logo. If not, click the small down `v` arrow just below the Msty logo to reveal the Workspace tray. [![Workspace Tray](/how-to/share-msty-between-devices/workspace-tray.webp)](/how-to/share-msty-between-devices/workspace-tray.webp) Workspace Tray 2. Click on `+` icon and select `New Workspace...`. 3. Enter a name for the new Workspace. You can name it anything you like, such as `Shared Workspace`, `Cloud Workspace`, or `Work Workspace`. 4. Select the location where you want to save the Workspace data. Whatever location you choose, make sure it is accessible from all the devices you want to share Msty data with. 5. Select one of the available icons for the Workspace to quickly identify it. 6. Select what to copy from the current Workspace to the new Workspace. You can choose to copy `Settings and Configs,`, `API Keys`, `Knowledge Stacks`, and `Prompts`, and more. Read more about `API Keys` below.\`\` 7. Click `Create and Switch` to create the new Workspace and switch to it. [![Create Workspace Dialog](/how-to/share-msty-between-devices/create-workspace-dialog.webp)](/how-to/share-msty-between-devices/create-workspace-dialog.webp) Create Workspace Dialog [Importing a Workspace](#importing-a-workspace) ------------------------------------------------ 1. Open Msty on the device you want to share data to. 2. Click on the Workspace tray at the top of the left sidebar. 3. Click on the `+` icon and select `Import Workspace...`. 4. Select the Workspace folder that was added when creating the Workspace on the other device. The name of the folder should be the same as the name of the Workspace. 5. Click `Open` to import the Workspace and switch to it. [Switching to a Workspace](#switching-to-a-workspace) ------------------------------------------------------ 1. Click on the Workspace tray at the top of the left sidebar. 2. Select the Workspace you want to switch to from the list of available Workspaces. [![Workspace Tray Conext Menu provides additional actions](/how-to/share-msty-between-devices/workspace-tray-context-menu.webp)](/how-to/share-msty-between-devices/workspace-tray-context-menu.webp) Workspace Tray Conext Menu provides additional actions [Editing a Workspace](#editing-a-workspace) -------------------------------------------- You can edit the name and the icon of a Workspace by Right Clicking on the Workspace in the Workspace tray and selecting `Edit...`. [Deleting a Workspace](#deleting-a-workspace) ---------------------------------------------- You can delete a Workspace by Right Clicking on the Workspace in the Workspace tray and selecting `Remove Workspace...`. There are two options when deleting a Workspace: * `Remove Workspace`: This will simply remove the Workspace from the list of available Workspaces. The Workspace data will not be deleted. * `Delete Workspace with Data Folder`: This will remove the Workspace from the list of available Workspaces and delete the Workspace data. **This action is irreversible.** To delete the Workspace data, you must select `Also delete the data folder` and click `Delete Workspace with Data Folder` red button. Again, there is no undo for this action. [Copying Existing Conversations to a Workspace](#copying-existing-conversations-to-a-workspace) ------------------------------------------------------------------------------------------------ If you want to copy existing conversations from one Workspace to another, you can do so by browsing to the Workspace folder on your device and copying the `msty.db` file from the source Workspace folder to the destination Workspace folder. The `msty.db` file contains all the conversation data for the Workspace. Make sure to close Msty before copying the `msty.db` file to avoid any conflicts. [Sharing API Keys](#sharing-api-keys) -------------------------------------- For security reasons, Msty saves your API keys in the keychain of your device. When you create a new Workspace, you have the option to copy the API keys from the current Workspace to the new Workspace. When using this Workspace on another device, by default, you will need to re-enter the API keys manually otherwise you'll get an error when trying to use an API key. Ease of convenience or security is a trade-off here and you can choose what works best for you. To avoid re-entering the API keys on every device, you can choose to save the API keys **unencrypted** in the Workspace folder. This option is available when you add a new API key or edit an existing API key. Just uncheck `Save key securely in keychain` option when adding or editing an API key. [![Uncheck 'Save key securely in keychain' to avoid re-entering API keys on every device](/how-to/share-msty-between-devices/api-key-keychain.webp)](/how-to/share-msty-between-devices/api-key-keychain.webp) Uncheck 'Save key securely in keychain' to avoid re-entering API keys on every device [OpenAI Deep Research like service with Msty\ \ Learn how to have your own locally hostedl OpenAI Deep Research-like service in Msty](/how-to-guides/openai-deep-research-with-msty) [Stuck at App Update\ \ If you are stuck at the app update screen, here is how you can fix it.](/troubleshooting/stuck-at-app-update) --- # Set Safety Settings When Using Gemini Models - Msty Docs Set Safety Settings When Using Gemini Models ============================================ Learn how to set safety settings when using Gemini models in Msty [Gemini's safety settings](https://ai.google.dev/gemini-api/docs/safety-settings) are designed to control the AI's output, ensuring it remains appropriate and safe for various use cases. These settings help filter out potentially harmful, offensive, or inappropriate content. The Gemini API offers adjustable safety settings to manage content based on predefined categories and sensitive topics. The safety settings can be adjusted to fit different applications, from more restrictive settings for general audiences to less restrictive for specialized use cases or adult content. [Safety Categories](#safety-categories) ---------------------------------------- Gemini offers several harm categories, including but not limited to: * HARM\_CATEGORY\_UNSPECIFIED * HARM\_CATEGORY\_HATE\_SPEECH * HARM\_CATEGORY\_SEXUALLY\_EXPLICIT * HARM\_CATEGORY\_HARASSMENT * HARM\_CATEGORY\_DANGEROUS\_CONTENT [Safety Thresholds](#safety-thresholds) ---------------------------------------- For each category, you can set a threshold level: * BLOCK\_NONE: No filtering for this category * BLOCK\_ONLY\_HIGH: Blocks only high-risk content * BLOCK\_MEDIUM\_AND\_ABOVE: Blocks medium and high-risk content * BLOCK\_LOW\_AND\_ABOVE: Blocks low, medium, and high-risk content If no safety settings are specified, Gemini uses default settings that aim to provide a balance between openness and safety. [Setting Safety Settings in Msty](#setting-safety-settings-in-msty) -------------------------------------------------------------------- Msty doesn't have a UI to set safety settings for Gemini models. However, you can set safety settings using the `safetySettings` parameter as a extra model parameters. Here's an example of how you can set safety settings when using a Gemini model in Msty: 1. Click on Model Options icon next to model selector and below the chat input. 2. Open the `Advanced Options` section and locate the `Extra Model Parameters` field at the bottom of the options. [![Gemini safety settings in Msty model options](/how-to/gemini-safety-settings/model-options.webp)](/how-to/gemini-safety-settings/model-options.webp) Gemini safety settings in Msty model options 3. In this field, you'll enter a JSON object to configure the safety settings. Use the following structure: `{ "safetySettings": [ { "category": "HARM_CATEGORY_NAME", "threshold": "THRESHOLD_LEVEL" } ] }` 4. Replace "HARM\_CATEGORY\_NAME" with the specific category you want to adjust. 5. Replace "THRESHOLD\_LEVEL" with the desired threshold level. 6. You can add multiple categories by including additional objects in the "safetySettings" array. Example: `{ "safetySettings": [ { "category": "HARM_CATEGORY_HARASSMENT", "threshold": "BLOCK_MEDIUM_AND_ABOVE" }, { "category": "HARM_CATEGORY_HATE_SPEECH", "threshold": "BLOCK_ONLY_HIGH" }, { "category": "HARM_CATEGORY_SEXUALLY_EXPLICIT", "threshold": "BLOCK_LOW_AND_ABOVE" }, { "category": "HARM_CATEGORY_DANGEROUS_CONTENT", "threshold": "BLOCK_NONE" } ] }` 8. Apply the changes and run your model with the new safety settings. Remember, adjusting these settings can impact the type of content Gemini generates, so use them responsibly and in accordance with your application's needs and ethical guidelines. [Ignore files and folders in Knowledge Stack\ \ Learn how to use .mstyignore to exclude files and folders from your knowledge stack](/how-to-guides/ignore-files-and-folders-in-knowledge-stack) [Add Models Not Included in Registry\ \ Add models that are not included in the model registry to Msty](/how-to-guides/add-models-not-included-in-registry) --- # Vapor Chat - Msty Docs Vapor Chat ========== Flexible chat without saving—unless you want to Aurum Perk Vapor chat allows you to engage in conversations using all chat features without saving the chat history. It’s perfect for one-off or temporary chats where you don’t need to retain the conversation. #### [How to open a chat in Vapor Mode](#how-to-open-a-chat-in-vapor-mode) 1. **Keyboard Shortcut**: Press Ctrl Shift N to start a new chat in Vapor Mode. 2. **Overflow Menu**: Alternatively, click the **overflow menu** next to the **New Chat** button and toggle **Vapor Mode** from the options. #### [Saving a Vapor Chat](#saving-a-vapor-chat) If a conversation turns out to be valuable, you can still save it. Click the **overflow menu** next to the **Add Split Chat** button and select the option to save the chat, converting it into a regular conversation. Vapor Mode offers a flexible, temporary chat experience with the option to keep important discussions when needed. [Real-Time Data\ \ Bring the latest information into your chats](/features/real-time-data) [Download Offline Models\ \ Download a wide variety of models to use offline with Local AI](/how-to-guides/download-offline-models) --- # Find API Keys - Msty Docs Find API Keys ============= Learn how to find API keys for various Online AI services API keys are required to access the services provided by Online AI services. Here's how you can find the API keys for various Online AI services: [**Key Visibility**](#key-visibility) -------------------------------------- * **Only Once:** You're only going to see your raw API key once, so make sure you copy it somewhere safe, otherwise you have to delete it and recreate a new one. * **Anytime:** You're able to see your raw API key in the clear at any time. [**Anthropic**](#anthropic) ---------------------------- * **API Endpoint:** `https://api.anthropic.com/v1` * **API Key URL:** [https://console.anthropic.com/settings/keys](https://console.anthropic.com/settings/keys) * **Key Visibility:** Only Once * **Usage Dashboard:** [https://console.anthropic.com/settings/usage](https://console.anthropic.com/settings/usage) * **Token Pricing Information:** [https://www.anthropic.com/pricing#anthropic-api](https://www.anthropic.com/pricing#anthropic-api) [**Cohere**](#cohere) ---------------------- * **API Endpoint:** `https://api.cohere.ai/v1` * **API Key URL:** [https://dashboard.cohere.com/api-keys](https://dashboard.cohere.com/api-keys) * **Key Visibility:** * Trial: Anytime * Prod: Only Once * **Usage Dashboard:** [https://dashboard.cohere.com/billing](https://dashboard.cohere.com/billing) * **Token Pricing Information:** [https://cohere.com/pricing](https://cohere.com/pricing) [**Gemini**](#gemini) ---------------------- * **API Endpoint:** `https://generativelanguage.googleapis.com/v1` * **API Key URL:** [https://aistudio.google.com/app/apikey](https://aistudio.google.com/app/apikey) * **Key Visibility:** Anytime * **Usage Dashboard:** [https://console.cloud.google.com/billing/](https://console.cloud.google.com/billing/) * **Token Pricing Information:** [https://ai.google.dev/pricing](https://ai.google.dev/pricing) (tons of free usage) [**Groq**](#groq) ------------------ * **API Endpoint:** `https://api.groq.com/v1` * **API Key URL:** [https://console.groq.com/keys](https://console.groq.com/keys) * **Key Visibility:** Only Once * **Usage Dashboard:** [https://console.groq.com/settings/usage](https://console.groq.com/settings/usage) * **Token Pricing Information:** [https://console.groq.com/settings/usage](https://console.groq.com/settings/usage) (Scroll down for pricing) [**Mistral AI**](#mistral-ai) ------------------------------ * **API Endpoint:** `https://api.mistral.ai/v1` * **API Key URL:** [https://console.mistral.ai/api-keys/](https://console.mistral.ai/api-keys/) * **Key Visibility:** Only Once * **Usage Dashboard:** [https://console.mistral.ai/usage/](https://console.mistral.ai/usage/) * **Token Pricing Information:** [https://mistral.ai/technology/](https://mistral.ai/technology/) (Scroll all the way down to "Pay-as-you-go pricing") [**OpenAI**](#openai) ---------------------- * **API Endpoint:** `https://api.openai.com/v1/` * **API Key URL:** [https://platform.openai.com/api-keys](https://platform.openai.com/api-keys) * **Key Visibility:** Only Once * **Usage Dashboard:** [https://platform.openai.com/usage](https://platform.openai.com/usage) * **Token Pricing Information:** [https://openai.com/api/pricing/](https://openai.com/api/pricing/) [**OpenRouter**](#openrouter) ------------------------------ * **API Endpoint:** `https://openrouter.ai/api/v1` * **API Key URL:** [https://openrouter.ai/settings/keys](https://openrouter.ai/settings/keys) * **Key Visibility:** Only Once * **Usage Dashboard:** [https://openrouter.ai/activity](https://openrouter.ai/activity) * **Token Pricing Information:** [https://openrouter.ai/models](https://openrouter.ai/models) (there's a million models here) [**Perplexity**](#perplexity) ------------------------------ * **API Endpoint:** `https://api.perplexity.ai` * **API Key URL:** [https://www.perplexity.ai/settings/api](https://www.perplexity.ai/settings/api) * **Key Visibility:** Anytime * **Usage Dashboard:** [https://www.perplexity.ai/settings/api](https://www.perplexity.ai/settings/api) * **Token Pricing Information:** [https://docs.perplexity.ai/docs/pricing](https://docs.perplexity.ai/docs/pricing) [**Together.ai**](#togetherai) ------------------------------- * **API Endpoint:** `https://api.together.xyz/v1` * **API Key URL:** [https://api.together.ai/settings/api-keys](https://api.together.ai/settings/api-keys) * **Key Visibility:** Anytime * **Usage Dashboard:** [https://api.together.xyz/settings/billing](https://api.together.xyz/settings/billing) * **Token Pricing Information:** [https://api.together.xyz/models](https://api.together.xyz/models) [**SambaNova**](#sambanova) ---------------------------- * **API Endpoint:** `https://api.sambanova.ai/v1` * **API Key URL:** [https://cloud.sambanova.ai/apis](https://cloud.sambanova.ai/apis) * **Key Visibility:** Only Once * **Usage Dashboard:** [https://cloud.sambanova.ai/usage](https://cloud.sambanova.ai/usage) * **Token Pricing Information:** [https://cloud.sambanova.ai/pricing](https://cloud.sambanova.ai/pricing) (Special thanks to our Discord community member, Frewtloops, for compiling this list!) [Download Offline Models\ \ Download a wide variety of models to use offline with Local AI](/how-to-guides/download-offline-models) [Use existing Ollama Models\ \ Learn how to use your existing Ollama models with Msty](/how-to-guides/use-existing-ollama-models) --- # Add Models Not Included in Registry - Msty Docs Add Models Not Included in Registry =================================== Add models that are not included in the model registry to Msty Msty comes with a model registry that includes a variety of models from different providers. We also regularly update the registry with new models, which you can fetch without updating the app. First make sure to get the latest models info by going to `Settings` -> `General` -> `Models Info` > `Fetch Models Info`. If the model you want to use is still not available, you can add it manually. This guide will show you how to add models that are not included in the model registry. Follow the steps below to add a new model ### [Open Settings](#open-settings) Open settings from the sidebar. [![Open Settings](/how-to/use-sambanova-models/open-settings.webp)](/how-to/use-sambanova-models/open-settings.webp) Open Settings ### [Go to Remote Model Providers](#go-to-remote-model-providers) From the options, click Remote Model Providers. [![Go to Remote Model Providers](/how-to/use-sambanova-models/remote-model-providers.webp)](/how-to/use-sambanova-models/remote-model-providers.webp) Go to Remote Model Providers ### [Add New Provider](#add-new-provider) Click on Add New Provider button from the top right corner. Or if you have already added a provider, click Edit icon next to the provider to add a new model. [![Add New Provider](/how-to/use-sambanova-models/add-new-provider.webp)](/how-to/use-sambanova-models/add-new-provider.webp) Add New Provider ### [Add a Model](#add-a-model) You can add any models as necessary. You just need to get the id of the model from the provider such as `chatgpt-4o-latest`. Here, we are adding `Meta-Llama-3.1-405B-Instruct` as a custom model from SambaNova but process is exactly the same for other providers. Once you are done adding models, click the Add button on the bottom right. [![Add a Model](/how-to/use-sambanova-models/add-a-custom-model.webp)](/how-to/use-sambanova-models/add-a-custom-model.webp) Add a Model ### [Start Chatting](#start-chatting) From the model selector in a new chat, select the model that you just added and start chatting. [![Start Chatting](/how-to/use-sambanova-models/start-chatting.webp)](/how-to/use-sambanova-models/start-chatting.webp) Start Chatting [Set Safety Settings When Using Gemini Models\ \ Learn how to set safety settings when using Gemini models in Msty](/how-to-guides/set-safety-settings-when-using-gemini-models) [Chat with Models from SambaNova\ \ Use Llama 3.1 8B, 70B and 405B models from SambaNova in Msty](/how-to-guides/chat-with-sambanova-models) --- # License Activation - Msty Docs License Activation ================== Troubleshooting common license activation issues in Msty [Activation not persisting](#activation-not-persisting) -------------------------------------------------------- If you're having trouble with your Msty license activation not persisting, it might be related to your desktop environment. To resolve this, set the `XDG_CURRENT_DESKTOP` environment variable to `GNOME` before launching the app. This ensures Msty can interact properly with the keychain for storing your license. AppImage deb ### [AppImage](#appimage) Open a terminal window and run the following command to open Msty: `export XDG_CURRENT_DESKTOP='GNOME' && ./.AppImage` ### [deb](#deb) Open a terminal window and run the following command to open Msty: `export XDG_CURRENT_DESKTOP='GNOME' && msty` If the issue still persists, please reach out on our [Discord](https://msty.app/discord?ref=docs) server for further troubleshooting. [Capture Local AI Logs\ \ Learn how to capture Local AI service logs on your device](/troubleshooting/capture-local-ai-logs) --- # AMD ROCm on Windows Issues - Msty Docs AMD ROCm on Windows Issues ========================== Troubleshooting common issues with AMD ROCm on Windows Msty supports AMD ROCm on Windows out of the box and we even have a dedicated installer for it. However, sometimes things can go wrong and your GPU card might not be supported or detected at all. Here are some troubleshooting steps you can take to resolve the issue. [Get the latest version of Msty](#get-the-latest-version-of-msty) ------------------------------------------------------------------ We are constantly improving Msty and adding support for new GPUs. Make sure you have the latest version of Msty installed on your system. You can download the latest version from the [Msty website](https://msty.app) . [Try a different installer](#try-a-different-installer) -------------------------------------------------------- Instead of using the dedicated AMD ROCm on Windows installer, you can try using the generic Auto installer and see if that works for you. You can download the Auto installer from the [Msty website](https://msty.app) . Give CPU only installer a try as well if nothing works. [Check if your GPU is supported](#check-if-your-gpu-is-supported) ------------------------------------------------------------------ Not all AMD GPUs are supported by Msty (and Ollama, the underlying Local AI service ). Check here to see if your GPU is supported: [Supported GPUs](/getting-started/gpus-support) . [Check if your GPU is detected](#check-if-your-gpu-is-detected) ---------------------------------------------------------------- cd into `%appdata%/Msty` from your terminal and run `./msty-local.exe serve` to see if your GPU is detected and for other useful information. [Multiple GPUs](#multiple-gpus) -------------------------------- If you have multiple GPUs in your system, you can try passing `main_gpu` parameter to each model to specify which GPU to use for that model. This can be set globally for all models in `Settings` -> `General Settings` -> `Local AI` > `Model Configurations` > `Advanced Configurations` or per model in the model's configuration available when chatting with the model. This value can even be set per chat. [![You can pass extra params to a model globally](/getting-started/gpu-model-config.webp)](/getting-started/gpu-model-config.webp) You can pass extra params to a model globally [![You can pass extra params (A) per chat (B) or per model (B)](/getting-started/model-extra-configs.webp)](/getting-started/model-extra-configs.webp) You can pass extra params (A) per chat (B) or per model (B) [Custom Ollama Build](#custom-ollama-build) -------------------------------------------- If you have an unsupported GPU, or if you just couldn't get Msty to work with your GPU, you can try using a custom build of Ollama: 1. From [https://github.com/likelovewant/ollama-for-amd/releases](https://github.com/likelovewant/ollama-for-amd/releases) , download the latest Ollama AMD zipped file `ollama-windows-amd64.7z`. 2. Replace `%appdata%\Roaming\Msty\lib\ollama` with the downloaded archive (unzip it first). 3. Download the ROCBLAS packages for your GPU model from [https://github.com/likelovewant/ROCmLibs-for-gfx1103-AMD780M-APU/releases](https://github.com/likelovewant/ROCmLibs-for-gfx1103-AMD780M-APU/releases) . 4. Rename `%appdata%\Roaming\Msty\lib\ollama\rocblas\library` to `library.bck` as a backup. 5. Extract the library folder in the downloaded ROCBLAS packages to `%appdata%\Roaming\Msty\lib\ollama\rocblas\` to replace the old library. 6. Run `./msty-local.exe serve` from `%appdata%/Msty` to see if your GPU is detected and for other useful information. 7. Stop the server and restart Msty. [Linux Issues\ \ Troubleshooting common issues on Linux](/troubleshooting/linux-issues) [Miscellaneous Troubleshooting\ \ Troubleshooting common issues with Msty](/troubleshooting/misc-troubleshooting) --- # Advanced Knowledge Stack Settings - Msty Docs Advanced Knowledge Stack Settings ================================= Fine-tune document processing and search quality Learn how to optimize your Knowledge Stack's search accuracy and processing with these advanced settings. [Processing Settings](#processing-settings) -------------------------------------------- [![Chunk settings interface](/how-to/create-knowledge-stack/chunk-settings-interface.webp)](/how-to/create-knowledge-stack/chunk-settings-interface.webp) Chunk settings interface Access these settings by clicking the gear icon at the bottom of your Knowledge Stack: ### [Embedding Model](#embedding-model) Choose how Msty understands your content: * **Local**: Private, offline processing * **Remote**: Enhanced accuracy via OpenAI * Click to see all configured models ### [Splitter Type](#splitter-type) Choose how to divide your content: * **Recursive Character**: Like chapters in a book * Best for normal documents * Keeps paragraphs together * Works well with mixed content * **Sentence**: Like individual sentences * Perfect for technical docs * Keeps code blocks intact * Better for precise answers ### [Chunk Settings](#chunk-settings) Control how Msty processes your text: 1. **Chunk Size** * Low: Quick, specific answers * Medium: Balanced (recommended) * High: More context * Highest: Full context 2. **Chunk Overlap** * Low: Minimal connection * Medium: Good balance * High: Strong connection * Highest: Maximum context 3. **Ignore Small Chunks** * Default: 50 characters * Filters out headers, footers * Skips single-line comments * Removes short metadata Start with Medium settings - they work great for most documents! Adjust only if you notice issues with answer quality. [Search Settings](#search-settings) ------------------------------------ [![Search settings interface](/how-to/create-knowledge-stack/search-settings-interface.webp)](/how-to/create-knowledge-stack/search-settings-interface.webp) Search settings interface Access these by clicking the sliders icon in the top right: ### [Results Control](#results-control) 1. **Number of Chunks** * Default: 15 chunks * Adjust based on needs * More chunks = broader context * Fewer = focused answers 2. **Similarity Threshold** * Low to Highest options * Controls match strictness * Higher = more precise matches * Lower = broader results ### [Jina AI Reranking](#jina-ai-reranking) Enhance search accuracy: * Free API key from [jina.ai/reranker](https://jina.ai/reranker) * Improves result ranking * Better handles complex queries Privacy Note: Jina AI processes search queries and metadata to improve results. Check their [privacy policy](https://jina.ai/legal/#privacy-policy) for details. [Managing Changes](#managing-changes) -------------------------------------- [![Compose and save buttons](/how-to/create-knowledge-stack/compose-save-as-draft-buttons.webp)](/how-to/create-knowledge-stack/compose-save-as-draft-buttons.webp) Compose and save buttons ### [Save Options](#save-options) * **Save Draft**: Store unfinished work * **Compose**: Activate your stack * **Three-dot Menu**: * "Compose new changes": Update content * "Recompose Stack": Apply setting changes [When to Adjust Settings](#when-to-adjust-settings) ---------------------------------------------------- 1. **Content Issues** * Long documents → Increase chunk size * Missing context → Increase overlap * Too much noise → Raise similarity threshold * Short answers → Add more chunks 2. **Performance Tips** * Test with real questions * Change one setting at a time * Note what works best * Save successful configurations Remember: You can adjust search settings per chat session in the Knowledge Stack selector! Thanks to our wonderful Discord user @Tdwag fo contributing almost all the content for this guide! [Understanding RAG in Knowledge Stacks\ \ Learn how Retrieval Augmented Generation works in Msty](/features/knowledge-stack/rag-explained) [Model Selector\ \ A unified model selection and configuration tool](/features/model-selector) --- # Miscellaneous Troubleshooting - Msty Docs Miscellaneous Troubleshooting ============================= Troubleshooting common issues with Msty > When using an imported Workspace with API keys, I get a key error something like "Error while decrypting the ciphertext". For security reasons, Msty saves your API keys in the keychain of your device. When you create a new Workspace, you have the option to copy the API keys from the current Workspace to the new Workspace. When using this Workspace on another device, by default, you will need to re-enter the API keys manually otherwise you'll get an error when trying to use an API key. Ease of convenience or security is a trade-off here and you can choose what works best for you. [![Msty warns you about API keys when creating a new Workspace](/troubleshooting/api-keys-warning.webp)](/troubleshooting/api-keys-warning.webp) Msty warns you about API keys when creating a new Workspace To avoid re-entering the API keys on every device, you can choose to save the API keys **unencrypted** in the Workspace folder. This option is available when you add a new API key or edit an existing API key. Just uncheck `Save key securely in keychain` option when adding or editing an API key. Keep in mind that this needs to be done **before** you create the Workspace and import it to another device. [![Uncheck 'Save key securely in keychain' to avoid re-entering API keys on every device](/how-to/sync-msty-between-devices/api-key-keychain.webp)](/how-to/sync-msty-between-devices/api-key-keychain.webp) Uncheck 'Save key securely in keychain' to avoid re-entering API keys on every device [AMD ROCm on Windows Issues\ \ Troubleshooting common issues with AMD ROCm on Windows](/troubleshooting/amd-rocm-windows-issues) [Capture Local AI Logs\ \ Learn how to capture Local AI service logs on your device](/troubleshooting/capture-local-ai-logs) --- # Chat Attachments - Msty Docs Chat Attachments ================ Enhance your chats with documents, images, and YouTube link attachments In Msty, you can attach files, images, and YouTube links to enhance your conversations and provide additional context for your chats. Learn about the different types of attachments and how to add and manage them below. Images Documents YouTube Links ### [Images](#images) You can easily attach images to your chat by either dropping them directly into the chat input box or clicking on the attachments icon. Once added, images can be selected or unselected during the chat, allowing you to control which attachments are included in the conversation. By default, images are **cached**, meaning they will be stored and reused as-is during the chat. You can toggle between cached and live mode using the **bolt icon** near the image thumbnail: * **Cached Mode:** The default option, storing the image for reuse without reloading. * **Live Mode:** When toggled on, the image will be reread from the disk every time it's referenced, ensuring you are using the latest version. [![Image Attachments](/features/chat-attachments/image-attachments.webp)](/features/chat-attachments/image-attachments.webp) Image Attachments ### [Documents](#documents) Adding documents works the same way as images—you can drop files into the input box or use the attachments icon. Like images, documents can be selected or unselected during the conversation. Documents are **cached by default**, with the option to toggle to live mode using the **bolt icon** near the document thumbnail: * **Cached Mode:** The default option, storing the document for reuse without reloading. * **Live Mode:** When toggled on, the document is reread from the disk for each reference in the chat, ensuring up-to-date content. [![Document Attachments](/features/chat-attachments/document-attachments.webp)](/features/chat-attachments/document-attachments.webp) Document Attachments ### [YouTube Links\ \ Aurum Perk](#youtube-links) You can attach YouTube links to chats by dropping them directly into the chat input box or using the attachments icon, making it simple to reference videos in your conversation. This feature is available exclusively to Aurum users. As with images and documents, YouTube links can be selected or unselected as needed during the chat. When a YouTube link is attached, the **transcript is cached**, so if you attach the same link again in a new chat, Msty will utilize the cached transcript for fast retrieval, avoiding the need to process it again. [![YouTube Link Attachments](/features/chat-attachments/youtube-link-attachments.webp)](/features/chat-attachments/youtube-link-attachments.webp) YouTube Link Attachments [Keyboard Shortcuts\ \ Speed up your workflow with some handy keyboard shortcuts in Msty](/getting-started/keyboard-shortcuts) [Export Chat\ \ Save your conversations in Markdown or JSON](/features/export-chat) --- # Use existing Ollama Models - Msty Docs Use existing Ollama Models ========================== Learn how to use your existing Ollama models with Msty Msty can share models download location with Ollama. This allows you to use the models that you have already downloaded prior to installing Msty on your computer, as well as continue using them with Ollama if necessary. You will need to update Msty's models path to Ollama's models path to use the downloaded models. To update the models path: ### [Open Msty's settings](#open-mstys-settings) Click on the settings icon from the sidebar to open the settings dialog. ### [Go to Local AI](#go-to-local-ai) Once the setting dialog opens, click on the Local AI settings from the sidebar. ### [Edit models path](#edit-models-path) Under Local AI Service, click on the edit button in Models Path setting to edit the models path. Ollama models are generally located under: Windows Mac Linux `C:\Users\\.ollama\models` `/Users//.ollama/models` `/usr/share/ollama/.ollama/models` If you changed your Ollama models path using the `OLLAMA_MODELS` environment variable, then you'll need to use the path you set instead of the default locations mentioned above. Once you confirm the changes, Local AI service will restart for the changes to take effect. Once the service is running, you'll be able to see the models you have downloaded from Ollama in the model selector and chat with them in Msty. [Find API Keys\ \ Learn how to find API keys for various Online AI services](/how-to-guides/find-api-keys) [Ignore files and folders in Knowledge Stack\ \ Learn how to use .mstyignore to exclude files and folders from your knowledge stack](/how-to-guides/ignore-files-and-folders-in-knowledge-stack) --- # Linux Issues - Msty Docs Linux Issues ============ Troubleshooting common issues on Linux [App is not starting](#app-is-not-starting) -------------------------------------------- This is most likely because of permissions issue esp. if you are sharing Ollama's models path with Msty. Ollama was most probably installed with `sudo` and the models directory is owned by root. Msty doesn't have permission to read the models directory. To fix this, you can do one of the following: 1. Change the models directory's permission to be readable by all users: `sudo chmod -R a+r /usr/share/ollama/.ollama/models` This will make the models directory readable by all users on the system. 2. Change the models directory's owner to your user: `sudo chown -R $USER /usr/share/ollama/.ollama/models` This will change the owner of the models directory to your user. 3. If you are using `OLLAMA_MODELS` environment variable to set the models path, then you can change the models path to a directory that you have permission to read. For example, you can create a directory in your home directory and set the models path to that directory. And then in Msty, update the models path to the new directory by following the steps in [Use existing Ollama Models](/how-to/use-existing-ollama-models) . [Failed to install model - permission denied](#failed-to-install-model-permission-denied) ------------------------------------------------------------------------------------------ Similar to the above issue, this is most likely because of permissions issue. The models directory is not accessible by Msty. Please follow the steps in the above section to fix this issue. [Cannot save an API Key or add a remote provider](#cannot-save-an-api-key-or-add-a-remote-provider) ---------------------------------------------------------------------------------------------------- For security reason, Msty saves an encrypted version of your API key in your OS's keychain. If you are having trouble saving an API key or adding a remote provider, it is most likely one of the following reasons: 1. You don't have a keychain setup on your system. 2. The keychain is not enabled. 3. If you are running KDE, ensure that kwallet is enabled and running. [Stuck at App Update\ \ If you are stuck at the app update screen, here is how you can fix it.](/troubleshooting/stuck-at-app-update) [AMD ROCm on Windows Issues\ \ Troubleshooting common issues with AMD ROCm on Windows](/troubleshooting/amd-rocm-windows-issues) --- # Get the latest version of Local AI service - Msty Docs Get the latest version of Local AI service ========================================== Learn how to get the latest version of Local AI service For your convenience, Msty bundles the latest version of Local AI service (Ollama) with the app at the time of the app release. However, if you want to get the latest version of Local AI service, first try going to `Settings` > `Local AI` > `Service Version` and clicking on `Check for updates`. If there is a new version available, it will be downloaded. If you are unable to download the latest version of Local AI service using this method, you can follow the steps below to manually download and install the latest version of Local AI service. [On macOS](#on-macos) ---------------------- 1. Go to releases page on the Ollama repository: [https://github.com/ollama/ollama/releases](https://github.com/ollama/ollama/releases) 2. From under `Assets`, download the latest version of Ollama for macOS by downloading `ollama-darwin.tgz` (NOT `ollama-darwin.zip`). 3. Once downloaded and extracted, copy `ollama-darwin` to `~/Library/Application Support/Msty` and rename it as `msty-local`. 4. Open Terminal and run the following command to make the file executable: `chmod +x ~/Library/Application\ Support/Msty/msty-local` 5. Restart Msty and verify the version of Local AI service by going to `Settings` > `Local AI Service > Service Version`. [On Windows](#on-windows) -------------------------- 1. Go to releases page on the Ollama repository: [https://github.com/ollama/ollama/releases](https://github.com/ollama/ollama/releases) 2. From under `Assets`, download the latest version of Ollama for Windows by downloading `ollama-windows-amd64.zip`. 3. Once downloaded, extract the contents of the zip file and copy `ollama-windows.exe` to `C:\Users\\AppData\Roaming\Msty` and rename it as `msty-local.exe`. 4. Copy `lib` folder to `C:\Users\\AppData\Roaming\Msty`. 5. If you are on NVIDIA GPU, you can optionally remove `rocm` 6. If you are on AMD GPU, you can optionally remove `cuda` 7. Restart Msty and verify the version of Local AI service by going to `Settings` > `Local AI Service > Service Version`. **Note**: There is a small annoyance with the official build of Ollama where during chatting it opens up a blank Terminal window. You could just ignore it or wait for the latest release of Msty. We have sent a PR to Ollama team and waiting for it to get merged. Please upvote this PR to get it prioritized: [https://github.com/ollama/ollama/pull/4287](https://github.com/ollama/ollama/pull/4287) [On Linux](#on-linux) ---------------------- ### [For CUDA users:](#for-cuda-users) 1. Go to releases page on the Ollama repository: [https://github.com/ollama/ollama/releases](https://github.com/ollama/ollama/releases) 2. From under `Assets`, download the latest version of Ollama for Linux - `ollama-linux-amd64.tgz` 3. Once downloaded, copy `lib` to `~/.config/Msty/` 4. Copy `bin/ollama` to `~/.config/Msty/` and rename it as `msty-local` 5. Open Terminal and run the following command to make the file executable: `chmod +x ~/.config/Msty/msty-local` 6. Restart Msty and verify the version of Local AI service by going to `Settings` > `Local AI Service > Service Version`. ### [For ROCm (AMD GPU) users:](#for-rocm-amd-gpu-users) 1. Go to releases page on the Ollama repository: [https://github.com/ollama/ollama/releases](https://github.com/ollama/ollama/releases) 2. From under `Assets`, download the latest version of Ollama for Linux by downloading the one appropriate for your system - either `ollama-linux-amd64-rocm.tgz` 3. Once downloaded, copy `lib` to `~/.config/Msty/` 4. Copy `bin/ollama` to `~/.config/Msty/` and rename it as `msty-local` 5. Open Terminal and run the following command to make the file executable: `chmod +x ~/.config/Msty/msty-local` 6. Restart Msty and verify the version of Local AI service by going to `Settings` > `Local AI Service > Service Version`. [Creating a Knowledge Stack\ \ Step-by-step guide to creating and populating Knowledge Stacks](/how-to-guides/create-knowledge-stacks) [Install Msty on Linux\ \ Learn how to install Msty on your Linux machine](/how-to-guides/install-msty-on-linux) --- # Chat with Models from SambaNova - Msty Docs Chat with Models from SambaNova =============================== Use Llama 3.1 8B, 70B and 405B models from SambaNova in Msty SambaNova is the only provider to offer Llama 3.1 405B in a free tier, made possible by their efficient chip architecture. Learn how to use their models in Msty. [Demo Video](#demo-video) -------------------------- Watch [this video](https://www.youtube.com/watch?v=ULQBEOH_0ow&ab_channel=MstyApp) for the corresponding tutorial. [API Key and Endpoint](#api-key-and-endpoint) ---------------------------------------------- Go to [SambaNova section](/how-to-guides/find-api-keys#sambanova) in the [Find API Keys](/how-to-guides/find-api-keys) page for more details. [Available Models](#available-models) -------------------------------------- The following models are available as of September 17, 2024. The models are available to all tiers, including the free tier. * Meta-Llama-3.1-8B-Instruct * Meta-Llama-3.1-70B-Instruct * Meta-Llama-3.1-405B-Instruct [Using the Models in Msty](#using-the-models-in-msty) ------------------------------------------------------ Follow the steps below to add and use the SambaNova models in Msty. ### [Open Settings](#open-settings) Open settings from the sidebar. [![Open Settings](/how-to/use-sambanova-models/open-settings.webp)](/how-to/use-sambanova-models/open-settings.webp) Open Settings ### [Go to Remote Model Providers](#go-to-remote-model-providers) From the options, click Remote Model Providers. [![Go to Remote Model Providers](/how-to/use-sambanova-models/remote-model-providers.webp)](/how-to/use-sambanova-models/remote-model-providers.webp) Go to Remote Model Providers ### [Add New Provider](#add-new-provider) Click on Add New Provider button from the top right corner. [![Add New Provider](/how-to/use-sambanova-models/add-new-provider.webp)](/how-to/use-sambanova-models/add-new-provider.webp) Add New Provider ### [Choose Open AI Compatible Provider](#choose-open-ai-compatible-provider) From the Models Provider dropdown, select Open AI Compatible. [![Choose Open AI Compatible Provider](/how-to/use-sambanova-models/openai-compatible-provider.webp)](/how-to/use-sambanova-models/openai-compatible-provider.webp) Choose Open AI Compatible Provider ### [Provide Name, API Endpoint, and API Key](#provide-name-api-endpoint-and-api-key) In the input boxes, provide the appropriate values for Name, API Endpoint, and API Key. * **API Endpoint:** `https://api.sambanova.ai/v1` * **Get your API key from:** [https://cloud.sambanova.ai/apis](https://cloud.sambanova.ai/apis) [![Provide Name, API Endpoint, and API Key](/how-to/use-sambanova-models/name-endpoint-and-key.webp)](/how-to/use-sambanova-models/name-endpoint-and-key.webp) Provide Name, API Endpoint, and API Key ### [Add a Model](#add-a-model) SambaNova doesn't return available models through a `/v1/models` API endpoint so Msty cannot fetch them automatically. We'll need to manually add the models. You can add more models as necessary. You can choose to add any or all of the following models: * `Meta-Llama-3.1-8B-Instruct` * `Meta-Llama-3.1-70B-Instruct` * `Meta-Llama-3.1-405B-Instruct` Once you are done adding models, click the Add button on the bottom right. [![Add a Model](/how-to/use-sambanova-models/add-a-custom-model.webp)](/how-to/use-sambanova-models/add-a-custom-model.webp) Add a Model ### [Start Chatting](#start-chatting) From the model selector in a new chat, select the model that you just added and start chatting. [![Start Chatting](/how-to/use-sambanova-models/start-chatting.webp)](/how-to/use-sambanova-models/start-chatting.webp) Start Chatting [Add Models Not Included in Registry\ \ Add models that are not included in the model registry to Msty](/how-to-guides/add-models-not-included-in-registry) [Creating a Knowledge Stack\ \ Step-by-step guide to creating and populating Knowledge Stacks](/how-to-guides/create-knowledge-stacks) --- # Knowledge Stack Basics - Msty Docs Knowledge Stack Basics ====================== Get started with Knowledge Stacks in Msty Knowledge Stacks let you chat with your content - from simple documents to entire knowledge bases. Think of it as having a smart assistant that has read and understood all your materials. All processing happens privately on your device. Your content stays under your control! [What Can You Add?](#what-can-you-add) --------------------------------------- Files Obsidian Folders Notes YouTube ### [Documents & Files](#documents-files) Supported formats include: * Documents: PDF, Word (.docx), RTF * Text: Markdown, TXT, CSV * Data: JSON, JSONL * Books: EPUB * And many more! [![File import interface](/how-to/create-knowledge-stack/file-import.webp)](/how-to/create-knowledge-stack/file-import.webp) File import interface ### [Obsidian Vaults](#obsidian-vaults) Import entire vaults while preserving: * Folder structure * Internal links * Metadata * Attachments [![Obsidian import interface](/how-to/create-knowledge-stack/obsidian-import.webp)](/how-to/create-knowledge-stack/obsidian-import.webp) Obsidian import interface ### [Folder Import](#folder-import) Add entire folders of content: * Maintains structure * Processes all supported files * Bulk import capability [![Folder import interface](/how-to/create-knowledge-stack/folder-import.webp)](/how-to/create-knowledge-stack/folder-import.webp) Folder import interface ### [Quick Notes](#quick-notes) Add custom notes directly: * Type or paste text * Supports markdown * Perfect for quick additions [![Custom notes interface](/how-to/create-knowledge-stack/custom-notes-import.webp)](/how-to/create-knowledge-stack/custom-notes-import.webp) Custom notes interface ### [YouTube Content](#youtube-content) Add video knowledge: * Paste single or multiple URLs (space-separated) * Auto-fetches transcripts * Includes video metadata [![YouTube import interface](/how-to/create-knowledge-stack/youtube-import.webp)](/how-to/create-knowledge-stack/youtube-import.webp) YouTube import interface [Getting Started](#getting-started) ------------------------------------ ### [1\. Create a Stack](#_1-create-a-stack) Click the Knowledge Stack button in the sidebar [![New Knowledge Stack button](/how-to/create-knowledge-stack/new-stack-button.webp)](/how-to/create-knowledge-stack/new-stack-button.webp) New Knowledge Stack button ### [2\. Add Content](#_2-add-content) * Drag & drop files or folders * Browse for content * Paste YouTube links * Type quick notes ### [3\. Configure Settings](#_3-configure-settings) Click the gear icon to adjust: * Embedding model (local/remote) * Chunk settings * Processing options Start with default settings - they work great for most content! See [Advanced Features](/features/knowledge-stack/advanced-features) for customization. ### [4\. Save & Activate](#_4-save-activate) Choose your workflow: * **Save Draft**: Store for later * **Compose**: Build and activate * **Three-dot Menu**: * "Compose new changes": Update with new content * "Recompose Stack": Apply setting changes [Using Your Stack](#using-your-stack) -------------------------------------- 1. **Start a Chat** * Click the chat icon * Select your Knowledge Stack(s) * Multiple stacks can be active at once 2. **Adjust Search** * Set similarity (Low to Highest) * Choose number of chunks (default: 15) * Enable Jina AI reranking (optional) 3. **Ask Questions** * Use natural language * Get sourced answers * Reference multiple stacks Want to understand how it works? Check out our guides on: * [Embeddings](/features/knowledge-stack/embeddings) * [RAG Technology](/features/knowledge-stack/rag-explained) * [Advanced Settings](/features/knowledge-stack/advanced-features) [Best Practices](#best-practices) ---------------------------------- 1. **Organize Content** * Group related materials * Use clear names * Keep stacks focused 2. **Optimize Processing** * Start with default settings * Test with sample questions * Adjust based on results 3. **Manage Updates** * Use "Compose new changes" for content updates * "Recompose Stack" for setting changes * Review results after major changes New to Knowledge Stacks? Start with a small set of related content to get familiar with the features! [Export Chat\ \ Save your conversations in Markdown or JSON](/features/export-chat) [Understanding Embeddings\ \ Learn how Msty makes your documents searchable](/features/knowledge-stack/embeddings) --- # Install Msty on Linux - Msty Docs Install Msty on Linux ===================== Learn how to install Msty on your Linux machine Follow the instructions below to install Msty's .AppImage or .deb installer on your Linux machine. [Download Msty](#download-msty) -------------------------------- If you haven't downloaded Msty already, get started by [downloading](/getting-started/download) it first. [Installing Msty](#installing-msty) ------------------------------------ Once you have downloaded Msty, navigate to the directory where you downloaded the installer from the terminal. AppImage deb ### [AppImage](#appimage) From the terminal, run the following command to make the downloaded AppImage file executable: `chmod a+x ./.AppImage` Then run the following command to open Msty from the terminal: `./.AppImage --no-sandbox` Note: You may need to install appropriate packages like libfuse2 (if your system does not have them already) in order to run the AppImage file. ### [deb](#deb) From the terminal, run the following command to install Msty on your system: `sudo apt install ./.deb` Once the installation finishes, run the following command to run Msty from the terminal: `msty` Sometimes the installation may experience permission issues if the '\_apt' user does not have enough privileges. In that case, run the following two commands to mitigate this issue and then run Msty again. `sudo chown root:root /opt/Msty/chrome-sandbox` `sudo chmod 4755 /opt/Msty/chrome-sandbox` [Get the latest version of Local AI service\ \ Learn how to get the latest version of Local AI service](/how-to-guides/get-the-latest-version-of-local-ai-service) [Make Local AI service available on your network\ \ Learn how to access Local AI service from other devices on your network](/how-to-guides/make-local-ai-service-available-on-the-network) ---