{"id":4996,"date":"2026-05-21T13:27:34","date_gmt":"2026-05-21T04:27:34","guid":{"rendered":"https:\/\/cinnamon.ai\/?post_type=ideas&#038;p=4996"},"modified":"2026-05-21T13:27:34","modified_gmt":"2026-05-21T04:27:34","slug":"super-rag-tech-blog-03","status":"publish","type":"ideas","link":"https:\/\/cinnamon.ai\/en\/ideas\/super-rag-tech-blog-03\/","title":{"rendered":"[Part 3] API Function Catalog \u2014 What can be done, and what should be handled in-house?"},"content":{"rendered":"<ul><li><a class=\"aioseo-toc-item\" href=\"#aioseo-\u306f\u3058\u3081\u306b-1\">Introduction<\/a><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-\u672c\u9023\u8f09\u306b\u3064\u3044\u3066-4\">About this series<\/a><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-super-rag-api\u306e\u5168\u4f53\u50cf-9\u3064\u306e\u6a5f\u80fd\u30ab\u30c6\u30b4\u30ea-7\">An overview of the Super RAG API \u2014 9 functional categories<\/a><ul><li><a class=\"aioseo-toc-item\" href=\"#aioseo-\u6a5f\u80fd\u30ab\u30c6\u30b4\u30ea\u5225\u306e\u65e9\u898b-14\">Quick reference by function category<\/a><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-\u8a8d\u8a3c-17\">certification<\/a><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-\u30e6\u30fc\u30b6\u30fc\u64cd\u4f5c-20\">User operation<\/a><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-\u30b0\u30eb\u30fc\u30d7\u64cd\u4f5c-23\">Group operation<\/a><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-\u30d5\u30a9\u30eb\u30c0\u64cd\u4f5c-26\">Folder operations<\/a><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c-29\">File operations<\/a><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-\u6dfb\u4ed8\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c-32\">Attachment operations<\/a><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-\u30c1\u30e3\u30c3\u30c8\u64cd\u4f5c-35\">Chat operation<\/a><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u51e6\u7406\u81ea\u793e\u30a8\u30f3\u30d9\u30c7\u30a3\u30f3\u30b0\u30d9\u30af\u30bf\u30fc\u30b9\u30c8\u30a2\u5411\u3051-39\">Document processing (for in-house embedded vector stores)<\/a><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-\u691c\u7d22\u81ea\u793ellm\u5411\u3051-42\">Search (for in-house LLMs)<\/a><\/li><\/ul><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-\u81ea\u793e\u3067\u62c5\u3046\u90e8\u5206\u306e3\u985e\u578b-45\">\u201cThree types of &quot;parts handled in-house&quot;<\/a><ul><li><a class=\"aioseo-toc-item\" href=\"#aioseo-\u30bf\u30a4\u30d7aapi\u672a\u5bfe\u5fdc\u306e\u305f\u3081ui\u64cd\u4f5c\u304c\u5fc5\u9808-49\">Type A: UI operation is required because API is not supported.<\/a><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-\u30bf\u30a4\u30d7bapi\u306f\u3042\u308b\u304c\u81ea\u793e\u5074\u306e\u30de\u30b9\u30bf\u7ba1\u7406\u63a8\u5968-52\">Type B: API is available, but internal master data management is recommended.<\/a><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-\u30bf\u30a4\u30d7capi\u3067\u5b9f\u884c\u53ef\u80fd\u3060\u304c\u904b\u7528\u8a2d\u8a08\u304c\u5fc5\u8981-56\">Type C: Executable via API, but requires operational design.<\/a><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-3\u985e\u578b\u306e\u4f7f\u3044\u5206\u3051-60\">How to use the three types<\/a><\/li><\/ul><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-\u6a5f\u80fd\u306e\u7d44\u307f\u5408\u308f\u305b\u3067\u3067\u304d\u308b\u3053\u3068-62\">What you can do with combinations of functions<\/a><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-\u6301\u3061\u5e30\u308a\u691c\u8a0e\u6750\u6599\u6a5f\u80fd\u30ab\u30c6\u30b4\u30ea-\u81ea\u793e\u62c5\u5f53\u5ea6\u30de\u30c3\u30d4\u30f3\u30b0-69\">[Things to consider when taking this home] Function category \u00d7 In-house responsibility mapping<\/a><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-\u6b21\u56de\u4e88\u544a-74\">Next episode preview<\/a><\/li><li><a class=\"aioseo-toc-item\" href=\"#aioseo-\u307e\u3068\u3081-78\">summary<\/a><\/li><\/ul>\n\n\n<div style=\"height:85px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"aioseo-\u306f\u3058\u3081\u306b-1\"><a>Introduction<\/a><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">In the previous two articles, we introduced the overall picture of Super RAG and three integration patterns using the API (\u2460 Super RAG-centric \/ \u2461 search-focused \/ \u2462 pre-processing-focused). The question is, &quot;How much should we entrust to Super RAG, and how much should we control ourselves?&quot;<strong>Scenario axis<\/strong>This episode was all about looking at the built-in components.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This time, we&#039;ll shift our perspective from there.<strong>Functional Category Axis<\/strong>This article provides an overview of the Super RAG API. After deciding to integrate it into your own system, when you actually start refining the development specifications, you&#039;ll need a map of &quot;what can be done with the API and what will remain in the UI and on-premises operations.&quot; This article is a dictionary-like piece to help you take that map home with you. At the end of the article, you&#039;ll find some points to consider that you can take away from this article.<strong>Function Category \u00d7 Company Responsibility Mapping Chart<\/strong>We have prepared this document. It is designed to be used directly as a checklist for internal requirements definition and role assignment discussions.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"aioseo-\u672c\u9023\u8f09\u306b\u3064\u3044\u3066-4\"><a>About this series<\/a><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">This is the third article in the series. The series is structured into five chapters: (I) Why Super RAG, (II) How to implement it, (III) Visualizing the contents, (IV) What is happening in the field, and (V) Decision-making regarding implementation. This time, we will cover the second half of Chapter II, &quot;How to implement it,&quot; which is the function catalog article. After looking at how to choose a pattern in the first half of Chapter II (Part 2), this article is structured to help you understand the range of functions available.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Please note that this article is not a substitute for the specifications. It does not cover the detailed parameters or authorization specifications of each endpoint, but rather aims to provide an overview of &quot;what functional categories exist and what each can do.&quot; When you move on to detailed implementation, please refer to the API specifications and tutorials that describe each individual endpoint.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"aioseo-super-rag-api\u306e\u5168\u4f53\u50cf-9\u3064\u306e\u6a5f\u80fd\u30ab\u30c6\u30b4\u30ea-7\"><a>An overview of the Super RAG API \u2014 9 functional categories<\/a><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The Super RAG API can be broadly categorized into nine functional categories by grouping endpoints with similar roles. Let&#039;s start by getting an overview of all the categories and their interrelationships on a single map.<\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"645\" src=\"https:\/\/cinnamon.ai\/wp-content\/uploads\/2026\/04\/01_categories_overview-1024x645.png\" alt=\"\" class=\"wp-image-4997\" srcset=\"https:\/\/cinnamon.ai\/wp-content\/uploads\/2026\/04\/01_categories_overview-1024x645.png 1024w, https:\/\/cinnamon.ai\/wp-content\/uploads\/2026\/04\/01_categories_overview-300x189.png 300w, https:\/\/cinnamon.ai\/wp-content\/uploads\/2026\/04\/01_categories_overview-768x484.png 768w, https:\/\/cinnamon.ai\/wp-content\/uploads\/2026\/04\/01_categories_overview-18x12.png 18w, https:\/\/cinnamon.ai\/wp-content\/uploads\/2026\/04\/01_categories_overview.png 1040w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\"><em>Overview of the 9 categories of the Super RAG API<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">The categories roughly correspond to the units of operations you interact with on a daily basis in the UI. Logging in, managing users and groups, adding files to folders, and chatting via the AI assistant\u2014this entire sequence of actions is covered by seven categories: Authentication, User Operations, Group Operations, Folder Operations, File Operations, Attachment Operations, and Chat Operations. These are,<strong>I want to reproduce the standard Super RAG functionality using the API.<\/strong>This category involves what you might call &quot;reusing UI features,&quot; something you might do occasionally.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The remaining two are,<strong>I want to borrow only the core functions of Super RAG as components.<\/strong>These are extended categories for case studies. In &quot;Document Processing,&quot; which corresponds to Pattern \u2462 (Preprocessing Specialized) covered in the second session, you can perform the extraction of structured text from files and split it into chunks using an API. In &quot;Search,&quot; which corresponds to Pattern \u2461 (Search Specialized), you can query already registered documents and retrieve related chunks with scores. The key point of these two categories is that you can keep the LLM or vector database for answer generation on your own and simply insert Super RAG extraction and search.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Here&#039;s one point to note:<strong>Currently, AI assistant settings can only be configured through the user interface (UI), not via API.<\/strong>The AI assistant is a kind of &quot;agent definition&quot; that specifies the combination of folders to refer to and the tone of response, and all Super RAG chats operate on this assistant basis. An &quot;assistant ID&quot; is passed to the API that invokes the chat, but the operation of issuing and editing that ID is completed entirely within the UI (API support will be considered in the future).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Thus, when designing an API-centric operational system, it&#039;s necessary to assume that there will be &quot;functions that require human intervention on the UI side.&quot; In this article, we will categorize and organize these &quot;parts that need to be handled in-house&quot; in later sections.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"aioseo-\u6a5f\u80fd\u30ab\u30c6\u30b4\u30ea\u5225\u306e\u65e9\u898b-14\"><a>Quick reference by function category<\/a><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">From here, we will look at the nine categories in order.<strong>What can<\/strong>&quot;<strong>To what extent is API support available?<\/strong>&quot;<strong>Are there any aspects that require UI operation?<\/strong>&quot;<strong>In what typical situations is it used?<\/strong>This summarizes the key points concisely. The structure is straightforward, allowing it to be used as a dictionary to refer to again during the implementation phase.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Note that the Super RAG API has multiple versions of the same endpoint (e.g., v3, v3.2, v3.3).<strong>Latest released version<\/strong>Only the latest version will be introduced. Older versions are legacy features kept for backward compatibility and are not recommended for new users.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"aioseo-\u8a8d\u8a3c-17\"><a>certification<\/a><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>What can be done?<\/strong>This category represents the first hurdle before making any API calls. You obtain an access token by logging in with your ID\/password, and all subsequent API calls are authenticated using that token. Multi-factor authentication (OTP\/2FA) can also be enabled\/disabled via the API. Disabling multi-factor authentication allows for automated system processing.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Typical usage<\/strong>The basic pattern when calling Super RAG from your own system is to obtain and store a service account token at startup. By designing it to issue tokens on a per-user basis, you can also achieve queries that match the group permissions on the Super RAG side with the permissions of your own application (for example, the scope of reference will be automatically narrowed in subsequent chat calls).<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"aioseo-\u30e6\u30fc\u30b6\u30fc\u64cd\u4f5c-20\"><a>User operation<\/a><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>What can be done?<\/strong>This includes features such as creating, updating, deleting, and searching user accounts, as well as retrieving your own profile. It also includes list retrieval, individual retrieval by ID, searching, and checking group affiliations.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Typical usage<\/strong>A typical example of this operation is integrating with the HR system and internal ID master to run user maintenance related to hiring, leaving, and transfers in batch processing. Currently, Super RAG does not support SSO, but this will enable pseudo-account synchronization. The basic flow is to &quot;read each person from the list and register them via API,&quot; so designing error handling (such as preventing the deletion of existing IDs or the user&#039;s own) is crucial for operation. More details will be provided later in the &quot;Parts handled by the company&quot; section.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"aioseo-\u30b0\u30eb\u30fc\u30d7\u64cd\u4f5c-23\"><a>Group operation<\/a><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>What can be done?<\/strong>This allows you to create, update, and delete groups, and retrieve a list of users for each group. Groups are defined as Super RAG.<strong>Unit of authority<\/strong>So, folders and AI assistants are created within groups.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Typical usage<\/strong>We manage groups at a granular level, such as by department, job type, or project, and standardize the scope of users and accessible documents. The main operations involve consolidating and reorganizing groups during organizational changes, and the resulting reassignment of users.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"aioseo-\u30d5\u30a9\u30eb\u30c0\u64cd\u4f5c-26\"><a>Folder operations<\/a><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>What can be done?<\/strong>Internally, it&#039;s called a &quot;collection,&quot; and it&#039;s a unit for grouping documents. You can create, update, and delete folders, retrieve a list of files within a folder, and search for them.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Typical usage<\/strong>Folders are created based on their purpose and type, such as &quot;Accounting Regulations,&quot; &quot;Product Manuals,&quot; and &quot;FAQs,&quot; and used as the unit for reference by the AI assistant. Folder IDs are central identifiers required for many APIs, including file operations, chat creation, and retrieve calls, which will be discussed later.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"aioseo-\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c-29\"><a>File operations<\/a><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>What can be done?<\/strong>Internally, it&#039;s called a &quot;reference,&quot; and it refers to individual documents registered in a folder. You can upload, list, search, and download files. Uploads are done at the folder file registration endpoint (POST \/api\/v3.2\/collections\/{collection_id}\/references\/).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Typical usage<\/strong>This category often involves updating manuals and FAQs using daily or weekly batch processes. Since files with the same name cannot be placed in the same folder, the update process involves &quot;searching by file name \u2192 deleting the old file \u2192 registering the new file.&quot; This process of &quot;safely replacing old files without leaving any traces&quot; may seem mundane, but it directly impacts quality.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"aioseo-\u6dfb\u4ed8\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c-32\"><a>Attachment operations<\/a><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>What can be done?<\/strong>This is a category for temporarily attaching files to a chat session. Unlike files registered in a folder (reference),<strong>It is only referenced within that chat.<\/strong>This handles files within a specific scope.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Typical usage<\/strong>This is used for files you want to attach to one-off inquiries, such as &quot;Please tell me about the contents of this application form&quot; (e.g., personal plans, specific application form PDFs). It&#039;s for one-time references that don&#039;t warrant being added to a folder.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"aioseo-\u30c1\u30e3\u30c3\u30c8\u64cd\u4f5c-35\"><a>Chat operation<\/a><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>What can be done?<\/strong>This category allows you to make inquiries equivalent to those made through the UI&#039;s chat screen. It includes functions for creating, updating, deleting, and duplicating chat sessions, as well as sending messages. The query submission endpoint (POST \/api\/v3.2\/chats\/{chat_id}\/messages\/) streams the response text, supporting chunks, and source information.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Typical usage<\/strong>This category forms the core of Pattern \u2460 (Super RAG-centric), which we have introduced in this three-part series. Passing the AI Assistant ID, Chat ID, and inquiry text, and receiving the response and evidence\u2014this is the most frequent path for standard API usage.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">As mentioned earlier, the essential for initiating a chat is<strong>The AI Assistant ID can only be created through the UI in the AI Assistant settings.<\/strong>Therefore, manual preparation of the UI is required the first time you use it. Currently, it&#039;s not possible to dynamically create an assistant from an API call.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"aioseo-\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u51e6\u7406\u81ea\u793e\u30a8\u30f3\u30d9\u30c7\u30a3\u30f3\u30b0\u30d9\u30af\u30bf\u30fc\u30b9\u30c8\u30a2\u5411\u3051-39\"><a>Document processing (for in-house embedded vector stores)<\/a><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>What can be done?<\/strong>The two main types of APIs are POST \/api\/v3.3\/actions\/document-extract\/, which extracts structured text from a file, and POST \/api\/v3.3\/actions\/chunking\/, which splits the extracted text into semantic units. Additionally, single-use operations such as text vectorization (embedding), reranking, and direct execution via prompt (prompt-execute) are also available through the API.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Typical usage<\/strong>This corresponds to pattern \u2462 (specialized preprocessing) which was covered in the second session. This is used in cases where a company has its own vector database and search infrastructure, and only wants to borrow the part of Super RAG that extracts the structure of Japanese documents with high accuracy and chunks them. Where and how the chunks are stored, and how the search and reranking are run, all remain at the company&#039;s discretion.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"aioseo-\u691c\u7d22\u81ea\u793ellm\u5411\u3051-42\"><a>Search (for in-house LLMs)<\/a><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>What can be done?<\/strong>The core of this is the POST request \/api\/v3\/workflows\/retrieve\/, which queries registered documents and returns relevant chunks with scores. Each returned chunk includes the body, score, filename, metadata, etc.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Typical usage<\/strong>This corresponds to pattern \u2461 (search-focused) which was covered in the second session. A typical configuration involves calling this endpoint from a workflow tool or agent platform like Dify, retrieving relevant chunks, and then assembling the answer using your company&#039;s LLM. Since you need to explicitly specify the file IDs to be searched, some preparation is required, such as retrieving a list of files beforehand and creating a list of target file IDs. In the next version (Super RAG 3.4), it will also support chunk search using the External Knowledge API, which allows Super RAG to be used as Dify&#039;s native knowledge.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"aioseo-\u81ea\u793e\u3067\u62c5\u3046\u90e8\u5206\u306e3\u985e\u578b-45\"><a>\u201cThree types of &quot;parts handled in-house&quot;<\/a><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">After reviewing the feature categories, let&#039;s shift our perspective. Once we understand &quot;what can be done with the API,&quot; the key to refining the implementation scope is:<strong>Parts that cannot be handled by the API and must be handled in-house.<\/strong>The important thing is not to overlook it. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The &quot;parts to be handled in-house&quot; mentioned here can be divided into three types. Depending on the type, the aspects of the operational design and the items that should be verified in the Proof of Concept (PoC) will differ.<\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"571\" src=\"https:\/\/cinnamon.ai\/wp-content\/uploads\/2026\/04\/02_self_responsibility_types-1024x571.png\" alt=\"\" class=\"wp-image-4998\" srcset=\"https:\/\/cinnamon.ai\/wp-content\/uploads\/2026\/04\/02_self_responsibility_types-1024x571.png 1024w, https:\/\/cinnamon.ai\/wp-content\/uploads\/2026\/04\/02_self_responsibility_types-300x167.png 300w, https:\/\/cinnamon.ai\/wp-content\/uploads\/2026\/04\/02_self_responsibility_types-768x428.png 768w, https:\/\/cinnamon.ai\/wp-content\/uploads\/2026\/04\/02_self_responsibility_types-18x10.png 18w, https:\/\/cinnamon.ai\/wp-content\/uploads\/2026\/04\/02_self_responsibility_types.png 1040w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\"><em>Three types of tasks handled in-house<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"aioseo-\u30bf\u30a4\u30d7aapi\u672a\u5bfe\u5fdc\u306e\u305f\u3081ui\u64cd\u4f5c\u304c\u5fc5\u9808-49\"><a>Type A: UI operation is required because API is not supported.<\/a><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This is most clearly the part that &quot;cannot be handled in-house = must be operated by a human via the UI.&quot; A prime example is...<strong>AI Assistant Settings<\/strong>Currently, items such as the combination of reference folders, response tone definition, and selection of the LLM to use cannot be created or edited via the API. The same applies to checking the group ID; while it can be obtained via the API, it is overwhelmingly easier to create and confirm it first using the UI.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The way to deal with this type is simple:<strong>Even with an API-centric operational design, explicitly incorporate UI operation steps into the process.<\/strong>It all boils down to this. A practical approach is to always include items like &quot;Create this assistant in the UI&quot; and &quot;Check this group name in the UI and note down the ID&quot; in the initial setup checklist.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"aioseo-\u30bf\u30a4\u30d7bapi\u306f\u3042\u308b\u304c\u81ea\u793e\u5074\u306e\u30de\u30b9\u30bf\u7ba1\u7406\u63a8\u5968-52\"><a>Type B: API is available, but internal master data management is recommended.<\/a><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Although it can be operated via API,<strong>Relying solely on APIs is prone to failure later on.<\/strong>This is a part. A representative example is...<strong>User Management<\/strong>Therefore, it is recommended to keep the user IDs, group IDs, and permissions of the Super RAG side in Excel or a database as your company&#039;s user management master. A ledger of folder IDs\/file IDs serves the same purpose.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The reason a master is needed is because the Super RAG API basically operates using &quot;ID specification&quot;. When you register a user, a user ID is issued, and when you register a file, a file ID is issued. The ID changes when you re-register. When you want to delete or update next time...<strong>If you don&#039;t know the ID on your end, you can&#039;t access the API.<\/strong>Conversely, if you create a system to record the issued ID at the time of registration from the beginning, subsequent operations will become dramatically easier.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The way to deal with this type is,<strong>A layer that records the ID from the Super RAG side, linked to the company&#039;s business master data.<\/strong>The first step is to incorporate this into the initial implementation. The design involves maintaining a ledger that bridges &quot;human-meaning identifiers&quot; such as usernames and email addresses with the UUIDs issued by Super RAG, whether in Excel, a database, or an administration screen.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"aioseo-\u30bf\u30a4\u30d7capi\u3067\u5b9f\u884c\u53ef\u80fd\u3060\u304c\u904b\u7528\u8a2d\u8a08\u304c\u5fc5\u8981-56\"><a>Type C: Executable via API, but requires operational design.<\/a><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">APIs are available and automation is possible,<strong>It won&#039;t work unless the company decides on the design of &quot;how to operate it.&quot;<\/strong>This is a part. A representative example is...<strong>FAQ and other regularly updated files<\/strong>While it&#039;s technically possible to write a &quot;search \u2192 delete \u2192 register&quot; loop using the API by swapping files, it&#039;s up to the company to decide &quot;which folders and filenames to fix,&quot; &quot;how often and what the triggers for updates should be,&quot; and &quot;how to revert if something goes wrong.&quot;<strong>Error handling for batch processing of user data<\/strong>This also falls under the same category, and you will need to implement branching logic on your end for error conditions such as duplicate existing users, the inability to delete the last administrator, and the inability to delete yourself.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">One way to approach this type is to &quot;translate the operational design into programs and screen functions and control it with the system&quot; or &quot;<strong>Document operational rules outside of the code.<\/strong>The key is to document the location, naming conventions, update frequency, and rework procedures in case of errors, and store them together with the API call script. This will reduce the burden of handover and troubleshooting.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Also, unrelated to the type of project, you will be responsible for designing and implementing the application that serves as the frontend for the API. If you lack internal resources or have concerns about developing with APIs, our partners who are well-versed in Super RAG can assist you.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"aioseo-3\u985e\u578b\u306e\u4f7f\u3044\u5206\u3051-60\"><a>How to use the three types<\/a><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">In the requirements definition phase, it&#039;s effective to categorize each function into these three types: A, B, and C. Type A tasks are always included in the effort calculation as &quot;manual processes,&quot; Type B tasks are included in the implementation scope as &quot;initial ledgers,&quot; and Type C tasks are included in the deliverables as &quot;operational documentation&quot;\u2014this helps reduce oversights. The mapping table at the end of the article is a quick reference guide showing where each of the nine categories should fit within the three types.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"aioseo-\u6a5f\u80fd\u306e\u7d44\u307f\u5408\u308f\u305b\u3067\u3067\u304d\u308b\u3053\u3068-62\"><a>What you can do with combinations of functions<\/a><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">While function categories are useful on their own, in actual work...<strong>Value is only created when multiple categories are combined.<\/strong>These are the majority. Here, we will briefly summarize five representative combination patterns from the perspective of functional categories. Detailed scenarios will be left to Part 2 and future use case sessions (planned for Parts 7-9).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u2460 <\/strong><strong>Inquiry about registered documents<\/strong><br>Combination: Authentication + File operations (pre-registered) + Chat operations. This pattern involves registering internal regulations, manuals, and specifications in folders, and then asking questions and receiving answers from the company&#039;s business system. This is the most common use of Pattern 1 (Super RAG-centric), and the AI assistant settings are completed in advance via the UI.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u2461 FAQ<\/strong><strong>Replacement of regularly updated files such as<\/strong><br>Combination: Authentication + File Operations (Search \u2192 Delete \u2192 Register). This system securely replaces frequently updated reference files without leaving any old information. The loop of &quot;Search by file name \u2192 Retrieve and delete the old ID \u2192 Register the new file&quot; is executed by a service account with administrator privileges. The operational design of Type C (naming conventions, frequency, and return method) determines the quality.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u2462 <\/strong><strong>Using only the document processing function (integration into our own RAG platform)<\/strong><br>Combination: Authentication + Document Processing (document-extract \u2192 chunking). Super RAG handles the extraction of structured text from files and chunking, and the resulting chunks are stored in the company&#039;s vector database. This is the core combination of Pattern \u2462 (specialized preprocessing), allowing the company to leverage its existing search and LLM assets.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u2463 <\/strong><strong>Only the search function is used (responses are generated using our own LLM).<\/strong><br>Combination: Authentication + File operations (preparation) + Search (retrieve). For registered documents, queries are sent from the company&#039;s system to retrieve only relevant chunks, and the answer is assembled using the company&#039;s LLM. This is a typical configuration of Pattern \u2461 (search-focused), and is often called from a workflow tool like Dify.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u2464 <\/strong><strong>Bulk maintenance for users<\/strong><br>Combination: Authentication + User Operation + Group Operation. User registration, deletion, and affiliation changes due to personnel changes or organizational restructuring are performed collectively from the company&#039;s user management master. It is necessary to implement branching for error conditions such as duplicate registration, inability to delete the last administrator, and inability to delete oneself, making it a combination that involves both Type B (recommended in-house master management) and Type C (operational design).<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"aioseo-\u6301\u3061\u5e30\u308a\u691c\u8a0e\u6750\u6599\u6a5f\u80fd\u30ab\u30c6\u30b4\u30ea-\u81ea\u793e\u62c5\u5f53\u5ea6\u30de\u30c3\u30d4\u30f3\u30b0-69\"><a>[Things to consider taking home]<\/a><br><a>Function Category \u00d7 Company Responsibility Mapping<\/a><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">This is a quick reference sheet summarizing everything discussed so far. Please use it as a checklist when discussing requirements definition and role allocation, applying it to your company&#039;s use cases.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For each category,<strong>API presence or absence<\/strong>&quot;<strong>UI Requirements (Type A)<\/strong>&quot;<strong>A ledger that your company should maintain (Type B)<\/strong>&quot;<strong>Issues in operational design (Type C)<\/strong>It is organized into four columns.<\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>category<\/th><th>API presence or absence<\/th><th>UI Required Items (A)<\/th><th>Ledgers that a company should maintain (B)<\/th><th>Issues in operational design (C)<\/th><\/tr><\/thead><tbody><tr><td>certification<\/td><td>\u25cb<\/td><td>\u2014<\/td><td>Managing individual service accounts<\/td><td>Token renewal policy (frequency and re-acquisition in case of failure)<\/td><\/tr><tr><td>User operation<\/td><td>\u25cb<\/td><td>\u2014<\/td><td><strong>Administrator&#039;s User Management Master (Required)<\/strong><\/td><td>Error handling design (duplicate, last administrator, self-deletion)<\/td><\/tr><tr><td>Group operation<\/td><td>\u25cb<\/td><td>For initial group creation, UI is recommended.<\/td><td><strong>Group ID Register<\/strong><\/td><td>Designing procedures for group mergers and acquisitions and member transfers.<\/td><\/tr><tr><td>Folder operations<\/td><td>\u25cb<\/td><td>\u2014<\/td><td><strong>Folder ID Register<\/strong><\/td><td>Folder naming conventions and ownership group design<\/td><\/tr><tr><td>File operations<\/td><td>\u25cb<\/td><td>\u2014<\/td><td><strong>File ID Register (ID changes upon re-registration)<\/strong><\/td><td>Rules for replacing regularly updated files<\/td><\/tr><tr><td>Attachment operations<\/td><td>\u25cb<\/td><td>\u2014<\/td><td>\u2014<\/td><td>Guidelines for distinguishing between attachments and folder registration.<\/td><\/tr><tr><td>Chat operation<\/td><td>\u25b3<\/td><td><strong>A.I.<\/strong><strong>Assistant settings (required)<\/strong><\/td><td><strong>Assistant ID Ledger<\/strong><\/td><td>AI Assistant Initial Setup Instructions<\/td><\/tr><tr><td>Document processing<\/td><td>\u25cb (v3.3)<\/td><td>\u2014<\/td><td>Designing our own database for chunk storage.<\/td><td>Update design for file updates<\/td><\/tr><tr><td>search<\/td><td>\u25cb<\/td><td>\u2014<\/td><td>List of target file IDs<\/td><td>Access access permissions and management of target file ID sets.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">&quot;\u25cb&quot; can be manipulated via API.<strong>&quot;\u25b3&quot; indicates that some UI operations are required, and &quot;bold&quot; indicates items that are particularly easy to overlook.<\/strong>This is a starting point for internal discussions to decide &quot;who will be responsible for which part of our team.&quot; Basically, if you manage accounts and data centrally on the Super RAG UI, local ledger management is unnecessary. This is because you only need to keep the data on Super RAG up-to-date and synchronize it locally. However, if you update accounts and data on Super RAG via API from a local machine, or if you link local information to information obtained from Super RAG, then ledger management to associate identifiers will be necessary.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In addition to those listed in this table, there may be other details to consider depending on the use case. For example, choices such as whether to perform embedding using your own model or via Super RAG, or whether to include a reranking stage, are outside the scope of this article. When implementing, please proceed with the specification document and proof of concept (PoC) together.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"aioseo-\u6b21\u56de\u4e88\u544a-74\"><a>Next episode preview<\/a><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">In the next installment (Part 4), we will begin Chapter III, &quot;Visualizing the Contents.&quot; In this article&#039;s feature catalog, we have positioned document processing (extraction and chunking) and searching (retrieve) as &quot;core functions for patterns \u2461\/\u2462.&quot; In Part 4, we will cover the very first hurdle in that core.<strong>Contents of the extracted documents<\/strong>Let&#039;s delve deeper into this.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The subject is,<strong>How does Super RAG differentiate between using its proprietary DocReader and Azure Document Intelligence, and how do they process different file formats? <\/strong>This is an overview of the engine design. We will look at how the engine design addresses hurdles that, if missed, will stagnate the search accuracy in subsequent stages, such as maintaining the layout of Japanese PDFs, reading table cells individually, linking figure captions, and OCR of scanned PDFs.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Furthermore, the extraction accuracy of Super RAG<strong>I&#039;d like to compare it to a typical RAG using actual documentation.<\/strong>In this case, you can compare the results by running your actual data through a free or paid trial. At the end of the fourth installment, we plan to provide a checklist for this comparison trial as &quot;material to take home and consider.&quot; By reading the set of &quot;Function Catalog \u00d7 Extraction Engine Design \u00d7 Verification with Your Own Data,&quot; you should be able to get a more concrete idea of how to integrate Super RAG into your business system.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"aioseo-\u307e\u3068\u3081-78\"><a>summary<\/a><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">When viewed through the nine functional categories, the Super RAG API can be organized into two groups: &quot;UI function reuse&quot; and &quot;core function borrowing as a component.&quot; The former is for calling standard Super RAG functions from internal systems, while the latter is for integrating only Super RAG&#039;s document processing and search functions as components, mainly within internal systems. These correspond neatly to patterns \u2460 to \u2462 discussed in the second installment.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Furthermore, it&#039;s crucial to categorize the &quot;in-house responsibilities&quot; that cannot be handled solely by APIs into three types\u2014UI operation required (Type A), in-house master data management recommended (Type B), and operational design required (Type C)\u2014during the requirements definition phase. The mapping table at the end of the article is a quick reference guide that applies this categorization to nine categories. Please feel free to use it as a starting point for internal discussions.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">&lt;Articles in this series&gt;<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/cinnamon.ai\/en\/ideas\/super-rag-tech-blog-01\/\" target=\"_blank\" rel=\"noopener\" title=\"[Part 1] Achieving a Quality Beyond Standard RAG \u2014 Technical Innovations Supporting Super RAG\">[Part 1] Achieving a Quality Beyond Standard RAG \u2014 Technical Innovations Supporting Super RAG<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cinnamon.ai\/en\/ideas\/super-rag-tech-blog-02\/\" title=\"[Part 2] A Thorough Explanation of Three Embedded Patterns \u2014 Analyzing API Call Flows and Dify Expense Review\">[Part 2] A Thorough Explanation of Three Embedded Patterns \u2014 Analyzing API Call Flows and Dify Expense Review<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cinnamon.ai\/en\/ideas\/super-rag-tech-blog-03\/\" title=\"[Part 3] API Function Catalog \u2014 What can be done, and what should be handled in-house?\">[Part 3] API Function Catalog \u2014 What can be done, and what should be handled in-house?<\/a><\/li>\n\n\n\n<li>[Part 4] The Contents of Document Extraction \u2014 How is the Engine Selected? (Scheduled for release in May 2026)<\/li>\n\n\n\n<li>[Part 5] Hybrid Search and Reranking \u2014 Making the Most of Extracted Content by Balancing &quot;Semantic&quot; and &quot;Word&quot; (Scheduled for release in May 2026)<\/li>\n\n\n\n<li>From here on, we plan to publish up to the 10th installment.<\/li>\n<\/ul>\n\n\n\n<div style=\"height:80px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-fe48e5de wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/contents.cinnamon.ai\/contact\/inquiry_blog\" target=\"_blank\" rel=\"noreferrer noopener\">contact<\/a><\/div>\n\n\n\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/contents.cinnamon.ai\/download\/wp_superrag_dl_blog\" target=\"_blank\" rel=\"noreferrer noopener\">Super RAG Document Download<\/a><\/div>\n<\/div>\n\n\n\n<div style=\"height:150px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>","protected":false},"excerpt":{"rendered":"<p>\u306f\u3058\u3081\u306b \u524d\u56de\u307e\u3067\u306e2\u56de\u3067\u3001Super RAG\u306e\u5168\u4f53\u50cf\u3068\u3001API\u306b\u3088\u308b3\u3064\u306e\u7d44\u307f\u8fbc\u307f\u30d1\u30bf\u30fc\u30f3\uff08\u2460Super RAG\u4e2d\u5fc3\uff0f\u2461\u691c\u7d22\u7279\u5316\uff0f\u2462\u524d\u51e6\u7406\u7279\u5316\uff09\u3092\u3054\u7d39\u4ecb\u3057\u307e\u3057\u305f\u3002\u300c\u3069\u3053\u307e\u3067\u3092Super RAG\u306b\u4efb\u305b\u3001\u3069\u3053\u304b\u3089\u81ea\u793e\u3067\u5236\u5fa1 [&hellip;]<\/p>","protected":false},"featured_media":5005,"template":"","ideas-cat":[59],"class_list":["post-4996","ideas","type-ideas","status-publish","has-post-thumbnail","hentry","ideas-cat-tech"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/cinnamon.ai\/en\/wp-json\/wp\/v2\/ideas\/4996","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cinnamon.ai\/en\/wp-json\/wp\/v2\/ideas"}],"about":[{"href":"https:\/\/cinnamon.ai\/en\/wp-json\/wp\/v2\/types\/ideas"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cinnamon.ai\/en\/wp-json\/wp\/v2\/media\/5005"}],"wp:attachment":[{"href":"https:\/\/cinnamon.ai\/en\/wp-json\/wp\/v2\/media?parent=4996"}],"wp:term":[{"taxonomy":"ideas-cat","embeddable":true,"href":"https:\/\/cinnamon.ai\/en\/wp-json\/wp\/v2\/ideas-cat?post=4996"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}