iT邦幫忙

學習筆記相關文章
共有 624 則文章

技術 【演算法新手村】[初階]筆記06 - 差分(二維)

上一篇:【演算法新手村】[初階]筆記06 - 差分(一維) 同樣引入一個問題,給定一個 N × M 的矩陣,有 Q 次操作,每次將左上 (x1, y1) 到右...

技術 【演算法新手村】[初階]筆記06 - 差分(一維)

前一篇:【演算法新手村】[初階]筆記05 - 前綴和(二維) 前面兩篇都是前綴和,這篇來講講跟前面兩組性質是有點像(都是在討論怎麼優化對數組的某個大量操作),也...

技術 【演算法新手村】[初階]筆記05 - 前綴和(二維)

書接上回:【演算法新手村】[初階]筆記04 - 前綴和(一維) 接著上篇一維前綴和的概念,我們這篇進入二維空間。當資料從一條線變成一個平面(矩陣),我們該如何...

技術 【演算法新手村】[初階]筆記04 - 前綴和(一維)

首先我們要引入一個問題,我要求一個陣列中從頭到某一項的和要怎麼辦呢? 這邊默認第幾項都是口語上的用法,也就是首項是第 1 項 你會說簡單啊,直接遍歷陣列不...

技術 【演算法新手村】[初階]筆記03 - 二分練習題

書接上回:【演算法新手村】[初階]筆記02 - 初識二分之常見問題 二分答案會有點困難,可以多思考,只要能掌握那怕毛皮,那你也是終於"略懂&quot...

技術 【演算法新手村】[初階]筆記02 - 初識二分之常見問題

前置知識:【演算法新手村】[初階]筆記01 - 初識二分之二分搜尋配合使用效果更佳喔XD 二分搜尋的題目有不少,這邊講一些簡單的(難的跳過,請新手上路者放心食...

技術 【演算法新手村】筆記01 - 初識二分之二分搜尋

作為大多數人一開始學程式就學到的搜尋演算法,不過多引入介紹,這邊主要提一些基本概念 線性搜尋法 Linear Search 又稱循序搜尋法,這是最直觀的方法(把...

技術 DAY30:多模態資料處理實作

本次實作將僅展示有關功能實現部份的程式碼及輸出結果~ 從圖片擷取文字(Image to Text)這裡我們將使用Groq API實作圖片中文字辨識功能。將圖...

技術 DAY29:認識多模態資料處理

什麼是多模態資料處理(Multimodal Data Processing)?模態(modality)指的是資料的表現形式或感官來源。所以多模態資料處理就是同時...

技術 DAY28:如何設計Defensive Prompt

為什麼要做Defensive Prompt?我們在前兩篇有講到,LLM容易被誘導(jailbreak / prompt injection)後,在不該回答的情況...

技術 DAY27:如何讓模型具備惡意抵抗的能力(下)

為什麼會發生Jailbreak? 造成Jailbreak攻擊成功的原因主要有兩個: 模型在訓練階段沒有接觸足夠的惡意樣本,導致不懂得分辨能答與不能答的邊界。...

技術 DAY26:如何讓模型具備惡意抵抗的能力(上 )

當我們在使用LLM時,除了希望它能夠理解與生成內容,更重要的是它能抵禦Malicious Attack(惡意攻擊)。 Malicious Attack是指什麼...

技術 DAY25:模型的評估(下)

上一篇我們提到,當我們想判斷評估模型回答得好不好時,可以利用Benchmark來觀察模型獲得的Evaluation score。不過要注意的是,分數雖然是量化表...

技術 DAY24:模型的評估(上)

在AI模型開發的過程中,我們不只要讓模型會說話,更要知道它說得好不好。這就牽涉到模型的Evaluation(評估)。而評估的核心,就是透過一系列標準化測試來驗證...

技術 DAY23:模型的選擇方法

這一篇主要要介紹,如何在Hugging Face上挑選適合自己應用的開源AI模型。面對上千個不同版本的Llama、Mistral、Gemma、Phi等等模型,我...

技術 DAY22:FAISS實作

安裝必要套件 初始化Embedding模型與文件 進行語意查詢與篩選 輸出結果可以看到,雖然我們的查詢是中文句子,FAISS仍能根據語意比對出中英文食物...

技術 DAY21:認識FAISS

FAISS(Facebook AI Similarity Search)是一個用來快速搜尋相似向量的資料庫系統。由Meta(Facebook)開發,能在數百萬甚...

技術 DAY20:認識Reranker與實作

在RAG系統裡,Embedding是分開編碼(Bi-Encoder),是靠向量相似度找出語意接近的文件。但這種方法只會算查詢與每個句子的整體語意相似度,並不會精...

技術 DAY19:Embedding實作

前一篇我們認識了Embedding是什麼,接下來我們要實際把文字轉成向量,並且用語意相似度進行搜尋,看看電腦是否真的能理解文字的意思! 安裝LangChain...

技術 DAY18:認識Embedding

Embedding (向量化)是把文字轉換成電腦能理解的數字向量的過程。 為什麼我們需要Embedding?因為電腦只懂數字,不懂文字。假如要讓AI判斷以下兩...

技術 DAY17:認識Chunking並實作

Chunking(文字切片)指的是把一大段文字依照一定規則切成小段。 在RAG系統中,我們常會放入很長的文件,例如一整本手冊、醫療報告、課程講義……但是LLM...

技術 DAY16:RAG基本概念

RAG(Retrieval-Augmented Generation)是檢索式生成模型的縮寫。它的目的,是讓LLM能夠查資料與引用外部知識來回答問題,解決模型忘...

技術 DAY15:Agents實作

在這篇中,我們要實際操作LangChain的Agent,並且讓模型同時具備搜尋與運算能力。這裡我們會使用:ChatOllama作為LLM,DuckDuckGo搜...

技術 DAY14:認識Agents

Agent(智能代理)就是讓模型根據指令,自動決定要使用哪個工具、查什麼資料、做什麼動作,最後再回覆結果。 舉例來說:如果問「幫我查今天台北的天氣,再幫我換算...

技術 DAY13:認識LangChain

LangChain是一個開源框架,能讓我們更容易使用LLM來開發應用。它的核心目標是讓你可以把模型、資料、工具整合起來,形成一個可互動的智慧系統。可以想像成是A...

技術 DAY12:用pipeline來做文字接龍

前面我們都是使用model.generate來做文字接龍,雖然這樣能掌握完整流程(例如token編碼、解碼、Top-k抽樣等),但在實務上,如果只是要快速建立聊...

技術 DAY11:多輪對話

多輪對話(Multi-turn Conversation):是多個一輪對話連續組成,並且彼此有上下文關聯。 實作可持續聊天的多輪對話讓模型做多輪對話的關鍵就是...

技術 DAY10:一輪對話

一輪對話(One-turn Conversation):使用者輸入一個prompt,AI回覆一句話。這是最基本的互動模式,沒有上下文記憶,也就是說,每次問問題,...

技術 DAY9:讓LLM做文字接龍(下)

在前一篇中,我們學會了讓模型依照prompt一次接出多個字,但那樣的生成是固定的,模型永遠會選機率最高的那個token,接下來我們來改變生成策略,讓模型依照機率...

技術 DAY8:讓LLM做文字接龍(上)

在前一篇,我們認識並學會了使用Chat Template讓模型能理解誰在說話。但模型要真正開口說話,就需要進入生成階段。這一篇,我們要來了解模型是如何一步一步預...