f7cloud_client/core/doc/admin/ai/overview.html
root 8b6a0139db f7cloud_client
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-17 22:59:26 +00:00

983 lines
55 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!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>Overview &mdash; F7cloud 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" />
<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=f4332903"></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="F7cloud Assistant" href="app_assistant.html" />
<link rel="prev" title="Artificial Intelligence" href="index.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>
</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">F7cloud 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 current"><a class="current reference internal" href="#">Overview</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#overview-of-ai-features">Overview of AI features</a></li>
<li class="toctree-l3"><a class="reference internal" href="#ethical-ai-rating">Ethical AI Rating</a></li>
<li class="toctree-l3"><a class="reference internal" href="#features-used-by-other-apps">Features used by other apps</a><ul>
<li class="toctree-l4"><a class="reference internal" href="#text-processing">Text processing</a></li>
<li class="toctree-l4"><a class="reference internal" href="#machine-translation">Machine translation</a></li>
<li class="toctree-l4"><a class="reference internal" href="#speech-to-text">Speech-To-Text</a></li>
<li class="toctree-l4"><a class="reference internal" href="#image-generation">Image generation</a></li>
<li class="toctree-l4"><a class="reference internal" href="#text-to-speech">Text-To-Speech</a></li>
<li class="toctree-l4"><a class="reference internal" href="#context-chat">Context Chat</a></li>
<li class="toctree-l4"><a class="reference internal" href="#context-chat-search">Context Chat Search</a></li>
<li class="toctree-l4"><a class="reference internal" href="#document-generation">Document generation</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="#improve-ai-task-pickup-speed">Improve AI task pickup speed</a><ul>
<li class="toctree-l4"><a class="reference internal" href="#screen-or-tmux-session">Screen or tmux session</a></li>
<li class="toctree-l4"><a class="reference internal" href="#systemd-service">Systemd service</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="#frequently-asked-questions">Frequently Asked Questions</a><ul>
<li class="toctree-l4"><a class="reference internal" href="#why-is-my-prompt-slow">Why is my prompt slow?</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="app_assistant.html">F7cloud 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"><a class="reference internal" href="app_context_chat.html">App: Context Chat</a></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 in F7cloud 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="../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.f7cloud.com/">Community Help Forum</a></li>
<li class="toctree-l1"><a class="reference external" href="https://docs.f7cloud.com/">User Manuals</a></li>
<li class="toctree-l1"><a class="reference external" href="https://docs.f7cloud.com/">Developer Manuals</a></li>
<li class="toctree-l1"><a class="reference external" href="https://f7cloud.com/install/">Download</a></li>
<li class="toctree-l1"><a class="reference external" href="https://apps.f7cloud.com">App Store</a></li>
<li class="toctree-l1"><a class="reference external" href="https://help.f7cloud.com/t/translation-knowledge-valid-for-the-entire-f7cloud-project-wiki/51550">Translations</a></li>
<li class="toctree-l1"><a class="reference external" href="https://github.com/f7cloud/">GitHub</a></li>
<li class="toctree-l1"><a class="reference external" href="https://github.com/f7cloud/server/wiki/Maintenance-and-Release-Schedule">Supported versions</a></li>
<li class="toctree-l1"><a class="reference external" href="https://f7cloud.com/enterprise/">F7cloud Enterprise</a></li>
<li class="toctree-l1"><a class="reference external" href="https://github.com/f7cloud/server/blob/master/COPYING-README">License</a></li>
<li class="toctree-l1"><a class="reference external" href="https://f7cloud.com/">F7cloud 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">F7cloud 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">Overview</li>
<li class="wy-breadcrumbs-aside">
<a href="https://github.com/f7cloud/documentation/edit/master/admin_manual/ai/overview.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="overview">
<h1>Overview<a class="headerlink" href="#overview" title="Link to this heading"></a></h1>
<p>We strive to bring Artificial Intelligence features to F7cloud. This section highlights these features, how they work and where to find them.
All of these features are completely optional. If you want to have them on your server, you need install them via separate F7cloud Apps.</p>
<section id="overview-of-ai-features">
<h2>Overview of AI features<a class="headerlink" href="#overview-of-ai-features" title="Link to this heading"></a></h2>
<p>F7cloud uses modularity to separate raw AI functionality from the Graphical User interfaces and apps that make use of said functionality. Each instance can thus make use of various backends that provide the functionality for the same frontends and the same functionality can be implemented by multiple apps using on-premises processing or third-party AI service providers.</p>
<figure class="align-default">
<a class="reference internal image-reference" href="../_images/ai_overview.png"><img alt="../_images/ai_overview.png" src="../_images/ai_overview.png" style="width: 1140.8px; height: 400.8px;" />
</a>
</figure>
<table class="docutils align-default">
<thead>
<tr class="row-odd"><th class="head"><p>Feature</p></th>
<th class="head"><p>App</p></th>
<th class="head"><p>Rating</p></th>
<th class="head"><p>Open source</p></th>
<th class="head"><p>Freely available model</p></th>
<th class="head"><p>Freely available training data</p></th>
<th class="head"><p>Privacy: Keeps data on premises</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p>Smart inbox</p></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/mail">Mail</a></p></td>
<td><p>Green</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-odd"><td><p>Image object recognition</p></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/recognize">Recognize</a></p></td>
<td><p>Green</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-even"><td><p>Image face recognition</p></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/recognize">Recognize</a></p></td>
<td><p>Green</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-odd"><td><p>Video action recognition</p></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/recognize">Recognize</a></p></td>
<td><p>Green</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-even"><td><p>Audio music genre recognition</p></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/recognize">Recognize</a></p></td>
<td><p>Green</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-odd"><td><p>Suspicious login detection</p></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/suspicious_login">Suspicious Login</a></p></td>
<td><p>Green</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-even"><td><p>Related resources</p></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/related_resources">Related Resources</a></p></td>
<td><p>Green</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-odd"><td><p>Recommended files</p></td>
<td><p>recommended_files</p></td>
<td><p>Green</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-even"><td><p>Text processing using LLMs</p></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/llm2">Local large language model 2 (ExApp) (ExApp)</a></p></td>
<td><p>Green</p></td>
<td><p>Yes</p></td>
<td><p>Yes - Llama 3.1 model by Meta</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-odd"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via OpenAI API)</a></p></td>
<td><p>Red</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-even"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via LocalAI)</a></p></td>
<td><p>Yellow</p></td>
<td><p>Yes</p></td>
<td><p>Yes - e.g. Llama models by Meta</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-odd"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via Ollama)</a></p></td>
<td><p>Yellow</p></td>
<td><p>Yes</p></td>
<td><p>Yes - e.g. Llama models by Meta</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-even"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via IONOS AI Model Hub)</a></p></td>
<td><p>Orange</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-odd"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via Plusserver)</a></p></td>
<td><p>Orange</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-even"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via Groqcloud)</a></p></td>
<td><p>Orange</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-odd"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via MistralAI)</a></p></td>
<td><p>Orange</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-even"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_watsonx">IBM watsonx.ai integration (via IBM watsonx.ai as a Service)</a></p></td>
<td><p>Orange</p></td>
<td><p>No</p></td>
<td><p>Yes - e.g. Granite models by IBM</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-odd"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_watsonx">IBM watsonx.ai integration (via IBM watsonx.ai software)</a></p></td>
<td><p>Orange</p></td>
<td><p>No</p></td>
<td><p>Yes - e.g. Granite models by IBM</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-even"><td><p>Machine translation</p></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/translate2">Local Machine Translation 2 (ExApp)</a></p></td>
<td><p>Green</p></td>
<td><p>Yes</p></td>
<td><p>Yes - MADLAD models by Google</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-odd"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_deepl">DeepL integration</a></p></td>
<td><p>Red</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-even"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via OpenAI API)</a></p></td>
<td><p>Red</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-odd"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via LocalAI)</a></p></td>
<td><p>Green</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-even"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via Ollama)</a></p></td>
<td><p>Yellow</p></td>
<td><p>Yes</p></td>
<td><p>Yes - e.g. Llama models by Meta</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-odd"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via IONOS AI Model Hub)</a></p></td>
<td><p>Orange</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-even"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via Plusserver)</a></p></td>
<td><p>Orange</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-odd"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via Groqcloud)</a></p></td>
<td><p>Orange</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-even"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via MistralAI)</a></p></td>
<td><p>Orange</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-odd"><td><p>Speech to Text</p></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/stt_whisper2">Local Whisper Speech-To-Text 2 (ExApp)</a></p></td>
<td><p>Yellow</p></td>
<td><p>Yes</p></td>
<td><p>Yes - Whisper models by OpenAI</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-even"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration</a></p></td>
<td><p>Yellow</p></td>
<td><p>Yes</p></td>
<td><p>Yes - Whisper models by OpenAI</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-odd"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via LocalAI)</a></p></td>
<td><p>Green</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-even"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via Ollama)</a></p></td>
<td><p>Yellow</p></td>
<td><p>Yes</p></td>
<td><p>Yes - e.g. Whisper</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-odd"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via IONOS AI Model Hub)</a></p></td>
<td><p>Orange</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-even"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via Plusserver)</a></p></td>
<td><p>Orange</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-odd"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via Groqcloud)</a></p></td>
<td><p>Orange</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-even"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via MistralAI)</a></p></td>
<td><p>Orange</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-odd"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_replicate">Replicate integration</a></p></td>
<td><p>Yellow</p></td>
<td><p>Yes</p></td>
<td><p>Yes - Whisper models by OpenAI</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-even"><td><p>Image generation</p></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/text2image_stablediffusion">Local Stable Diffusion</a></p></td>
<td><p>Yellow</p></td>
<td><p>Yes</p></td>
<td><p>Yes - StableDiffusion XL model by StabilityAI</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-odd"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_replicate">Replicate integration</a></p></td>
<td><p>Yellow</p></td>
<td><p>Yes</p></td>
<td><p>Yes - StableDiffusion models by StabilityAI</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-even"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via OpenAI API)</a></p></td>
<td><p>Red</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-odd"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via LocalAI)</a></p></td>
<td><p>Green</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-even"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via Ollama)</a></p></td>
<td><p>Yellow</p></td>
<td><p>Yes</p></td>
<td><p>Yes - e.g. Llama models by Meta</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-odd"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via IONOS AI Model Hub)</a></p></td>
<td><p>Orange</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-even"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via Plusserver)</a></p></td>
<td><p>Orange</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-odd"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via Groqcloud)</a></p></td>
<td><p>Orange</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-even"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via MistralAI)</a></p></td>
<td><p>Orange</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-odd"><td><p>Context Chat</p></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/context_chat">F7cloud Assistant Context Chat</a></p></td>
<td><p>Yellow</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-even"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/context_chat_backend">F7cloud Assistant Context Chat (Backend)</a></p></td>
<td><p>Yellow</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-odd"><td><p>Context Chat Search</p></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/context_chat">F7cloud Assistant Context Chat</a></p></td>
<td><p>Yellow</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-even"><td><p>Context Agent</p></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/context_agent">F7cloud Context Agent</a></p></td>
<td><p>Green</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-odd"><td><p>Text To Speech</p></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">Open AI Text To Speech</a></p></td>
<td><p>Red</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
<td><p>No</p></td>
</tr>
<tr class="row-even"><td></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/text2speech_kokoro">Local Text To Speech</a></p></td>
<td><p>Yellow</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>No</p></td>
<td><p>Yes</p></td>
</tr>
<tr class="row-odd"><td><p>Document generation</p></td>
<td><p><a class="reference external" href="https://apps.f7cloud.com/apps/richdocuments">F7cloud Office</a></p></td>
<td><p>Green</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
<td><p>Yes</p></td>
</tr>
</tbody>
</table>
</section>
<section id="ethical-ai-rating">
<h2>Ethical AI Rating<a class="headerlink" href="#ethical-ai-rating" title="Link to this heading"></a></h2>
<p>Until Hub 3, we succeeded in offering features without relying on proprietary blobs or third party services. Yet, while there is a large community developing ethical, safe and privacy-respecting technologies, there are many other relevant technologies users might want to use. We want to provide users with these cutting-edge technologies but also be transparent. For some use cases, ChatGPT might be a reasonable solution, while for more private, professional or sensitive data, it is paramount to have a local, on-prem, open solution. To differentiate these, we developed an Ethical AI Rating.</p>
<dl class="simple">
<dt>The rating has four levels:</dt><dd><ul class="simple">
<li><p>Red</p></li>
<li><p>Orange</p></li>
<li><p>Yellow</p></li>
<li><p>Green</p></li>
</ul>
</dd>
<dt>It is based on points from these factors:</dt><dd><ul class="simple">
<li><p>Is the software (both for inferencing and training) under a free and open source license?</p></li>
<li><p>Is the trained model freely available for self-hosting?</p></li>
<li><p>Is the training data available and free to use?</p></li>
</ul>
</dd>
</dl>
<p>If all of these points are met, we give a Green label. If none are met, it is Red. If 1 condition is met, it is Orange and if 2 conditions are met, Yellow.</p>
</section>
<section id="features-used-by-other-apps">
<h2>Features used by other apps<a class="headerlink" href="#features-used-by-other-apps" title="Link to this heading"></a></h2>
<p>Some of our AI features are realized as generic APIs that any app can use and any app can provide an implementation for by registering a provider. So far, these are
Machine translation, Speech-To-Text, Image generation, Text processing and Context Chat.</p>
<section id="text-processing">
<h3>Text processing<a class="headerlink" href="#text-processing" title="Link to this heading"></a></h3>
<p id="tp-consumer-apps">As you can see in the table above we have multiple apps offering text processing using Large language models.
In downstream apps like Context Chat and assistant, users can use the text processing functionality regardless of which app implements it behind the scenes.</p>
<section id="frontend-apps">
<h4>Frontend apps<a class="headerlink" href="#frontend-apps" title="Link to this heading"></a></h4>
<ul class="simple">
<li><p><em>Text</em> for offering an inline graphical UI for the various tasks</p></li>
<li><p><a class="reference external" href="https://apps.f7cloud.com/apps/assistant">Assistant</a> for offering a graphical UI for the various tasks and a smart picker</p></li>
<li><p><a class="reference external" href="https://apps.f7cloud.com/apps/mail">Mail</a> for summarizing mail threads (see <a class="reference internal" href="../groupware/mail.html#mail-thread-summary"><span class="std std-ref">the F7cloud Mail docs</span></a> for how to enable this)</p></li>
<li><p><a class="reference external" href="https://apps.f7cloud.com/apps/summary_bot">Summary Bot</a> for summarizing chat histories in <a class="reference external" href="https://apps.f7cloud.com/apps/spreed">Talk</a></p></li>
</ul>
</section>
<section id="backend-apps">
<h4>Backend apps<a class="headerlink" href="#backend-apps" title="Link to this heading"></a></h4>
<ul class="simple">
<li><p><a class="reference internal" href="app_llm2.html#ai-app-llm2"><span class="std std-ref">llm2</span></a> - Runs open source AI LLM models on your own server hardware (Customer support available upon request)</p></li>
<li><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via OpenAI API)</a> - Integrates with the OpenAI API to provide AI functionality from OpenAI servers (Customer support available upon request; see <a class="reference internal" href="ai_as_a_service.html#ai-ai-as-a-service"><span class="std std-ref">AI as a Service</span></a>)</p></li>
<li><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_watsonx">IBM watsonx.ai integration (via IBM watsonx.ai as a Service)</a> - Integrates with the IBM watsonx.ai API to provide AI functionality from IBM Cloud servers (Customer support available upon request; see <a class="reference internal" href="ai_as_a_service.html#ai-ai-as-a-service"><span class="std std-ref">AI as a Service</span></a>)</p></li>
</ul>
</section>
</section>
<section id="machine-translation">
<h3>Machine translation<a class="headerlink" href="#machine-translation" title="Link to this heading"></a></h3>
<p id="mt-consumer-apps">As you can see in the table above we have multiple apps offering machine translation capabilities. Each app brings its own set of supported languages.
In downstream apps like the Text app, users can use the translation functionality regardless of which app implements it behind the scenes.</p>
<section id="id29">
<h4>Frontend apps<a class="headerlink" href="#id29" title="Link to this heading"></a></h4>
<ul class="simple">
<li><p><em>Text</em> for offering the translation menu</p></li>
<li><p><a class="reference external" href="https://apps.f7cloud.com/apps/assistant">Assistant</a> offering a graphical translation UI</p></li>
<li><p><a class="reference external" href="https://apps.f7cloud.com/apps/analytics">Analytics</a> for translating graph labels</p></li>
</ul>
</section>
<section id="id31">
<h4>Backend apps<a class="headerlink" href="#id31" title="Link to this heading"></a></h4>
<ul class="simple">
<li><p><a class="reference internal" href="app_translate2.html#ai-app-translate2"><span class="std std-ref">translate2 (ExApp)</span></a> - Runs open source AI translation models locally on your own server hardware (Customer support available upon request)</p></li>
<li><p><em>integration_deepl</em> - Integrates with the deepl API to provide translation functionality from Deepl.com servers (Only community supported)</p></li>
</ul>
</section>
</section>
<section id="speech-to-text">
<h3>Speech-To-Text<a class="headerlink" href="#speech-to-text" title="Link to this heading"></a></h3>
<p id="stt-consumer-apps">As you can see in the table above we have multiple apps offering Speech-To-Text capabilities. In downstream apps like the Talk app, users can use the transcription functionality regardless of which app implements it behind the scenes.</p>
<section id="id32">
<h4>Frontend apps<a class="headerlink" href="#id32" title="Link to this heading"></a></h4>
<ul class="simple">
<li><p><a class="reference external" href="https://apps.f7cloud.com/apps/assistant">Assistant</a> offering a graphical translation UI and a smart picker</p></li>
<li><p><a class="reference external" href="https://apps.f7cloud.com/apps/spreed">Talk</a> for transcribing calls (see <a class="reference external" href="https://f7cloud-talk.readthedocs.io/en/latest/settings/#app-configuration">F7cloud Talk docs</a> for how to enable this)</p></li>
</ul>
</section>
<section id="id35">
<h4>Backend apps<a class="headerlink" href="#id35" title="Link to this heading"></a></h4>
<ul class="simple">
<li><p><a class="reference internal" href="app_stt_whisper2.html#ai-app-stt-whisper2"><span class="std std-ref">stt_whisper2</span></a> - Runs open source AI Speech-To-Text models on your own server hardware (Customer support available upon request)</p></li>
<li><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via OpenAI API)</a> - Integrates with the OpenAI API to provide AI functionality from OpenAI servers (Customer support available upon request; see <a class="reference internal" href="ai_as_a_service.html#ai-ai-as-a-service"><span class="std std-ref">AI as a Service</span></a>)</p></li>
</ul>
</section>
</section>
<section id="image-generation">
<h3>Image generation<a class="headerlink" href="#image-generation" title="Link to this heading"></a></h3>
<p id="t2i-consumer-apps">As you can see in the table above we have multiple apps offering Image generation capabilities. In downstream apps like the Text-to-Image helper app, users can use the image generation functionality regardless of which app implements it behind the scenes.</p>
<section id="id37">
<h4>Frontend apps<a class="headerlink" href="#id37" title="Link to this heading"></a></h4>
<ul class="simple">
<li><p><a class="reference external" href="https://apps.f7cloud.com/apps/assistant">Assistant</a> for offering a graphical UI and a smart picker</p></li>
</ul>
</section>
<section id="id39">
<h4>Backend apps<a class="headerlink" href="#id39" title="Link to this heading"></a></h4>
<ul class="simple">
<li><p>text2image_stablediffusion (Customer support available upon request)</p></li>
<li><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via OpenAI API)</a> - Integrates with the OpenAI API to provide AI functionality from OpenAI servers (Customer support available upon request; see <a class="reference internal" href="ai_as_a_service.html#ai-ai-as-a-service"><span class="std std-ref">AI as a Service</span></a>)</p></li>
<li><p><em>integration_replicate</em> - Integrates with the replicate API to provide AI functionality from replicate servers (see <a class="reference internal" href="ai_as_a_service.html#ai-ai-as-a-service"><span class="std std-ref">AI as a Service</span></a>)</p></li>
</ul>
</section>
</section>
<section id="text-to-speech">
<h3>Text-To-Speech<a class="headerlink" href="#text-to-speech" title="Link to this heading"></a></h3>
<p id="t2s-consumer-apps">As you can see in the table above we have multiple apps offering speech generation capabilities. In downstream apps like the assistant app, users can use the speech generation functionality regardless of which app implements it behind the scenes.</p>
<section id="id41">
<h4>Frontend apps<a class="headerlink" href="#id41" title="Link to this heading"></a></h4>
<ul class="simple">
<li><p><a class="reference external" href="https://apps.f7cloud.com/apps/assistant">Assistant</a> for offering a audio chat</p></li>
</ul>
</section>
<section id="id43">
<h4>Backend apps<a class="headerlink" href="#id43" title="Link to this heading"></a></h4>
<ul class="simple">
<li><p><a class="reference external" href="https://apps.f7cloud.com/apps/integration_openai">OpenAI and LocalAI integration (via OpenAI API)</a> - Integrates with the OpenAI API to provide AI functionality from OpenAI servers (Customer support available upon request; see <a class="reference internal" href="ai_as_a_service.html#ai-ai-as-a-service"><span class="std std-ref">AI as a Service</span></a>)</p></li>
<li><p><em>text2speech_kokoro</em> (Runs a local model)</p></li>
</ul>
</section>
</section>
<section id="context-chat">
<h3>Context Chat<a class="headerlink" href="#context-chat" title="Link to this heading"></a></h3>
<p>Our Context Chat feature was introduced in F7cloud Hub 7 (v28). It allows asking questions to the assistant related to your documents in F7cloud. You will need to install both the context_chat app as well as the context_chat_backend External App. Be prepared that things might break or be a little rough around the edges. We look forward to your feedback!</p>
<section id="id45">
<h4>Frontend apps<a class="headerlink" href="#id45" title="Link to this heading"></a></h4>
<ul class="simple">
<li><p><a class="reference external" href="https://apps.f7cloud.com/apps/assistant">Assistant</a> for offering a graphical UI for the context chat tasks</p></li>
</ul>
</section>
<section id="id47">
<h4>Backend apps<a class="headerlink" href="#id47" title="Link to this heading"></a></h4>
<ul class="simple">
<li><p><a class="reference internal" href="app_context_chat.html#ai-app-context-chat"><span class="std std-ref">context_chat + context_chat_backend</span></a> - (Customer support available upon request)</p></li>
</ul>
</section>
<section id="provider-apps">
<h4>Provider apps<a class="headerlink" href="#provider-apps" title="Link to this heading"></a></h4>
<p>Apps can integrate their content with Context Chat to make it available for querying using Context Chat. The following apps have implemented this integration so far:</p>
<ul class="simple">
<li><p><em>files</em></p></li>
<li><p><a class="reference external" href="https://apps.f7cloud.com/apps/analytics">Analytics</a></p></li>
</ul>
</section>
</section>
<section id="context-chat-search">
<h3>Context Chat Search<a class="headerlink" href="#context-chat-search" title="Link to this heading"></a></h3>
<p>Our Context Chat Search feature allows searching through your documents using natural language. You will need to install both the context_chat app as well as the context_chat_backend External App. We look forward to your feedback!</p>
<section id="id49">
<h4>Frontend apps<a class="headerlink" href="#id49" title="Link to this heading"></a></h4>
<ul class="simple">
<li><p><a class="reference external" href="https://apps.f7cloud.com/apps/assistant">Assistant</a> for offering a graphical UI for the context chat search tasks</p></li>
</ul>
</section>
<section id="id51">
<h4>Backend apps<a class="headerlink" href="#id51" title="Link to this heading"></a></h4>
<ul class="simple">
<li><p><a class="reference internal" href="app_context_chat.html#ai-app-context-chat"><span class="std std-ref">context_chat + context_chat_backend</span></a> - (Customer support available upon request)</p></li>
</ul>
</section>
<section id="id52">
<h4>Provider apps<a class="headerlink" href="#id52" title="Link to this heading"></a></h4>
<p>See <em>Context Chat</em> section above.</p>
</section>
</section>
<section id="document-generation">
<h3>Document generation<a class="headerlink" href="#document-generation" title="Link to this heading"></a></h3>
<p>Since Hub 11 you can let F7cloud automatically generate Office documents with content.
This functionality is available in the assistant app and made possible by the F7cloud Office app.</p>
<section id="id53">
<h4>Frontend apps<a class="headerlink" href="#id53" title="Link to this heading"></a></h4>
<ul class="simple">
<li><p><a class="reference external" href="https://apps.f7cloud.com/apps/assistant">Assistant</a> for offering a graphical UI for the context chat search tasks</p></li>
</ul>
</section>
<section id="id55">
<h4>Backend apps<a class="headerlink" href="#id55" title="Link to this heading"></a></h4>
<ul class="simple">
<li><p><a class="reference external" href="https://apps.f7cloud.com/apps/richdocuments">F7cloud Office</a></p></li>
</ul>
</section>
</section>
</section>
<section id="improve-ai-task-pickup-speed">
<span id="ai-overview-improve-ai-task-pickup-speed"></span><h2>Improve AI task pickup speed<a class="headerlink" href="#improve-ai-task-pickup-speed" title="Link to this heading"></a></h2>
<p>Most AI tasks will be run as part of the background job system in F7cloud which only runs jobs every 5 minutes by default.
To pick up scheduled jobs faster you can set up background job workers inside your F7cloud main server/container that process AI tasks as soon as they are scheduled.
If the PHP code or the F7cloud settings values are changed while a worker is running, those changes wont be effective inside the runner. For that reason, the worker needs to be restarted regularly. It is done with a timeout of N seconds which means any changes to the settings or the code will be picked up after N seconds (worst case scenario). This timeout does not, in any way, affect the processing or the timeout of the AI tasks.</p>
<section id="screen-or-tmux-session">
<h3>Screen or tmux session<a class="headerlink" href="#screen-or-tmux-session" title="Link to this heading"></a></h3>
<p>Run the following occ command inside a screen or a tmux session, preferably 4 or more times for parallel processing of multiple requests by different or the same user (and as a requirement for some apps like context_chat).
It would be best to run one command per screen session or per tmux window/pane to keep the logs visible and the worker easily restartable.</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="nb">set</span> <span class="o">-</span><span class="n">e</span><span class="p">;</span> <span class="k">while</span> <span class="n">true</span><span class="p">;</span> <span class="n">do</span> <span class="n">sudo</span> <span class="o">-</span><span class="n">E</span> <span class="o">-</span><span class="n">u</span> <span class="n">www</span><span class="o">-</span><span class="n">data</span> <span class="n">php</span> <span class="n">occ</span> <span class="n">background</span><span class="o">-</span><span class="n">job</span><span class="p">:</span><span class="n">worker</span> <span class="o">-</span><span class="n">v</span> <span class="o">-</span><span class="n">t</span> <span class="mi">60</span> <span class="s2">&quot;OC\TaskProcessing\SynchronousBackgroundJob&quot;</span><span class="p">;</span> <span class="n">done</span>
</pre></div>
</div>
<p>For F7cloud-AIO you should use this command on the host server.</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="nb">set</span> <span class="o">-</span><span class="n">e</span><span class="p">;</span> <span class="k">while</span> <span class="n">true</span><span class="p">;</span> <span class="n">do</span> <span class="n">docker</span> <span class="n">exec</span> <span class="o">-</span><span class="n">it</span> <span class="n">f7cloud</span><span class="o">-</span><span class="n">aio</span><span class="o">-</span><span class="n">f7cloud</span> <span class="n">sudo</span> <span class="o">-</span><span class="n">E</span> <span class="o">-</span><span class="n">u</span> <span class="n">www</span><span class="o">-</span><span class="n">data</span> <span class="n">php</span> <span class="n">occ</span> <span class="n">background</span><span class="o">-</span><span class="n">job</span><span class="p">:</span><span class="n">worker</span> <span class="o">-</span><span class="n">v</span> <span class="o">-</span><span class="n">t</span> <span class="mi">60</span> <span class="s2">&quot;OC\TaskProcessing\SynchronousBackgroundJob&quot;</span><span class="p">;</span> <span class="n">done</span>
</pre></div>
</div>
<p>You may want to adjust the number of workers and the timeout (in seconds) to your needs.
The logs of the worker can be checked by attaching to the screen or tmux session.</p>
</section>
<section id="systemd-service">
<h3>Systemd service<a class="headerlink" href="#systemd-service" title="Link to this heading"></a></h3>
<ol class="arabic simple">
<li><p>Create a systemd service file in <code class="docutils literal notranslate"><span class="pre">/etc/systemd/system/f7cloud-ai-worker&#64;.service</span></code> with the following content:</p></li>
</ol>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="p">[</span><span class="n">Unit</span><span class="p">]</span>
<span class="n">Description</span><span class="o">=</span><span class="n">F7cloud</span> <span class="n">AI</span> <span class="n">worker</span> <span class="o">%</span><span class="n">i</span>
<span class="n">After</span><span class="o">=</span><span class="n">network</span><span class="o">.</span><span class="n">target</span>
<span class="p">[</span><span class="n">Service</span><span class="p">]</span>
<span class="n">ExecStart</span><span class="o">=/</span><span class="n">opt</span><span class="o">/</span><span class="n">f7cloud</span><span class="o">-</span><span class="n">ai</span><span class="o">-</span><span class="n">worker</span><span class="o">/</span><span class="n">taskprocessing</span><span class="o">.</span><span class="n">sh</span> <span class="o">%</span><span class="n">i</span>
<span class="n">Restart</span><span class="o">=</span><span class="n">always</span>
<span class="n">StartLimitInterval</span><span class="o">=</span><span class="mi">60</span>
<span class="n">StartLimitBurst</span><span class="o">=</span><span class="mi">10</span>
<span class="p">[</span><span class="n">Install</span><span class="p">]</span>
<span class="n">WantedBy</span><span class="o">=</span><span class="n">multi</span><span class="o">-</span><span class="n">user</span><span class="o">.</span><span class="n">target</span>
</pre></div>
</div>
<ol class="arabic simple" start="2">
<li><p>Create a shell script in <code class="docutils literal notranslate"><span class="pre">/opt/f7cloud-ai-worker/taskprocessing.sh</span></code> with the following content and make sure to make it executable:</p></li>
</ol>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="ch">#!/bin/sh</span>
<span class="n">echo</span> <span class="s2">&quot;Starting F7cloud AI Worker $1&quot;</span>
<span class="n">cd</span> <span class="o">/</span><span class="n">path</span><span class="o">/</span><span class="n">to</span><span class="o">/</span><span class="n">f7cloud</span>
<span class="n">sudo</span> <span class="o">-</span><span class="n">E</span> <span class="o">-</span><span class="n">u</span> <span class="n">www</span><span class="o">-</span><span class="n">data</span> <span class="n">php</span> <span class="n">occ</span> <span class="n">background</span><span class="o">-</span><span class="n">job</span><span class="p">:</span><span class="n">worker</span> <span class="o">-</span><span class="n">t</span> <span class="mi">60</span> <span class="s1">&#39;OC\TaskProcessing\SynchronousBackgroundJob&#39;</span>
</pre></div>
</div>
<p>You may want to adjust the timeout to your needs (in seconds).</p>
<ol class="arabic simple" start="3">
<li><p>Enable and start the service 4 or more times:</p></li>
</ol>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>for i in {1..4}; do systemctl enable --now f7cloud-ai-worker@$i.service; done
</pre></div>
</div>
<p>The status of the workers can be checked with (replace 1 with the worker number):</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">systemctl</span> <span class="n">status</span> <span class="n">f7cloud</span><span class="o">-</span><span class="n">ai</span><span class="o">-</span><span class="n">worker</span><span class="o">@</span><span class="mf">1.</span><span class="n">service</span>
</pre></div>
</div>
<p>The list of workers can be checked with:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">systemctl</span> <span class="nb">list</span><span class="o">-</span><span class="n">units</span> <span class="o">--</span><span class="nb">type</span><span class="o">=</span><span class="n">service</span> <span class="o">|</span> <span class="n">grep</span> <span class="n">f7cloud</span><span class="o">-</span><span class="n">ai</span><span class="o">-</span><span class="n">worker</span>
</pre></div>
</div>
<p>The complete logs of the workers can be checked with (replace 1 with the worker number):</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">journalctl</span> <span class="o">-</span><span class="n">xeu</span> <span class="n">f7cloud</span><span class="o">-</span><span class="n">ai</span><span class="o">-</span><span class="n">worker</span><span class="o">@</span><span class="mf">1.</span><span class="n">service</span> <span class="o">-</span><span class="n">f</span>
</pre></div>
</div>
</section>
</section>
<section id="frequently-asked-questions">
<h2>Frequently Asked Questions<a class="headerlink" href="#frequently-asked-questions" title="Link to this heading"></a></h2>
<section id="why-is-my-prompt-slow">
<h3>Why is my prompt slow?<a class="headerlink" href="#why-is-my-prompt-slow" title="Link to this heading"></a></h3>
<p>Reasons for slow performance from a user perspective can be</p>
<blockquote>
<div><ul class="simple">
<li><p>Using CPU processing instead of GPU (sometimes this limit is imposed by the used app)</p></li>
<li><p>High user demand for the feature: User prompts and AI tasks are usually processed in the order they are received, which can cause delays when a lot of users access these features at the same time.</p></li>
</ul>
</div></blockquote>
</section>
</section>
</section>
</div>
</div>
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
<a href="index.html" class="btn btn-neutral float-left" title="Artificial Intelligence" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<a href="app_assistant.html" class="btn btn-neutral float-right" title="F7cloud Assistant" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
</div>
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2016-2026 F7cloud GmbH and F7cloud 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.f7cloud.com/server/latest/admin_manual"
style="color: var(--dark-link-color);"
>
latest
</a>
</dd>
<dd style="width: 32%">
<a href="https://docs.f7cloud.com/server/stable/admin_manual"
>
stable
</a>
</dd>
<dd style="width: 32%">
<a href="https://docs.f7cloud.com/server/31/admin_manual"
>
31
</a>
</dd>
<dd style="width: 32%">
<a href="https://docs.f7cloud.com/server/30/admin_manual"
>
30
</a>
</dd>
<dd style="width: 32%">
<a href="https://docs.f7cloud.com/server/29/admin_manual"
>
29
</a>
</dd>
</dl>
</div>
</div>
<script>
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>