iT邦幫忙

技術文章

RSS
鐵人賽 AI Engineering DAY 11

[Day 11] 向量資料庫選型:從 Chroma 到 pgvector 到 Milvus

前言 昨天介紹了 Embedding 模型的選型考量,今天要來看向量資料庫(Vector Database)——負責儲存這些向量,並提供快速的相似度搜尋能力的角...

鐵人賽 JavaScript DAY 11

Day11 JavaScript 已經這麼方便了,為什麼還需要 Library?

一、功能都要自己寫!? 前面幾天我們都是使用 JavaScript 本身提供的功能。像是:document.querySelector() 可以找到 HTML、...

鐵人賽 AI Engineering DAY 12

Day 12新人 Onboarding 救星!用 Dify 匯入 README 打造專屬開發環境問答助手

昨天我們快速瀏覽了 Dify 的核心介面,今天我們要直接進入實戰! 在軟體開發團隊中,最讓資深工程師頭痛的往往不是寫程式,而是每當有新人加入時,總要花大量時間協...

鐵人賽 Software Development DAY 11

Day 11:臨床追蹤表架構:生命徵象(TPR Sheet)時序資料收集與防呆驗證

前言在綜合醫院病房中,如果走進護理站或翻開病歷夾,最醒目的圖表通常是俗稱「三折單」或「體溫單」的 TPR Sheet(Temperature, Pulse, R...

鐵人賽 AI 自動化 DAY 18

Day 18|Map-Reduce Summarization:把大型 AI 任務拆開來做

我們解決了超長文本無法一次塞入模型的問題,透過 Paragraph-aware Chunking 與 n8n 的 Loop 節點,成功將長文切塊並逐一獲得了多份...

鐵人賽 AI Engineering DAY 30

[Day 30] 用 MCP 把 RAG 交給別人的 AI Agent,我在回給它的文字裡寫錯了四個字|30 天收尾

在今天之前,打這支 API 的只有我自己的 curl。今天沒有實驗,也沒有預測對帳。 兩種使用者 人 模型 入口 /ui/,Vue 3 單頁 m...

鐵人賽 JavaScript DAY 21

Day 21|Object.groupBy:把扁平資料分組成前端可用的結構

摘要 介紹 ES2024 Object.groupBy() 如何將 iterable 分組成前端可用的結構,並釐清它與 Map.groupBy() 的 key...

鐵人賽 IT Operation DAY 11

Day 11|資源放進私有子網,就代表安全了嗎?

前面幾篇整理了 AWS 的治理與身分管理,接下來進入網路設計,開始看另一個問題:哪些來源可以透過網路連到這些資源? 部署應用程式時,常會看到「ALB 放公有子網...

鐵人賽 Vibe Coding DAY 22

Day 22|六個階段怎麼套進 Vibe Coding -10

前面講了開發:Phase 怎麼切、每個 Phase 要注意什麼、做完怎麼看、為什麼要 Commit。到這裡,功能看起來做完了,AI 也可能告訴你測試全部通過。...

鐵人賽 AI Engineering DAY 12

連上API後,怎麼讓 Gemini 開始分析?

昨天成功讓 Java 和 Gemini API 連線,並且先用一句簡單的文字確認 Gemini 可以正常回傳結果。今天的學習目標就是把原本測試用的文字換掉,正式...

Day 19|同一個版本的規則書

「兩個人的規則書,字句一字不差,簽名頁的墨色卻不同。能拿去對質的,從來不是記得多牢,是那一頁誰都改不動的雜湊。」 ——《阿帕契開源審計錄》¹ 卷二·鎖版篇...

鐵人賽 Kubernetes DAY 11

DAY 11

前面建立的資源都放在 default。這次我們另外開一個叫 lab 的命名空間,體驗同名資源如何待在同一個叢集,卻不會互相撞名。 1. 建立 lab 命名空間...

鐵人賽 Software Development DAY 11

Day 11: MessageSource —— 多語系 i18n 與文字訊息管理機制

從 Application-Context 的繼承我們可以知道,Spring 內部的 i18m 是透過 Message-Source 這個介面完成的。Messa...

鐵人賽 AI Engineering DAY 11

Day11 第一次建立圖片分類模型!從 DNN開始

上一篇我們認識了 Neural Network,也知道模型所謂的「學習」,其實就是透過一次又一次的預測與修正,不斷調整內部的 Weight 和 Bias 今天終...

鐵人賽 Claude AI DAY 12

Day 12:worktree 初體驗:同時開發「戰鬥系統」與「劇情系統」的平行分身術(含實測數據)

系列:奇幻塔防開發實錄:用 Claude 打造一款有靈魂的塔防遊戲今日工具:git worktree + Claude Code ×2今日進度:兩個功能分支...

鐵人賽 Build on Google AI DAY 12

Day 12:政府的統計資料,不在你以為的地方

先說清楚這篇的身分 這一篇跟前面十一天不一樣:它不是我的行政工作。 這是我下班後自己做的專案——把幾份公開的政府統計做成可以看的圖表,放在網路上。沒有人交辦,也...

鐵人賽 Vibe Coding DAY 11

Day 11 — Codex 實戰:從單端代碼生成企劃書到前後端完美統合

經過昨天的介紹,我們知道 Codex 具備強大的 Codebase 讀取與邏輯推論能力。今天我們就來分享一個非常實用的高階 AI 協同開發實戰流程:透過「先讀單...

鐵人賽 Software Development DAY 24

Day 24:Middleware 實戰——CSP header 跟業務導流邏輯,兩種輕量 middleware 長什麼樣

前言:Middleware 不是只能做「技術性攔截」 「Middleware 就是驗證登入、檢查權限那種東西吧?」 這是很多人對 middleware 最直覺的...

鐵人賽 Software Development DAY 24

Day 24:時間相依的 Job 怎麼測——用 Carbon::setTestNow() 鎖定測試當下時間

前言 「這支測試昨天明明是綠燈的,今天怎麼突然紅了?」 如果你的測試依賴「現在幾點」來決定行為——例如抓「過去兩天」的資料、判斷某筆紀錄是不是「已經超過一週沒更...

鐵人賽 Software Development DAY 17

Day 17:ThreadPoolExecutor 包 asyncio coroutine——一個混用兩種併發模型的權宜設計

前言:兩種併發模型可以混著用嗎? 昨天講完 asyncio 跟 ThreadPoolExecutor 各自適合的場景,今天要誠實檢視這個系列素材專案裡真實存在的...

鐵人賽 Claude AI DAY 17

Day 17:定規則——純粹提問的情境,要明講「先別動手」

前言:解決 Day 14 的語言模糊性,不能只靠猜 Day 14 講過,「問問題」跟「提請求」在自然語言裡常常長得一樣,這種模糊性沒辦法單靠理解能力變強來消除。...

鐵人賽 AI Engineering DAY 26

Day 26:案例——CLAUDE.md 規則被使用者一次次糾正、逐漸長成現在的樣子

前言:一份規則文件,是設計出來的,還是長出來的? 「CLAUDE.md 這種規則文件,應該是團隊坐下來,一次把所有規矩想清楚、寫完整的吧?」 如果你真的動手寫過...

Day 16 - 書目與學術引用

前言 網址處理完,剩下的是檔案:PDF、Word、HTML、Markdown、純文字,還有兩種書目格式。 把檔案讀進來不夠。書目資料躺在 front matte...

鐵人賽 自我挑戰組 DAY 27

Day 27|Chain of Responsibility (責任鏈模式) 如何利用責任鏈模式打造客訴分流防線

昨天用 State 把訂單的狀態機拆成物件,讓「現在能不能做這件事」交給狀態自己決定 今天要處理的是另一種常見的情境:一個請求進來,不知道最後會是誰處理,只知道...

鐵人賽 Software Development DAY 17

Day 17:Coverage 不是品質——AI 很容易把「覆蓋率高」當成「品質好」的證據

前言:覆蓋率 95%,為什麼還是不敢重構? 「這個模組的測試覆蓋率有 95%,理論上應該很安全,為什麼團隊還是不敢動它?」 上一篇(Day 16)談到「誰來判斷...

鐵人賽 Claude AI DAY 26

Day 26:案例——日誌去重分組鍵設計錯誤,正式環境資料才踩到的坑

前言:本機測試全過,為什麼正式環境還是壞了? 「這段去重邏輯的測試都寫了、也都綠燈,怎麼上線之後還是看到重複記錄?」 Day 24 講過一個去重相關的案例,根因...

鐵人賽 Vibe Coding DAY 26

Day 26:案例——長期未解決的 issue,AI 怎麼幫忙重新評估優先序

前言:不是每個 issue 都該立刻處理,但也不該被遺忘 「這個 issue 開了三、四個月都沒動,是不是不重要?還是只是排不進時間?」 維護一個有真實使用者的...

鐵人賽 自我挑戰組 DAY 0

Day 11:案例——用分批派工的方式查核多篇文章裡的技術主張

前言 「一篇文章裡的技術主張,自己重讀一遍不就查得完了嗎?」 單篇文章確實可以自己重讀查核,但當手上累積到十幾、二十篇文章、每篇都可能包含好幾個可查證的技術主張...

鐵人賽 IT Operation DAY 21

Day 21:請 AI 幫忙寫程式碼,怎麼確保它沒用 CI 矩陣不支援的語法?

前言:AI 寫的程式碼,會不會用了 CI 不支援的新語法? 如果現在請 AI 幫 omnipay-ecpay 加一個新功能,AI 很有可能會很自然地寫出 mat...

鐵人賽 Software Development DAY 12

Day 12:案例拆解——Event/Listener 機制解決了不存在的問題

前言:「事件驅動架構,不是為了將來的擴充性嗎?」 「先把事件機制建好,以後要加新功能只要多掛一個 Listener」——這句話你可能自己也講過,聽起來完全合理:...