iT邦幫忙

2025 iThome 鐵人賽

DAY 10
0

⚡《AI 知識系統建造日誌》這不是一篇純技術文章,而是一場工程師的魔法冒險。程式是咒語、流程是魔法陣、錯誤訊息則是黑暗詛咒。請準備好你的魔杖(鍵盤),今天,我們要踏入魔法學院的基礎魔法課,打造穩定、可擴展的 AI 知識系統。


前言:踏入魔法學院的基礎課

今天,我走進魔法學院的教室——也就是我們的 Infra 世界。每個新進學生都在練習最基本的咒語:API、資料庫、容器編排與任務排程。缺了這些基礎,你的高階魔法(AI 系統)就可能瞬間爆炸 💥。
手上握著魔杖,我面對一張複雜的魔法地圖:七大基礎組件要協同運作,任何一個環節出錯,都可能引發黑暗詛咒——也就是系統宕機。今天的任務目標,是建立可靠的魔法陣,為未來的高階魔法奠定穩固基礎。


基礎設施的魔法組件

七大核心組件

  1. FastAPI (API 層)
    FastAPI 就像魔法學院的講師,負責把學生的意圖(請求)翻譯成魔法咒語(程式指令),再把結果(回應)送回來。非同步處理與 Pydantic 驗證,確保每個咒語都是正確施法。
  2. PostgreSQL (關聯式資料庫)
    資料庫是魔法書庫,存放所有知識:論文 metadata、使用者資訊、任務狀態。JSONB 支援半結構化資料,索引就像魔法卷軸,翻書速度瞬間加倍。
  3. Qdrant (向量資料庫)
    Qdrant 是魔法寶石庫,存放每個魔法向量。想找相似魔法?用相似度檢索即可,快速找到最相關咒語或素材。
  4. Ollama / LLM (推理服務)
    這些大型語言模型是高階魔法師,負責生成文本、回答問題。Ollama 可在本地執行,避免魔法外泄。不同模型就像不同學派的魔法師,各有專長。
  5. Docker Compose (容器編排)
    Docker Compose 是魔法學院的校長,安排每個課程(服務)的教室(容器),確保魔法師(服務)各司其職。管理依賴、啟停與環境隔離,讓開發、測試與部署流程更順暢。
  6. Celery (任務佇列)
    Celery 是魔法學院的後勤助教,悄悄在後台完成每日任務。學生們專心施法,Celery 確保每個咒語都能被正確執行,即使老師忙得不可開交,也不會漏掉任何任務。
  7. Prefect (工作流 Orchestrator)
    Prefect 就像魔法課程的總管,安排每日課程順序。它能追蹤每個流程,若有人出錯,會自動重試或提醒,確保整個流程順暢。

設計魔法思維

  • 模組化:API、商業邏輯、資料存取分層,降低耦合
  • 可靠性:先保證基礎服務穩定,再加 AI 模型
  • 觀測性:log、tracing、任務監控
  • 自動化:減少人工操作,避免「works on my machine」問題
  • 可擴展性:支援更多數據與併發

實務應用:工程師的魔法實戰

  • FastAPI 提供統一 API 入口
  • PostgreSQL 存儲 metadata
  • Qdrant 提供相似度檢索
  • Ollama 處理文本生成
  • Prefect 管控流程依賴
  • Celery 處理背景任務

小結

今天,我完成了基礎魔法課的考試。七大元素的魔法陣完整啟動,系統穩定運行,API 可呼叫,資料可存取,向量檢索精準,LLM 順暢生成。
明天,我將探索 實務上的魔法編排——Docker compose 的冒險,看看魔法學院的秘密實驗室還藏著什麼挑戰 🧙‍♂️✨。


上一篇
Day 9|Email Pipeline 技術拆解(下) - 打造訂閱系統
下一篇
Day 11|Infra | 容器魔法:Docker Compose 讓服務共舞 實戰篇
系列文
論文流浪記:我與AI 探索工具、組合流程、挑戰完整平台13
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言