From f87151b411ec0d3abe685c2c23386fd03b3d3972 Mon Sep 17 00:00:00 2001 From: MubaarigCaydiid Date: Wed, 29 Jul 2026 10:57:00 +0300 Subject: [PATCH] feat: add retrieval-augmented-generation topic --- topics/rag/index.md | 13 +++++++++++++ topics/rag/rag.png | Bin 0 -> 17938 bytes 2 files changed, 13 insertions(+) create mode 100644 topics/rag/index.md create mode 100644 topics/rag/rag.png diff --git a/topics/rag/index.md b/topics/rag/index.md new file mode 100644 index 00000000000..e427c2abe9f --- /dev/null +++ b/topics/rag/index.md @@ -0,0 +1,13 @@ +--- +aliases: retrieval-augmented-generation, rag-pipeline +display_name: Retrieval-Augmented Generation +short_description: Retrieval-augmented generation improves LLMs by retrieving relevant information from external knowledge sources. +topic: rag +logo: rag.png +wikipedia_url: https://en.wikipedia.org/wiki/Retrieval-augmented_generation +related: artificial-intelligence, generative-ai, llms, embeddings +--- + +Retrieval-augmented generation (RAG) is a technique that improves large language models by retrieving relevant information from external sources and using it to generate more accurate and context-aware responses. + +A RAG system combines information retrieval with a language model. It is commonly used in AI assistants, search systems, document question answering, and applications that need access to private or frequently updated information. diff --git a/topics/rag/rag.png b/topics/rag/rag.png new file mode 100644 index 0000000000000000000000000000000000000000..06f61705b72bf54baf8ae5e10d49638bb3a388fc GIT binary patch literal 17938 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