主题
- #AI
- #LLM
- #RAG
- #Multi-Agent
- #Function Call
撰写: 2025-03-04
撰写: 2025-03-04 21:53
近來業界最熱門的關鍵字,正是LLM。
像Claude 3.5、Grok3這樣的模型持續出現,
像뤼튼(뤼튼)或Zeta這樣的活用LLM的服務也越來越多。
身為開發者,總有一天我們也必須將LLM應用到我們的服務中,
為了到時候不至於手忙腳亂,最好還是先掌握基本概念!
因此,我整理了一些重要的關鍵字。
LLM(大型語言模型)簡單來說就是
"輸入文字,理解後再以文字回覆的AI"。
GPT-4o、Claude 3、Grok3等模型就是代表。
近來的LLM不只是單純生成句子,
還能進行編碼、影像分析、數學運算等各種工作。
現在已經不是開發者單純使用AI作為工具的時代了吧。
LLM不只是單純回覆,
"呼叫必要的工具來協助工作!"也可以這樣要求。
例如,
但是LLM並不會直接呼叫API,
實際的呼叫還是得由我們用程式碼來實現ㅜㅜ
LLM再聰明,
也只能根據已學習的資料來生成答案。
那麼最新的新聞或內部文件等資訊要如何取得呢?
這時候就需要RAG了。
這樣LLM就能反映最新的資訊了。
也就是說,在LLM回答之前,先輸入回答所需的資料,然後再根據這些資料進行摘要或回答,
所有這些都稱為RAG。
在LLM模型中,會看到8B、70B等數字。
這是指模型學習的參數(Parameter)數量。
模型越大越精確,但速度和成本可能會成為負擔。
現在的趨勢是善用輕量級模型。
模型越龐大,回應速度越慢,
因此最終使用者的流失率也會提高。
LLM不一定是單獨處理所有事情,
也可以讓多個小型AI(代理)合作。
例如:
這樣分工合作,速度更快,也能得到更精確的答案。
是不是很像公司?有人負責前端…有人負責後端…之類的。
LLM並非總是正確的。
也可能給出錯誤的答案。
因此需要Validation Feedback。
將其自動化,就能建立LLM自我學習的系統。
或者當Function Call或回覆格式已確定時,
如果不符合格式,也可以強制其符合格式。
實際上,要使用OpenAI的GPT-4o來使用Function Call,
可以像下面這樣實現。
🔹TypeScript範例
透過這種方式使用Function Call,
LLM就不只是單純生成文字,
還能執行實際功能,成為**"真正有用的AI"**。
仔細填寫這些Function Call的參數值可能會非常麻煩。
因此,像Vercel ai或LangChain這樣的工具使用zod這個函式庫來
對LLM返回的參數值進行驗證回饋。
這樣就能執行更精確的Function Call。
但是,逐一使用zod為複雜函數的參數值編寫Schema,難免會很麻煩,
開發者可能會覺得"麻煩"。
因此,我推薦使用Agentica這個函式庫。
只需這樣簡短的程式碼,就能將三個類別中的函數和swagger的endpoint
設定為Function Call,並在對話時自動呼叫。
這樣就完成了一個簡單的"聊天機器人代理"。
像這樣,處理LLM、AI的領域正變得越來越容易。
科技的發展真是令人咋舌。
评论0