# 知識庫

最後更新：2025-11-14

## 概述

知識庫可想像為開書（Open Book）考試，從知識庫中找到跟問題最相關的資訊，擷取出來當作大型語言模型回答時參考的上下文。雖然知識庫可放置大量資料，但仍須注意，上傳的資料是否跟打造的 AI 助理需要回答的問題是否相關，若不相關，根據目前的檢索技術，仍然可能會造成找到不相關的資訊當作回答上下文，因此回答不出來。

## 知識庫內容範例

知識庫適合存放各種結構化或非結構化的資訊：

* 產品資訊
* FAQ 常見問題
* 技術文檔
* 操作手冊
* 政策規範
* 其他較大量的資料

## 檔案列表排序

### 按建立日期排序

MaiAgent 的知識庫檔案列表採用 **按建立日期排序** 的方式呈現，最新上傳的檔案會顯示在列表的最前面。這個設計讓您可以：

* **快速找到新檔案**：剛上傳的檔案會立即顯示在最上方
* **追蹤更新時程**：透過檔案順序了解知識庫的更新歷程
* **便於管理維護**：優先處理最新加入的資料

### 排序邏輯

系統會自動依照檔案建立日期進行降序排列（最新的檔案在最前面）。這個排序方式適用於所有透過 API 或介面取得的檔案列表，確保使用體驗的一致性。

## 知識庫檔案管理最佳實踐

### 檔案命名建議

為了更容易識別和管理檔案，建議採用有意義的命名方式：

* **加入日期**：例如 `產品規格_2025-11.pdf`
* **版本標記**：例如 `使用手冊_v2.3.pdf`
* **主題分類**：例如 `FAQ_退換貨政策.md`

### 定期檢視與更新

由於檔案按建立日期排序，建議定期檢視列表：

1. **檢查最新檔案**：確認最近上傳的檔案內容是否正確
2. **更新過時資料**：找出較舊的檔案，評估是否需要更新或刪除
3. **維護資料品質**：確保知識庫內容的時效性和準確性

### 批次上傳策略

當需要一次上傳多個檔案時：

* 依照重要性順序上傳，最重要的檔案最後上傳（會顯示在最前面）
* 相關檔案建議在相近時間上傳，以便在列表中聚集顯示
* 上傳後立即檢查列表順序，確認檔案排列符合預期

## 技術說明

### API 回應格式

知識庫檔案 API 會回傳按建立日期排序的檔案列表：

```json
{
  "files": [
    {
      "id": "file_123",
      "name": "最新產品目錄.pdf",
      "created_at": "2025-11-14T10:30:00Z",
      "size": 2048576
    },
    {
      "id": "file_122",
      "name": "FAQ更新.md",
      "created_at": "2025-11-13T15:20:00Z",
      "size": 10240
    }
  ]
}
```

### 與其他排序方式的比較

| 排序方式  | 優點       | 缺點            | MaiAgent 使用 |
| ----- | -------- | ------------- | ----------- |
| 按建立日期 | 易於追蹤新內容  | 較舊但重要的檔案可能被忽略 | ✅ 是         |
| 按檔名   | 易於搜尋特定檔案 | 需要良好的命名規範     | ❌ 否         |
| 按檔案大小 | 識別大型檔案   | 與內容重要性無關      | ❌ 否         |
| 按修改日期 | 反映最新更新   | 首次建立時間資訊遺失    | ❌ 否         |

MaiAgent 選擇按建立日期排序，是為了提供最直覺的時間軸視角，讓使用者清楚掌握知識庫的成長過程。

## 相關功能

* [如何建立知識庫：基本設置](https://docs.maiagent.ai/km/km-basic-settings)
* [文件管理：標籤及元資料](https://docs.maiagent.ai/km/tags-and-metadata)
* [搜尋測試](https://docs.maiagent.ai/km/test-search-result)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.maiagent.ai/tech/ai-agents/knowledge-base.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
