← Back
Editing: app_context_chat.html
<!DOCTYPE html> <html class="writer-html5" lang="en" data-content_root="../"> <head> <meta charset="utf-8" /> <meta name="readthedocs-addons-api-version" content="1"><meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>App: Context Chat — Nextcloud latest Administration Manual latest documentation</title> <link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=b86133f3" /> <link rel="stylesheet" type="text/css" href="../_static/css/theme.css?v=e59714d7" /> <link rel="stylesheet" type="text/css" href="../_static/copybutton.css?v=76b2166b" /> <link rel="stylesheet" type="text/css" href="../_static/custom.css?v=8ff6e0db" /> <link rel="stylesheet" type="text/css" href="../_static/dark_mode_css/general.css?v=c0a7eb24" /> <link rel="stylesheet" type="text/css" href="../_static/dark_mode_css/dark.css?v=70edf1c7" /> <link rel="canonical" href="https://docs.nextcloud.com/server/stable/admin_manual/ai/app_context_chat.html" /> <script src="../_static/jquery.js?v=5d32c60e"></script> <script src="../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script> <script src="../_static/documentation_options.js?v=a49d5d77"></script> <script src="../_static/doctools.js?v=9bcbadda"></script> <script src="../_static/sphinx_highlight.js?v=dc90522c"></script> <script src="../_static/clipboard.min.js?v=a7894cd8"></script> <script src="../_static/copybutton.js?v=f281be69"></script> <script src="../_static/dark_mode_js/default_light.js?v=c2e647ce"></script> <script src="../_static/dark_mode_js/theme_switcher.js?v=358d3910"></script> <script src="../_static/js/theme.js"></script> <script src="../_static/js/versions.js"></script> <link rel="index" title="Index" href="../genindex.html" /> <link rel="search" title="Search" href="../search.html" /> <link rel="next" title="App: Context Agent (context_agent)" href="app_context_agent.html" /> <link rel="prev" title="App: Recognize" href="app_recognize.html" /> </head> <body class="wy-body-for-nav"> <div class="wy-grid-for-nav"> <nav data-toggle="wy-nav-shift" class="wy-nav-side"> <div class="wy-side-scroll"> <div class="wy-side-nav-search" > <a href="../contents.html"> <img src="../_static/logo-white.png" class="logo" alt="Logo"/> </a> <div class="switch-menus"> <div class="version-switch"></div> <div class="language-switch"></div> </div> <div role="search"> <form id="rtd-search-form" class="wy-form" action="../search.html" method="get"> <input type="text" name="q" placeholder="Search docs" aria-label="Search docs" /> <input type="hidden" name="check_keywords" value="yes" /> <input type="hidden" name="area" value="default" /> </form> </div> </div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu"> <p class="caption" role="heading"><span class="caption-text">Getting Started</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="../index.html">Introduction</a></li> <li class="toctree-l1"><a class="reference internal" href="../release_schedule.html">Maintenance and release schedule</a></li> <li class="toctree-l1"><a class="reference internal" href="../gdpr/index.html">GDPR-compliance</a></li> <li class="toctree-l1"><a class="reference internal" href="../declarations/index.html">Declarations</a></li> </ul> <p class="caption" role="heading"><span class="caption-text">Release notes</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="../release_notes/index.html">Critical changes</a></li> </ul> <p class="caption" role="heading"><span class="caption-text">Installation</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="../installation/index.html">Installation and server configuration</a></li> <li class="toctree-l1"><a class="reference internal" href="../configuration_database/index.html">Database configuration</a></li> </ul> <p class="caption" role="heading"><span class="caption-text">Configuration</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="../configuration_server/index.html">Nextcloud configuration</a></li> <li class="toctree-l1"><a class="reference internal" href="../occ_command.html">Using the occ command</a></li> <li class="toctree-l1"><a class="reference internal" href="../reference/index.html">Reference management</a></li> <li class="toctree-l1"><a class="reference internal" href="../webhook_listeners/index.html">Webhook Listeners</a></li> <li class="toctree-l1"><a class="reference internal" href="../windmill_workflows/index.html">Windmill Workflows</a></li> </ul> <p class="caption" role="heading"><span class="caption-text">Files</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="../configuration_files/index.html">File sharing and management</a></li> <li class="toctree-l1"><a class="reference internal" href="../file_workflows/index.html">Flow</a></li> <li class="toctree-l1"><a class="reference internal" href="../configuration_mimetypes/index.html">Mimetypes management</a></li> </ul> <p class="caption" role="heading"><span class="caption-text">Apps</span></p> <ul class="current"> <li class="toctree-l1"><a class="reference internal" href="../apps_management.html">Apps management</a></li> <li class="toctree-l1"><a class="reference internal" href="../exapps_management/index.html">ExApps management</a></li> <li class="toctree-l1 current"><a class="reference internal" href="index.html">Artificial Intelligence</a><ul class="current"> <li class="toctree-l2"><a class="reference internal" href="overview.html">Overview</a></li> <li class="toctree-l2"><a class="reference internal" href="app_assistant.html">Nextcloud Assistant</a></li> <li class="toctree-l2"><a class="reference internal" href="app_translate2.html">App: Local Machine translation 2 (translate2)</a></li> <li class="toctree-l2"><a class="reference internal" href="app_llm2.html">App: Local large language model (llm2)</a></li> <li class="toctree-l2"><a class="reference internal" href="app_stt_whisper2.html">App: Local Whisper Speech-To-Text (stt_whisper2)</a></li> <li class="toctree-l2"><a class="reference internal" href="app_text2image_stablediffusion2.html">App: Local Image Generation (text2image_stablediffusion2)</a></li> <li class="toctree-l2"><a class="reference internal" href="app_recognize.html">App: Recognize</a></li> <li class="toctree-l2 current"><a class="current reference internal" href="#">App: Context Chat</a><ul> <li class="toctree-l3"><a class="reference internal" href="#requirements">Requirements</a><ul> <li class="toctree-l4"><a class="reference internal" href="#space-usage">Space usage</a></li> </ul> </li> <li class="toctree-l3"><a class="reference internal" href="#installation">Installation</a></li> <li class="toctree-l3"><a class="reference internal" href="#initial-loading-of-data">Initial loading of data</a><ul> <li class="toctree-l4"><a class="reference internal" href="#auto-indexing">Auto-indexing</a></li> <li class="toctree-l4"><a class="reference internal" href="#synchronous-indexing">Synchronous indexing</a></li> </ul> </li> <li class="toctree-l3"><a class="reference internal" href="#scaling">Scaling</a></li> <li class="toctree-l3"><a class="reference internal" href="#app-store">App store</a></li> <li class="toctree-l3"><a class="reference internal" href="#repository">Repository</a></li> <li class="toctree-l3"><a class="reference internal" href="#commands-occ">Commands (OCC)</a></li> <li class="toctree-l3"><a class="reference internal" href="#configuration-options">Configuration Options</a></li> <li class="toctree-l3"><a class="reference internal" href="#logs">Logs</a></li> <li class="toctree-l3"><a class="reference internal" href="#troubleshooting">Troubleshooting</a></li> <li class="toctree-l3"><a class="reference internal" href="#file-access-control-rules-not-supported">File access control rules not supported</a></li> <li class="toctree-l3"><a class="reference internal" href="#known-limitations">Known Limitations</a></li> </ul> </li> <li class="toctree-l2"><a class="reference internal" href="app_context_agent.html">App: Context Agent (context_agent)</a></li> <li class="toctree-l2"><a class="reference internal" href="app_summary_bot.html">App: Summary Bot (Talk chat summarize bot)</a></li> <li class="toctree-l2"><a class="reference internal" href="app_text2speech_kokoro.html">App: Local Text-To-Speech (text2speech_kokoro)</a></li> <li class="toctree-l2"><a class="reference internal" href="app_live_transcription.html">App: Live Transcription and Translation in Nextcloud Talk (live_transcription)</a></li> <li class="toctree-l2"><a class="reference internal" href="ai_as_a_service.html">AI as a Service</a></li> <li class="toctree-l2"><a class="reference internal" href="insight_and_debugging.html">Insight and debugging</a></li> </ul> </li> </ul> <p class="caption" role="heading"><span class="caption-text">Users</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="../configuration_user/index.html">User management</a></li> <li class="toctree-l1"><a class="reference internal" href="../desktop/index.html">Desktop Clients</a></li> </ul> <p class="caption" role="heading"><span class="caption-text">Groupware</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="../groupware/index.html">Groupware</a></li> </ul> <p class="caption" role="heading"><span class="caption-text">Office</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="../office/index.html">Office</a></li> </ul> <p class="caption" role="heading"><span class="caption-text">Maintenance</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="../configuration_monitoring/index.html">Monitoring</a></li> <li class="toctree-l1"><a class="reference internal" href="../maintenance/index.html">Maintenance</a></li> <li class="toctree-l1"><a class="reference internal" href="../issues/index.html">Issues and troubleshooting</a></li> </ul> <p class="caption" role="heading"><span class="caption-text">Links</span></p> <ul> <li class="toctree-l1"><a class="reference external" href="https://help.nextcloud.com/">Community Help Forum</a></li> <li class="toctree-l1"><a class="reference external" href="https://docs.nextcloud.com/">User Manuals</a></li> <li class="toctree-l1"><a class="reference external" href="https://docs.nextcloud.com/">Developer Manuals</a></li> <li class="toctree-l1"><a class="reference external" href="https://nextcloud.com/install/">Download</a></li> <li class="toctree-l1"><a class="reference external" href="https://apps.nextcloud.com">App Store</a></li> <li class="toctree-l1"><a class="reference external" href="https://help.nextcloud.com/t/translation-knowledge-valid-for-the-entire-nextcloud-project-wiki/51550">Translations</a></li> <li class="toctree-l1"><a class="reference external" href="https://github.com/nextcloud/">GitHub</a></li> <li class="toctree-l1"><a class="reference external" href="https://github.com/nextcloud/server/wiki/Maintenance-and-Release-Schedule">Supported versions</a></li> <li class="toctree-l1"><a class="reference external" href="https://nextcloud.com/enterprise/">Nextcloud Enterprise</a></li> <li class="toctree-l1"><a class="reference external" href="https://github.com/nextcloud/server/blob/master/COPYING-README">License</a></li> <li class="toctree-l1"><a class="reference external" href="https://nextcloud.com/">Nextcloud GmbH</a></li> </ul> </div> </div> </nav> <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" > <i data-toggle="wy-nav-top" class="fa fa-bars"></i> <a href="../contents.html">Nextcloud latest Administration Manual</a> </nav> <div class="wy-nav-content"> <div class="rst-content style-external-links"> <div role="navigation" aria-label="Page navigation"> <ul class="wy-breadcrumbs"> <li><a href="../contents.html" class="icon icon-home" aria-label="Home"></a></li> <li class="breadcrumb-item"><a href="index.html">Artificial Intelligence</a></li> <li class="breadcrumb-item active">App: Context Chat</li> <li class="wy-breadcrumbs-aside"> <a href="https://github.com/nextcloud/documentation/edit/master/admin_manual/ai/app_context_chat.rst" class="fa fa-github"> Edit on GitHub</a> </li> </ul> <hr/> </div> <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> <div itemprop="articleBody"> <section id="app-context-chat"> <h1>App: Context Chat<a class="headerlink" href="#app-context-chat" title="Link to this heading"></a></h1> <p id="ai-app-context-chat">Context Chat is an <a class="reference internal" href="app_assistant.html#ai-app-assistant"><span class="std std-ref">assistant</span></a> feature that is implemented via an ensemble of two apps:</p> <blockquote> <div><ul class="simple"> <li><p>the <code class="docutils literal notranslate"><span class="pre">context_chat</span></code> app, written purely in PHP</p></li> <li><p>the <code class="docutils literal notranslate"><span class="pre">context_chat_backend</span></code> ExternalApp written in Python</p></li> </ul> </div></blockquote> <p>Together they provide the ContextChat <em>text processing</em> and <em>search</em> tasks accessible via the <a class="reference internal" href="app_assistant.html#ai-app-assistant"><span class="std std-ref">Nextcloud Assistant app</span></a>.</p> <p>The <code class="docutils literal notranslate"><span class="pre">context_chat</span></code> and <code class="docutils literal notranslate"><span class="pre">context_chat_backend</span></code> apps will use the configured text-to-text task processing provider, which is required on a fresh install. It can be configured to run open source models entirely on-premises, see the list of providers <a class="reference internal" href="overview.html#tp-consumer-apps"><span class="std std-ref">here</span></a> in the “Backend apps” section.</p> <p>This app supports input and output in the same languages that the currently configured text-to-text task processing provider supports.</p> <section id="requirements"> <h2>Requirements<a class="headerlink" href="#requirements" title="Link to this heading"></a></h2> <ul> <li><p>Minimal Nextcloud version: 30</p></li> <li><p>Nextcloud AIO is supported</p></li> <li><p>We currently support NVIDIA GPUs and x86_64 CPUs</p></li> <li><p>CPU that supports AVX and AVX2 instruction</p></li> <li><p>CUDA >= v12.2 on your host system</p></li> <li><p>GPU Setup Sizing</p> <blockquote> <div><ul class="simple"> <li><dl class="simple"> <dt>A NVIDIA GPU with at least 2GB VRAM</dt><dd><ul> <li><p>The requirements for the text-to-text providers should be checked separately for each app <a class="reference internal" href="overview.html#tp-consumer-apps"><span class="std std-ref">here</span></a> in the “Backend apps” section, as they can vary greatly based on the model used and whether the provider is hosted locally or remotely.</p></li> </ul> </dd> </dl> </li> <li><dl class="simple"> <dt>At least 8GB of system RAM</dt><dd><ul> <li><p>2 GB + additional 500MB for each concurrent request made to the backend if configuration parameters are changed</p></li> </ul> </dd> </dl> </li> </ul> </div></blockquote> </li> <li><p>CPU Setup Sizing</p> <blockquote> <div><ul class="simple"> <li><dl class="simple"> <dt>At least 12GB of system RAM</dt><dd><ul> <li><p>2 GB + additional 500MB for each additional concurrent query request</p></li> <li><p>8 GB is recommended in the above case for the default settings</p></li> </ul> </dd> </dl> </li> <li><p>This app makes use of the configured text-to-text task processing provider instead of running its own language model by default, thus 4+ cores for the embedding model is needed</p></li> </ul> </div></blockquote> </li> <li><p>A dedicated machine is recommended</p></li> </ul> <section id="space-usage"> <h3>Space usage<a class="headerlink" href="#space-usage" title="Link to this heading"></a></h3> <p>This app employs a bundled DB with Vector support called <a class="reference external" href="https://www.postgresql.org/">PostgreSQL</a>. All the users’ textual data is duplicated, chunked and stored on disk in this vector DB along with semantic embedding vectors for the content.</p> </section> </section> <section id="installation"> <h2>Installation<a class="headerlink" href="#installation" title="Link to this heading"></a></h2> <ol class="arabic simple"> <li><p>Make sure the <a class="reference internal" href="app_assistant.html#ai-app-assistant"><span class="std std-ref">Nextcloud Assistant app</span></a> is installed</p></li> <li><p>Setup a <a class="reference internal" href="../exapps_management/AppAPIAndExternalApps.html#ai-app-api"><span class="std std-ref">Deploy Daemon</span></a> in AppAPI Admin settings</p></li> <li><p>Install the <code class="docutils literal notranslate"><span class="pre">context_chat_backend</span></code> ExApp via the “Apps” page in Nextcloud, or by executing (checkout the readme at <a class="reference external" href="https://github.com/nextcloud/context_chat_backend">https://github.com/nextcloud/context_chat_backend</a> for manual install steps)</p></li> </ol> <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">occ</span> <span class="n">app_api</span><span class="p">:</span><span class="n">app</span><span class="p">:</span><span class="n">register</span> <span class="n">context_chat_backend</span> </pre></div> </div> <ol class="arabic simple" start="4"> <li><p>Install the <code class="docutils literal notranslate"><span class="pre">context_chat</span></code> app via the “Apps” page in Nextcloud, or by executing</p></li> </ol> <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">occ</span> <span class="n">app</span><span class="p">:</span><span class="n">enable</span> <span class="n">context_chat</span> </pre></div> </div> <ol class="arabic simple" start="5"> <li><p>Install a text-to-text provider (text generation provider) via the “Apps” page in Nextcloud. A list of providers can be found <a class="reference internal" href="overview.html#tp-consumer-apps"><span class="std std-ref">here</span></a> in the “Backend apps” section.</p></li> <li><p>Optionally but recommended, setup background workers for faster pickup of tasks. See <a class="reference internal" href="overview.html#ai-overview-improve-ai-task-pickup-speed"><span class="std std-ref">the relevant section in AI Overview</span></a> for more information.</p></li> </ol> <p><strong>Note</strong>: Both apps need to be installed and both major version and minor version of the two apps must match for the functionality to work (ie. “v1.3.4” and “v1.3.1”; but not “v1.3.4” and “v2.1.6”; and not “v1.3.4” and “v1.4.5”). Keep this in mind when updating.</p> </section> <section id="initial-loading-of-data"> <h2>Initial loading of data<a class="headerlink" href="#initial-loading-of-data" title="Link to this heading"></a></h2> <section id="auto-indexing"> <h3>Auto-indexing<a class="headerlink" href="#auto-indexing" title="Link to this heading"></a></h3> <div class="line-block"> <div class="line">Context chat will automatically load user data into the Vector DB using asynchronous background jobs.</div> <div class="line">The initial loading of data can take a long time depending on the number of files and their size.</div> </div> <p>The indexing jobs are set up to run during the Nextcloud instance’s maintenance window (typically during the night) only. If you have not set a maintenance window, indexing will run 24/7.</p> <div class="line-block"> <div class="line">You can set up a separate cron job to run every 30 minutes for Context Chat to avoid slowing down normal background job operation on larger instances.</div> <div class="line">The following command can bypass the maintenance window so it can either be set to run during the day even with a maintenance window set, or it can be set to run during the weekends 24/7 to speed up the indexing process.</div> </div> <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">php</span> <span class="n">cron</span><span class="o">.</span><span class="n">php</span> <span class="s2">"OCA</span><span class="se">\\</span><span class="s2">ContextChat</span><span class="se">\\</span><span class="s2">BackgroundJobs</span><span class="se">\\</span><span class="s2">IndexerJob"</span> <span class="s2">"OCA</span><span class="se">\\</span><span class="s2">ContextChat</span><span class="se">\\</span><span class="s2">BackgroundJobs</span><span class="se">\\</span><span class="s2">ActionJob"</span> <span class="s2">"OCA</span><span class="se">\\</span><span class="s2">ContextChat</span><span class="se">\\</span><span class="s2">BackgroundJobs</span><span class="se">\\</span><span class="s2">SubmitContentJob"</span> <span class="s2">"OCA</span><span class="se">\\</span><span class="s2">ContextChat</span><span class="se">\\</span><span class="s2">BackgroundJobs</span><span class="se">\\</span><span class="s2">StorageCrawlJob"</span> <span class="s2">"OCA</span><span class="se">\\</span><span class="s2">ContextChat</span><span class="se">\\</span><span class="s2">BackgroundJobs</span><span class="se">\\</span><span class="s2">InitialContentImportJob"</span> </pre></div> </div> </section> <section id="synchronous-indexing"> <h3>Synchronous indexing<a class="headerlink" href="#synchronous-indexing" title="Link to this heading"></a></h3> <div class="line-block"> <div class="line">To index all the files synchronously, use the following command:</div> <div class="line">Note: This does not interact with the auto-indexing feature and that list would remain unchanged. However, the indexed files would be skipped when the auto indexer runs.</div> </div> <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">occ</span> <span class="n">context_chat</span><span class="p">:</span><span class="n">scan</span> <span class="o"><</span><span class="n">user_id</span><span class="o">></span> </pre></div> </div> <p><strong>Note</strong>: The synchronous command could take several days to complete. On larger systems we thus recommend to use auto-indexing.</p> </section> </section> <section id="scaling"> <h2>Scaling<a class="headerlink" href="#scaling" title="Link to this heading"></a></h2> <p>Listed below are the major parts of the system that can be scaled independently to improve performance:</p> <ol class="arabic"> <li><p>The text-to-text task processing provider (from among the list of providers <a class="reference internal" href="overview.html#tp-consumer-apps"><span class="std std-ref">here</span></a> in the “Backend apps” section)</p> <p>The text-to-text task processing provider can be scaled by using a hosted service using the <a class="reference external" href="https://apps.nextcloud.com/apps/integration_openai">OpenAI and LocalAI integration (via OpenAI API)</a> like OpenAI or by hosting your own model on powerful hardware.</p> </li> <li><p>The vector DB performance</p> <div class="line-block"> <div class="line">The vector DB performance can be scaled by using a dedicated or cluster setup for PostgreSQL with the pgvector extension.</div> <div class="line">The connection string of the external vector DB can be set using the environment variable <code class="docutils literal notranslate"><span class="pre">EXTERNAL_DB</span></code> during deployment in the “Deploy Options”.</div> </div> </li> <li><p>The embedding model performance</p> <div class="line-block"> <div class="line">The embedding model performance can be scaled by using a hosted embedding service, locally or remotely hosted. It should be able to serve an OpenAI-compatible API.</div> <div class="line">The embedding service URL can be set using the environment variable <code class="docutils literal notranslate"><span class="pre">CC_EM_BASE_URL</span></code> during deployment in the “Deploy Options”. Other options like the model name, api key, or username and password can be set using the environment variables <code class="docutils literal notranslate"><span class="pre">CC_EM_MODEL_NAME</span></code>, <code class="docutils literal notranslate"><span class="pre">CC_EM_API_KEY</span></code>, <code class="docutils literal notranslate"><span class="pre">CC_EM_USERNAME</span></code>, and <code class="docutils literal notranslate"><span class="pre">CC_EM_PASSWORD</span></code> respectively.</div> </div> </li> </ol> <p>One part of the system that cannot be scaled yet is the parsing of the documents to extract text. This is currently done in a single instance of the <code class="docutils literal notranslate"><span class="pre">context_chat_backend</span></code> ExApp. It is a CPU-bound task so having a powerful CPU will help speed up the parsing process.</p> <p>If <code class="docutils literal notranslate"><span class="pre">context_chat_backend</span></code> is already deployed, you can change these environment variables by redeploying it with the new values.</p> <ol class="arabic simple"> <li><p>Go to Apps page -> search for “Context Chat Backend”</p></li> <li><p>Disable and remove the app taking care the data is not removed</p></li> <li><p>Set the “Deploy Options” with the new environment variables</p></li> <li><p>Reinstall the app</p></li> </ol> </section> <section id="app-store"> <h2>App store<a class="headerlink" href="#app-store" title="Link to this heading"></a></h2> <p>You can also find the <code class="docutils literal notranslate"><span class="pre">context_chat</span></code> app in our app store, where you can write a review: <a class="reference external" href="https://apps.nextcloud.com/apps/context_chat">https://apps.nextcloud.com/apps/context_chat</a></p> </section> <section id="repository"> <h2>Repository<a class="headerlink" href="#repository" title="Link to this heading"></a></h2> <p>You can find the app’s code repository on GitHub where you can report bugs and contribute fixes and features: <a class="reference external" href="https://github.com/nextcloud/context_chat">https://github.com/nextcloud/context_chat</a> and <a class="reference external" href="https://github.com/nextcloud/context_chat_backend">https://github.com/nextcloud/context_chat_backend</a></p> <p>Nextcloud customers should file bugs directly with our Customer Support.</p> </section> <section id="commands-occ"> <h2>Commands (OCC)<a class="headerlink" href="#commands-occ" title="Link to this heading"></a></h2> <p>The options for each command can be found like this, using scan as example: <code class="docutils literal notranslate"><span class="pre">context_chat:scan</span> <span class="pre">--help</span></code></p> <ul> <li><dl class="simple"> <dt><code class="docutils literal notranslate"><span class="pre">context_chat:prompt</span></code></dt><dd><p>Ask a question about your data, with options for selective context.</p> </dd> </dl> </li> <li><dl class="simple"> <dt><code class="docutils literal notranslate"><span class="pre">context_chat:search</span></code></dt><dd><p>Perform a semantic (vector DB based) search on your indexed documents, with options for selective context.</p> </dd> </dl> </li> <li><dl class="simple"> <dt><code class="docutils literal notranslate"><span class="pre">context_chat:scan</span></code></dt><dd><p>Scan and index the user’s documents based on the user ID provided, synchronously.</p> </dd> </dl> </li> <li><dl> <dt><code class="docutils literal notranslate"><span class="pre">context_chat:stats</span></code></dt><dd><div class="line-block"> <div class="line">Shows the time taken to complete the initial indexing of the documents if it has finished,</div> <div class="line">and the current no. of items in the indexer and actions queue.</div> <div class="line">“Actions” refers to tasks like file deletions, ownership changes through share changes, etc.</div> <div class="line">These file and ownership changes are synced with the backed through this actions queue.</div> </div> </dd> </dl> </li> </ul> </section> <section id="configuration-options"> <h2>Configuration Options<a class="headerlink" href="#configuration-options" title="Link to this heading"></a></h2> <ul class="simple"> <li><dl class="simple"> <dt><code class="docutils literal notranslate"><span class="pre">auto_indexing</span></code> boolean (default: true)</dt><dd><p>To allow/disallow the IndexerJob from running in the background</p> </dd> </dl> </li> </ul> <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">occ</span> <span class="n">config</span><span class="p">:</span><span class="n">app</span><span class="p">:</span><span class="nb">set</span> <span class="n">context_chat</span> <span class="n">auto_indexing</span> <span class="o">--</span><span class="n">value</span><span class="o">=</span><span class="n">true</span> <span class="o">--</span><span class="nb">type</span><span class="o">=</span><span class="n">boolean</span> </pre></div> </div> </section> <section id="logs"> <h2>Logs<a class="headerlink" href="#logs" title="Link to this heading"></a></h2> <p>Logs for both the <code class="docutils literal notranslate"><span class="pre">context_chat</span></code> PHP app and the <code class="docutils literal notranslate"><span class="pre">context_chat_backend</span></code> ExApp can be found in the admin settings of your Nextcloud GUI as well as in the Context Chat log file, which is usually located in the Nextcloud data directory. The log file is named <code class="docutils literal notranslate"><span class="pre">context_chat.log</span></code>.</p> </section> <section id="troubleshooting"> <h2>Troubleshooting<a class="headerlink" href="#troubleshooting" title="Link to this heading"></a></h2> <ol class="arabic simple"> <li><p>If the docker container seems to suddenly restart during indexing or querying, it could be related to RAM/storage filling up, or AVX being unavailable on the system. AVX can be checked using <code class="docutils literal notranslate"><span class="pre">grep</span> <span class="pre">-i</span> <span class="pre">avx</span> <span class="pre">/proc/cpuinfo</span></code> command on the host system. If AVX is not available, the app will not work.</p></li> <li><p>Look for issues in the diagnostic logs, the server logs and the docker container <code class="docutils literal notranslate"><span class="pre">nc_app_context_chat_container</span></code> logs. If unsure, open an issue in either of the repositories.</p></li> <li><p>Check “Admin settings -> Context Chat” for statistics and information about the indexing process.</p></li> </ol> </section> <section id="file-access-control-rules-not-supported"> <h2>File access control rules not supported<a class="headerlink" href="#file-access-control-rules-not-supported" title="Link to this heading"></a></h2> <p>In Nextcloud you can set up file access control rules using the [files_accesscontrol](<a class="reference external" href="https://apps.nextcloud.com/apps/files_accesscontrol">https://apps.nextcloud.com/apps/files_accesscontrol</a>) app to restrict access to certain files.</p> <div class="line-block"> <div class="line">Context Chat does <strong>not</strong> follow these rules</div> </div> <p>It is thus possible for users who have been denied access to a document via the files_accesscontrol app to still gain access via Context Chat if the document is visible in the files app for the user in question.</p> </section> <section id="known-limitations"> <h2>Known Limitations<a class="headerlink" href="#known-limitations" title="Link to this heading"></a></h2> <ul class="simple"> <li><p>Language models are likely to generate false information and should thus only be used in situations that are not critical. It’s recommended to only use AI at the beginning of a creation process and not at the end, so that outputs of AI serve as a draft for example and not as final product. Always check the output of language models before using it and make sure whether it meets your use-case’s quality requirements.</p></li> <li><p>Customer support is available upon request, however we can’t solve false or problematic output, most performance issues, or other problems caused by the underlying model. Support is thus limited only to bugs directly caused by the implementation of the app (connectors, API, front-end, AppAPI).</p></li> <li><p>Files larger than 100MB are not supported</p></li> <li><p>Password protected PDFs or any other files are not supported. There will be error logs mentioning cryptography and AES in the docker container when such files are encountered but it is nothing to worry about, they will be simply ignored and the system will continue to function normally.</p></li> <li><p>Podman and Kubernetes are currently not supported for the Context Chat Backend ExApp.</p></li> <li><p>External storages (through <code class="docutils literal notranslate"><span class="pre">files_external</span></code>) may not work as well as the local storage.</p></li> </ul> </section> </section> </div> </div> <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer"> <a href="app_recognize.html" class="btn btn-neutral float-left" title="App: Recognize" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a> <a href="app_context_agent.html" class="btn btn-neutral float-right" title="App: Context Agent (context_agent)" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a> </div> <hr/> <div role="contentinfo"> <p>© Copyright 2016-2026 Nextcloud GmbH and Nextcloud contributors.</p> </div> </footer> </div> </div> </section> </div> <div class="rst-versions" data-toggle="rst-versions" role="note" aria-label="versions"> <span class="rst-current-version" data-toggle="rst-current-version"> ☁️ latest <span class="fa fa-caret-down"></span> </span> <div class="rst-other-versions"> <dl> <dt>☁️ Versions</dt> <dd style="width: 32%"> <a href="https://docs.nextcloud.com/server/latest/admin_manual" style="color: var(--dark-link-color);" > latest </a> </dd> <dd style="width: 32%"> <a href="https://docs.nextcloud.com/server/stable/admin_manual" > stable </a> </dd> <dd style="width: 32%"> <a href="https://docs.nextcloud.com/server/32/admin_manual" > 32 </a> </dd> <dd style="width: 32%"> <a href="https://docs.nextcloud.com/server/31/admin_manual" > 31 </a> </dd> </dl> </div> </div> <script> jQuery(function () { SphinxRtdTheme.Navigation.enable(true); }); </script> </body> </html>
Save File
Cancel