<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Get started on GENIE.AI</title><link>https://genie-ai-7e342b.opensource.unicc.org/docs/get-started/</link><description>Recent content in Get started on GENIE.AI</description><generator>Hugo</generator><language>en</language><atom:link href="https://genie-ai-7e342b.opensource.unicc.org/docs/get-started/index.xml" rel="self" type="application/rss+xml"/><item><title>Welcome to GENIE.AI</title><link>https://genie-ai-7e342b.opensource.unicc.org/docs/get-started/welcome/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://genie-ai-7e342b.opensource.unicc.org/docs/get-started/welcome/</guid><description>&lt;h2 id="what-genieai-is"&gt;What GENIE.AI is&lt;/h2&gt;
&lt;p&gt;GENIE.AI is an &lt;strong&gt;open-source retrieval-augmented-generation framework&lt;/strong&gt; built
for the public sector. It bundles a multilingual chat UI, a self-hosted RAG
pipeline, an admin dashboard, an identity layer, and a configurable
observability stack — so a government or NGO can deploy a sovereign AI
assistant without sending a single query to a third-party model API.&lt;/p&gt;
&lt;p&gt;The pipeline is built on top of &lt;a href="https://opea.dev"&gt;OPEA&lt;/a&gt;, the Open Platform
for Enterprise AI, and integrates with the &lt;a href="https://digitalpublicgoods.net/"&gt;Digital Public Goods&lt;/a&gt;
ecosystem.&lt;/p&gt;</description></item><item><title>Quickstart: User — chat in 10 minutes</title><link>https://genie-ai-7e342b.opensource.unicc.org/docs/get-started/quickstart-user/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://genie-ai-7e342b.opensource.unicc.org/docs/get-started/quickstart-user/</guid><description>&lt;h2 id="goal"&gt;Goal&lt;/h2&gt;
&lt;p&gt;In about 10 minutes you will have &lt;strong&gt;signed in to your organization&amp;rsquo;s GENIE.AI
assistant, asked a real question, inspected the sources behind the answer,
switched the chat to your preferred language, and submitted feedback on the
response&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;You only need a browser — GENIE.AI runs entirely in the cloud, there is nothing
to install.&lt;/p&gt;
&lt;h2 id="prerequisites"&gt;Prerequisites&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;The &lt;strong&gt;chat URL&lt;/strong&gt; your organization gave you (for example
&lt;code&gt;https://genie.example.gov&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;A valid &lt;strong&gt;SSO account&lt;/strong&gt;. GENIE.AI delegates authentication to
&lt;a href="https://www.keycloak.org/"&gt;Keycloak&lt;/a&gt;, so the same username and password you
use for other internal tools will work — including brokered identity providers
(Microsoft Entra ID, Google Workspace, Okta) if your administrator has wired
them up.&lt;/li&gt;
&lt;li&gt;A modern browser with &lt;strong&gt;cookies enabled&lt;/strong&gt; and JavaScript turned on
(Chrome, Firefox, Edge, or Safari, current version).&lt;/li&gt;
&lt;li&gt;Pop-ups &lt;strong&gt;allowed&lt;/strong&gt; for the chat URL and the Keycloak URL (the sign-in page
opens in a redirect you must allow on first visit).&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="step-1--open-the-chat-and-sign-in"&gt;Step 1 — Open the chat and sign in&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;Open the chat URL in your browser. The first time you visit, a splash
screen shows for a few seconds, then the app loads.&lt;/li&gt;
&lt;li&gt;You are redirected to your organization&amp;rsquo;s &lt;strong&gt;Keycloak&lt;/strong&gt; login page. Enter
your corporate credentials (or pick the federated identity provider your
admin enabled — Google, Microsoft, Okta, etc.).&lt;/li&gt;
&lt;li&gt;After successful authentication, you are redirected back to the chat. The
user icon in the top-right corner is now active, indicating you are signed
in.&lt;/li&gt;
&lt;li&gt;If your account has the &lt;code&gt;admin&lt;/code&gt; role, the &lt;strong&gt;Administration&lt;/strong&gt; icon (grid)
appears in the navbar. Regular users do not see this icon.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Verify&lt;/strong&gt; — type a single character in the chat box and delete it. The
placeholder text &lt;em&gt;&amp;ldquo;Type your query here&amp;hellip;&amp;rdquo;&lt;/em&gt; reappears. You are now signed in.&lt;/p&gt;</description></item><item><title>Quickstart: Deployer — single-host Compose deployment</title><link>https://genie-ai-7e342b.opensource.unicc.org/docs/get-started/quickstart-deployer/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://genie-ai-7e342b.opensource.unicc.org/docs/get-started/quickstart-deployer/</guid><description>&lt;h2 id="goal"&gt;Goal&lt;/h2&gt;
&lt;p&gt;Stand up a &lt;strong&gt;production-ready GENIE.AI stack on a single Linux host&lt;/strong&gt; with
&lt;code&gt;docker compose&lt;/code&gt;. After this guide the chat UI is reachable at
&lt;code&gt;https://&amp;lt;your-host&amp;gt;&lt;/code&gt; and:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;/api/health&lt;/code&gt; returns &lt;code&gt;200 OK&lt;/code&gt;,&lt;/li&gt;
&lt;li&gt;an admin user can sign in via Keycloak and chat against a working RAG
pipeline (when the OPEA profile is enabled),&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/api/admin/system-health&lt;/code&gt; shows all dependencies green,&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/grafana/&lt;/code&gt; (when the observability profile is enabled) exposes logs,
metrics, and traces.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For multi-node production deployment (Swarm, remote GPU, Ansible), skip ahead
to &lt;a href="https://genie-ai-7e342b.opensource.unicc.org/docs/deploy/docker-swarm-setup/"&gt;Docker Swarm Setup&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Quickstart: Developer — ship a service change in 30 minutes</title><link>https://genie-ai-7e342b.opensource.unicc.org/docs/get-started/quickstart-developer/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://genie-ai-7e342b.opensource.unicc.org/docs/get-started/quickstart-developer/</guid><description>&lt;h2 id="goal"&gt;Goal&lt;/h2&gt;
&lt;p&gt;In &lt;strong&gt;30 minutes&lt;/strong&gt; you will have the GENIE.AI stack running in Docker Compose,
edited one source file in the service you care about, rebuilt only that
service&amp;rsquo;s image, hit the change through NGINX to confirm it works, and run
the service&amp;rsquo;s test suite green inside the running container. No GPU
services, no OPEA stack required.&lt;/p&gt;
&lt;p&gt;The dev loop is &lt;strong&gt;service-agnostic&lt;/strong&gt; — the same five commands work whether
you touched &lt;code&gt;components/gov-chat-backend&lt;/code&gt; (Node.js), &lt;code&gt;gov-chat-frontend&lt;/code&gt;
(Vue), &lt;code&gt;gov-chat-document-repository&lt;/code&gt;, or &lt;code&gt;genie-ai-overlay/dataprep&lt;/code&gt;
(Python). The only thing that changes is which &lt;code&gt;&amp;lt;service&amp;gt;&lt;/code&gt; name you pass
to &lt;code&gt;docker compose&lt;/code&gt;. Path B at the end covers the rarer case of adding
a brand-new route.&lt;/p&gt;</description></item><item><title>Quickstart: Contributor — open your first MR in 10 minutes</title><link>https://genie-ai-7e342b.opensource.unicc.org/docs/get-started/quickstart-contributor/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://genie-ai-7e342b.opensource.unicc.org/docs/get-started/quickstart-contributor/</guid><description>&lt;h2 id="goal"&gt;Goal&lt;/h2&gt;
&lt;p&gt;In 10 minutes you will have &lt;strong&gt;forked the repo, opened a merge request that
passes CI on a one-line change, and assigned it to a maintainer&lt;/strong&gt;.&lt;/p&gt;
&lt;h2 id="prerequisites"&gt;Prerequisites&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;A &lt;strong&gt;GitLab account&lt;/strong&gt; (sign up at
&lt;a href="https://opensource.unicc.org"&gt;opensource.unicc.org&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;git 2.40+&lt;/strong&gt; locally.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;glab CLI&lt;/strong&gt; authenticated (&lt;code&gt;glab auth login --hostname opensource.unicc.org&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;The repository cloned (see the deployer quickstart, step 1).&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="callout callout-tip"&gt;
The contributor workflow is &lt;strong&gt;trunk-based with feature branches&lt;/strong&gt;: every
change lands through a merge request on the upstream
&lt;code&gt;un/itu/genie-ai&lt;/code&gt; project. Direct pushes to &lt;code&gt;main&lt;/code&gt; or &lt;code&gt;release/*&lt;/code&gt; are
rejected by branch protection. See
&lt;a href="https://genie-ai-7e342b.opensource.unicc.org/docs/contribute/how-to-mr/"&gt;Contribute → How to open a MR&lt;/a&gt;.
&lt;/div&gt;
&lt;h2 id="step-1--fork-and-clone"&gt;Step 1 — Fork and clone&lt;/h2&gt;
&lt;p&gt;If you don&amp;rsquo;t already have a fork:&lt;/p&gt;</description></item><item><title>Concepts in 5 minutes</title><link>https://genie-ai-7e342b.opensource.unicc.org/docs/get-started/concepts/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://genie-ai-7e342b.opensource.unicc.org/docs/get-started/concepts/</guid><description>&lt;h2 id="genieai-at-a-glance"&gt;GENIE.AI at a glance&lt;/h2&gt;
&lt;pre class="mermaid"&gt;flowchart LR
 U[User] --&amp;gt; NG[NGINX&amp;lt;br/&amp;gt;TLS termination]
 NG --&amp;gt; FE[Frontend SPA&amp;lt;br/&amp;gt;Vue 3 / Flutter&amp;lt;br/&amp;gt;port 8090]
 NG --&amp;gt; KG[Kong&amp;lt;br/&amp;gt;API gateway&amp;lt;br/&amp;gt;CORS / rate limit]
 KG --&amp;gt; BE[Backend BFF&amp;lt;br/&amp;gt;Node.js]
 KG --&amp;gt; DR[Document Repository]
 BE --&amp;gt; KC[Keycloak&amp;lt;br/&amp;gt;OIDC]
 BE --&amp;gt; CQ[ChatQnA&amp;lt;br/&amp;gt;OPEA orchestrator]
 CQ --&amp;gt; EM[Embedding wrapper&amp;lt;br/&amp;gt;:6000]
 EM --&amp;gt; TEI[TEI]
 CQ --&amp;gt; RT[Retriever&amp;lt;br/&amp;gt;ArangoDB]
 CQ --&amp;gt; RR[Reranker&amp;lt;br/&amp;gt;TEI]
 CQ --&amp;gt; LM[vLLM&amp;lt;br/&amp;gt;LLM]
 DR --&amp;gt; ADB[(ArangoDB&amp;lt;br/&amp;gt;vectors &amp;#43; graph &amp;#43; docs)]
 RT --&amp;gt; ADB
 DP[Dataprep&amp;lt;br/&amp;gt;PDF / Word / etc.] --&amp;gt; ADB
 DR --&amp;gt; DP&lt;/pre&gt;
&lt;p&gt;Two paths converge at NGINX: the SPA (Vue / Flutter, served on
&lt;code&gt;location /&lt;/code&gt; via the frontend container port 8090) and the API (Kong
proxies &lt;code&gt;/api/*&lt;/code&gt; and &lt;code&gt;/auth/*&lt;/code&gt; to the backend BFF). One request then
travels: User → Nginx → Kong → Backend → ChatQnA →
{Embedding wrapper → TEI, Retriever, Reranker, vLLM} → streamed
response back. Documents are ingested through the Document Repository
/ Dataprep path into ArangoDB.&lt;/p&gt;</description></item><item><title>FAQ</title><link>https://genie-ai-7e342b.opensource.unicc.org/docs/get-started/faq/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://genie-ai-7e342b.opensource.unicc.org/docs/get-started/faq/</guid><description>&lt;h2 id="the-12-most-common-questions"&gt;The 12 most common questions&lt;/h2&gt;
&lt;h3 id="1-do-i-need-a-gpu"&gt;1. Do I need a GPU?&lt;/h3&gt;
&lt;p&gt;For a &lt;strong&gt;demo / pilot&lt;/strong&gt; with 100s of documents and a handful of users, no — the
backend works without OPEA, but the chat will say &lt;em&gt;&amp;ldquo;I cannot answer&amp;rdquo;&lt;/em&gt;
because the LLM is not running. For &lt;strong&gt;production&lt;/strong&gt;, yes — a single 24 GB GPU
(RTX 6000 ADA or A40) is enough for embedding + reranking + a 7B-chat
LLM. The minimum for a 7B model is 16 GB. See
&lt;a href="https://genie-ai-7e342b.opensource.unicc.org/docs/deploy/gpu/"&gt;Deploy → GPU profiles&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Where to next?</title><link>https://genie-ai-7e342b.opensource.unicc.org/docs/get-started/where-to-next/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://genie-ai-7e342b.opensource.unicc.org/docs/get-started/where-to-next/</guid><description>&lt;h2 id="pick-the-persona-you-came-in-as"&gt;Pick the persona you came in as&lt;/h2&gt;
&lt;h3 id="i-am-an-end-user"&gt;I am an end user&lt;/h3&gt;
&lt;p&gt;You are done — sign in and chat. Two pages are worth bookmarking:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="https://genie-ai-7e342b.opensource.unicc.org/docs/get-started/glossary/"&gt;Glossary&lt;/a&gt;&lt;/strong&gt; — for when the docs use an
acronym you don&amp;rsquo;t recognise.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="https://genie-ai-7e342b.opensource.unicc.org/docs/get-started/faq/"&gt;FAQ&lt;/a&gt;&lt;/strong&gt; — for the 12 questions new users ask.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="i-am-a-deployer"&gt;I am a deployer&lt;/h3&gt;
&lt;p&gt;You have a running stack. The next page to read is:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="https://genie-ai-7e342b.opensource.unicc.org/docs/deploy/install-guide/"&gt;Deploy → Choose your deployment mode&lt;/a&gt;&lt;/strong&gt; —
promotes you from local Compose to production.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="https://genie-ai-7e342b.opensource.unicc.org/docs/reference/env-vars/"&gt;Deploy → Configuration reference&lt;/a&gt;&lt;/strong&gt; — the single
source of truth for every env-var.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Then move into day-to-day:&lt;/p&gt;</description></item></channel></rss>