{"componentChunkName":"component---src-templates-teaching-page-js","path":"/teaching/PG-ARAG-SS25/","result":{"data":{"mdx":{"frontmatter":{"title":"Adaptive Retrieval-Augmented Generation","type":"Project Group","year":"2025","term":"Summer","kind":"Master","language":"en"},"body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {\n  \"date\": \"2025-09-09\",\n  \"title\": \"Adaptive Retrieval-Augmented Generation\",\n  \"type\": \"Project Group\",\n  \"year\": \"2025\",\n  \"term\": \"Summer\",\n  \"kind\": \"Master\",\n  \"language\": \"en\"\n};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar Link = makeShortcode(\"Link\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"h2\", {\n    \"id\": \"content\"\n  }, \"Content\"), mdx(\"p\", null, \"Are you interested in pushing the boundaries of existing Large Language Models (LLMs)? Join our project ARAG, where you will be developing new Retrieval-Augmented Generation (RAG) pipelines that are Adaptive (ARAG) in the sense that they can decide on the actual architecture at runtime for a given query.\"), mdx(\"p\", null, \"In this project, we will focus on addressing a critical challenge in LLMs: their inability to handle current and factual knowledge effectively. Many real-world queries to LLMs involve information that an LLMs may not have access to. A solution to this issue is RAG, and there are plenty of approaches to enhance LLM's reasoning capabilities one way or another.\\nIn this project group (PG), you will implement an RAG system that can choose a query-dependent architecture, i.e., for the given query, it can decide on the run which route to follow.\"), mdx(\"p\", null, \"Your group will target three main components to handle ARAG: Retrieval (how additional information is actually retrieved), Augmentation (how retrieved information is passed on to an LLM), and Generation (how to generate the final response given a query and additional context from the previous steps).\"), mdx(\"h2\", {\n    \"id\": \"roadmap\"\n  }, \"Roadmap\"), mdx(\"ol\", null, mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"Read into RAG literature.\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"Implement individual components in the RAG pipeline.\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"Implement Adaptive RAG.\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"Build an API.\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"Evaluate performance and result quality.\")), mdx(\"h2\", {\n    \"id\": \"requirements\"\n  }, \"Requirements\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Very good Python skills.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Experience in working with LLMs.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Experience in software development and with git flow.\")), mdx(\"h2\", {\n    \"id\": \"course-in-paul\"\n  }, \"Course in PAUL\"), mdx(\"p\", null, \"The PG will be available in\\n\", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://paul.uni-paderborn.de/\"\n  }, \"PAUL (TBA)\"), \".\"), mdx(\"h2\", {\n    \"id\": \"related-work\"\n  }, \"Related Work\"), mdx(\"p\", null, \"Yunfan Gao, Yun Xiong, Xinyu Gao, Kangxiang Jia, Jinliu Pan, Yuxi Bi, Yi Dai, Jiawei Sun, Qianyu Guo, Meng Wang, Haofen Wang: Retrieval-Augmented Generation for Large Language Models: A Survey. CoRR abs/2312.10997 (2023)\\nWenqi Fan, Yujuan Ding, Liangbo Ning, Shijie Wang, Hengyun Li, Dawei Yin, Tat-Seng Chua, Qing Li: A Survey on RAG Meeting LLMs: Towards Retrieval-Augmented Large Language Models. KDD 2024: 6491-6501\"), mdx(\"h2\", {\n    \"id\": \"contact\"\n  }, \"Contact\"), mdx(Link, {\n    to: \"/YasirMahmood\",\n    mdxType: \"Link\"\n  }, \"Yasir Mahmood\"), mdx(Link, {\n    to: \"/MohamedSherif\",\n    mdxType: \"Link\"\n  }, \"Mohamed Sherif\"));\n}\n;\nMDXContent.isMDXComponent = true;"}},"pageContext":{}},"staticQueryHashes":["63159454","932199770"]}