停止支付 OpenAI 稅:新興的開源 AI Agent 智能體全景技術(shù)棧 原創(chuàng)
一套開源模型和工具,使任何開發(fā)者都能構(gòu)建最先進(jìn)的 AI Agent 智能體應(yīng)用程序。
如果我們能回到過去,告訴軟件工程師他們的應(yīng)用程序?qū)⒂缮衩氐?AI Agent 智能體驅(qū)動,我們對它的內(nèi)部運(yùn)作一無所知,并且他們?yōu)榱梭w驗的便利性,將最敏感的數(shù)據(jù)交給第三方,他們可能會搖頭表示不相信。但現(xiàn)在的我們就是這樣。
如今,全世界的開發(fā)者都在圍繞 AI Agent 智能體重新想象他們的應(yīng)用程序,而這默認(rèn)意味著將專有的大語言模型(LLMs)集成到每個方面。雖然像OpenAI 和 Anthropic 這樣的專有 LLMs 點(diǎn)燃了 AI Agent 智能體革命,但它們也存在重大缺陷:令人望而卻步的成本、數(shù)據(jù)隱私問題、供應(yīng)商鎖定以及缺乏可定制性。最初,為了革命性的能力而犧牲性能和控制似乎是一筆值得做的交易,但現(xiàn)在許多開發(fā)者希望有另一種方式。
但是革命有一種使曾經(jīng)專屬的東西民主化的方式。雖然最初的 AI Agent 智能體熱點(diǎn)聚焦于專有模型,但真正的革命卻是開源 LLMs 作為一種可行的替代方案,像 OpenAI 這樣的專有模型一樣飛速崛起。開源 AI Agent 智能體工具的創(chuàng)新也悄然爆發(fā),這些工具使開發(fā)者能夠利用開源 LLMs 增強(qiáng)的推理能力,并將其轉(zhuǎn)化為有用的應(yīng)用程序——從模型部署和托管工具到數(shù)據(jù)存儲和檢索,再到前端和后端網(wǎng)絡(luò)框架。
為了幫助您進(jìn)入這個新領(lǐng)域,并根據(jù)與數(shù)百名開發(fā)者和其他 AI Agent 智能體工具構(gòu)建者的對話,我們分享了我們對“簡易模式”開源 AI Agent 智能體堆棧的選擇——最適合構(gòu)建 AI Agent 智能體應(yīng)用程序的開發(fā)者友好的模型和工具。以下是堆棧組件如何協(xié)同工作以賦予開發(fā)者權(quán)力并重塑 AI 未來的介紹:
這套開源的 AI Agent 智能體工具套件將部署、隱私和性能的完全控制權(quán)交還給開發(fā)者,而且不犧牲應(yīng)用程序的智能。開發(fā)者現(xiàn)在有了構(gòu)建和部署 AI Agent 智能體解決方案的工具,無論他們想以何種方式——本地、云端或邊緣計算。他們保留了對數(shù)據(jù)的100%控制權(quán),不必?fù)?dān)心“可信賴”的第三方可能會如何處理潛在敏感信息。這不僅僅是一個技術(shù)上的轉(zhuǎn)變;這是一個文化上的轉(zhuǎn)變,標(biāo)志著回歸開發(fā)者自主和創(chuàng)新的核心價值觀。
這就是開源 AI Agent 智能體堆棧的承諾——一套使任何開發(fā)者都能構(gòu)建最先進(jìn)的 AI Agent 智能體應(yīng)用程序的模型和工具。這不僅僅是一套技術(shù);這是朝著讓每個開發(fā)者都能接觸創(chuàng)新邁出的一步。
1、LLMs:開源大模型
一套頂級的開源免費(fèi)大語言模型(LLMs),與 OpenAI、Anthropic 和Google 的專有大模型相匹敵。這些包括來自 Meta 的 Llama 3.3,Mistral 模型家族,Qwen 模型家族,來自微軟的 Phi 3,以及 DeepMind 的 Gemma 2。
開源大語言模型正在民主化 AI Agent 智能體的前沿。像來自 Meta 的 Llama 3 家族,Mistral 7B 和 Pixtral 12B,來自阿里云的 Qwen 2.5,來自微軟的Phi 3,以及來自 DeepMind 的 Gemma 2 等大模型可以免費(fèi)下載和使用,任何擁有足夠硬件資源的開發(fā)者都可以運(yùn)行這些模型。
這些開源模型與專有解決方案競爭,提供以下優(yōu)勢:
第一、更大的數(shù)據(jù)控制權(quán):使用開源模型可以保持所有數(shù)據(jù)的私密性,消除對第三方的依賴,并為開發(fā)者提供更大的安全性和合規(guī)性保障。
第二、具有競爭力的推理性能:開源模型在 MMLU、HumanEval 和 MATH Reasoning 等基準(zhǔn)測試中越來越具有競爭力,表明開源模型與專有模型在推理能力上的差距正在縮小。
第三、部署的靈活性和可定制性:您可以通過自行微調(diào)或訪問公開可用的模型微調(diào)和變體,為特定用例適應(yīng)模型,而無需受供應(yīng)商限制。
第四、小型模型的效率和可擴(kuò)展性:較小的開源模型通常需要較少的計算能力,這使得它們在成本效益上更優(yōu),且在資源受限的設(shè)備或環(huán)境中更容易部署,同時在特定任務(wù)上仍能提供強(qiáng)大的性能。
2、嵌入模型:開源嵌入模型
一套頂級的開源嵌入模型。這些包括:Nomic,來自 BAAI 的 BGE,Sentence Transformers 家族,以及 Jina AI 的模型等。
向量嵌入在現(xiàn)代 AI Agent 智能體應(yīng)用程序中非常有用。它們?yōu)樗阉骱?RAG(檢索增強(qiáng)生成)功能提供支持,使 LLM 應(yīng)用程序能夠以更加扎實(shí)、上下文相關(guān)的答案進(jìn)行響應(yīng)。
就像在開源 LLMs 中一樣,開源嵌入模型在與專有解決方案(比如:OpenAI 的 text-embedding-3 模型家族和 Cohere 的 embed-multilingual-v3.0)的競爭中取得了重大進(jìn)展。領(lǐng)先的開源嵌入模型包括:
第一、Sentence Transformers / SBERT:開源嵌入模型家族,具有各種大小和專業(yè)化,從輕量級的 all-minilm 到多語言模型。
第二、Nomic:Nomic Embed Text V1.5 支持可變嵌入大?。?68, 512, 256, 128, 64)并在檢索、相似性、聚類和分類任務(wù)上具有專長。它可以處理多達(dá)8,192個令牌的序列,并為文本和圖像數(shù)據(jù)提供多模態(tài)能力。
第三、BGE (BAAI):BGE(BAAI 通用嵌入)模型將文本映射到密集向量,用于檢索、分類和語義搜索任務(wù)。最新的 BGE-M3 模型支持超過100種語言,并能處理多達(dá)8,192個令牌的文檔。它具有多功能性(密集檢索、多向量檢索、稀疏檢索)能力。
第四、Jina AI:Jina AI 的 jina-embeddings-v3 是一個擁有5.7億參數(shù)的模型,支持89種語言,在30種核心語言上表現(xiàn)出色。它具有8,192個令牌的輸入長度,可配置的輸出維度高達(dá)1,024,并在查詢-文檔檢索、聚類、分類和文本匹配方面具有專業(yè)能力。
3、模型的訪問和部署:Ollama
Ollama 已經(jīng)成為開發(fā)者訪問和構(gòu)建開源 LLMs 和嵌入模型的首選工具。
部署 AI Agent 智能體模型曾經(jīng)就像試圖從你的車庫發(fā)射航天飛機(jī)一樣。它需要一系列令人望而生畏的專業(yè)知識:博士團(tuán)隊、復(fù)雜的基礎(chǔ)設(shè)施,以及會讓大多數(shù)組織崩潰的資源。Ollama 徹底改變了游戲規(guī)則,允許開發(fā)者通過一個命令就能運(yùn)行最先進(jìn)的模型:
ollama run llama3.2
通過提供一個工具訪問數(shù)百個 LLMs 和嵌入模型,抽象掉基礎(chǔ)設(shè)施挑戰(zhàn),并簡化部署流程,Ollama 將曾經(jīng)看似不可逾越的事情變成了無縫且直觀的過程。它賦予開發(fā)者專注于解決現(xiàn)實(shí)世界問題的能力,無論是在個人項目還是企業(yè)項目中,都在創(chuàng)新和實(shí)用性之間架起了橋梁。
借助開源模型和 Ollama 的簡潔性,開發(fā)者獲得了前所未有的自由,可以按照他們選擇的方式部署 AI Agent 智能體。以一個案例為例:上面開源 LLMs 和嵌入模型部分提到的所有模型都可以通過 Ollama 獲得!
4、數(shù)據(jù)存儲和檢索:PostgreSQL, pgvector 和 pgai
PostgreSQL,這個開源數(shù)據(jù)庫及其面向 AI Agent 智能體的開源擴(kuò)展生態(tài)系統(tǒng),比如:pgvector 和 pgai,是希望構(gòu)建 AI Agent 智能體應(yīng)用程序的開發(fā)者的理想選擇。
良好的數(shù)據(jù)和高效的檢索是 AI Agent 智能體中 RAG 革命的核心,使開發(fā)者能夠創(chuàng)建 LLM 應(yīng)用程序,為用戶提供高度準(zhǔn)確、基于上下文、無幻覺的答案。
然而,最佳的 AI Agent 智能體應(yīng)用程序不僅僅使用向量數(shù)據(jù)庫——它們涉及非結(jié)構(gòu)化、結(jié)構(gòu)化以及應(yīng)用數(shù)據(jù)的結(jié)合,以及在大型數(shù)據(jù)集上使用復(fù)雜過濾器進(jìn)行向量搜索。這樣的檢索系統(tǒng)確保您的用戶獲得最相關(guān)的上下文答案,但構(gòu)建它們可能很復(fù)雜,在某些情況下,可能需要多個數(shù)據(jù)庫系統(tǒng)和自定義數(shù)據(jù)管道:
您需要存儲文檔和其他源數(shù)據(jù)以創(chuàng)建要搜索的知識庫。
您需要一種預(yù)處理這些數(shù)據(jù)的方法,從中創(chuàng)建向量嵌入,并隨著知識庫的變化保持這些嵌入同步。
您還需要能夠存儲和搜索向量嵌入,通常是在大規(guī)模下,并且需要在元數(shù)據(jù)和其他用戶數(shù)據(jù)上應(yīng)用復(fù)雜的過濾器。更不用說處理多租戶、權(quán)限和訪問控制、高可用性等實(shí)際關(guān)注點(diǎn)。
好消息是,世界上最受歡迎的數(shù)據(jù)庫 PostgreSQL 正在從一個值得信賴的關(guān)系數(shù)據(jù)庫轉(zhuǎn)變?yōu)?strong>支持結(jié)構(gòu)化數(shù)據(jù)、非結(jié)構(gòu)化數(shù)據(jù)和快速、準(zhǔn)確的向量搜索的 AI Agent 智能體應(yīng)用程序的數(shù)據(jù)層。
PostgreSQL 是開源的,并且有一個開源擴(kuò)展生態(tài)系統(tǒng),使它成為支持 AI Agent 智能體應(yīng)用程序存儲和檢索的首選數(shù)據(jù)庫:
第一、向量搜索:像 pgvector 和 pgvectorscale 這樣的擴(kuò)展支持向量存儲和相似性搜索,其性能超過了專業(yè)的向量數(shù)據(jù)庫。
第二、易用性:像 pgai 這樣的擴(kuò)展簡化了在 PostgreSQL 中訪問 LLMs 以對數(shù)據(jù)進(jìn)行推理,而像 pgai Vectorizer 這樣的功能使嵌入創(chuàng)建和同步像傳統(tǒng)數(shù)據(jù)庫索引一樣直觀。
第三、集成和生態(tài)系統(tǒng):Pgai 對 Ollama 的支持使得輕松訪問最先進(jìn)的開源模型進(jìn)行嵌入創(chuàng)建或推理變得簡單。
示例:使用幾行 SQL 執(zhí)行語義搜索:
CREATE TABLE IF NOT EXISTS blog (
id SERIAL PRIMARY KEY,
title TEXT,
authors TEXT,
contents TEXT,
metadata JSONB
);
INSERT INTO blog (title, authors, contents, metadata) VALUES ('The Future of Artificial Intelligence', 'Dr. Alan Turing', 'As we look towards the future, artificial intelligence continues to evolve...', '{"tags": ["AI", "technology", "future"], "read_time": 12, "published_date": "2024-04-01"}');
--insert more data here
--Vectorize data in the contents column using models from Ollama
SELECT ai.create_vectorizer(
'blog'::regclass,
destination => 'blog_contents_embeddings',
embedding => ai.embedding_ollama('nomic-embed-text', 768),
chunking =>
ai.chunking_recursive_character_text_splitter('contents')
);
-- Perform semantic search
SELECT
b.title,
b.contents,
be.chunk,
be.embedding <=> ai.ollama_embed('nomic-embed-text', 'What comes next in AI') as distance
FROM blog_contents_embeddings be
JOIN blog b ON b.id = be.id
ORDER BY distance
LIMIT 3;
5、后端:FastAPI
你的 AI Agent 智能體應(yīng)用程序后端將智能模型連接到面向用戶的應(yīng)用程序,而 FastAPI 已經(jīng)成為開發(fā)者的首選框架。它提供以下功能:
第一、速度和簡潔性:異步編程確保了低延遲和高吞吐量。
第二、開發(fā)者友好的設(shè)計:自動 API 文檔和類型提示使得快速迭代成為可能。
第三、無縫集成:非常適合實(shí)時應(yīng)用程序,比如:聊天機(jī)器人、推薦引擎和預(yù)測分析。
FastAPI 消除了后端瓶頸,允許開發(fā)者輕松地將 AI Agent 智能體應(yīng)用程序從原型擴(kuò)展到生產(chǎn)。想象一下,部署一個由開源模型驅(qū)動的推薦系統(tǒng)。FastAPI 的異步功能確保用戶請求能夠即時處理,而其自動文檔保持了協(xié)作的無縫性。這些特性共同將復(fù)雜的后端工作流程轉(zhuǎn)變?yōu)榭晒芾?、高效的系統(tǒng)。
6、前端:NextJS
AI Agent 智能體應(yīng)用的前端需要處理復(fù)雜的狀態(tài)管理和動態(tài)更新,而 NextJS已經(jīng)成為生產(chǎn)部署中首選的 React 框架。
它提供了一系列有用的功能:
第一、混合渲染:服務(wù)器端渲染(SSR)和客戶端靜態(tài)渲染為每個頁面提供了靈活的渲染和緩存選項。Next.js 提供了強(qiáng)大的服務(wù)器端功能,這對于 AI Agent 智能體應(yīng)用尤其有益??蚣艿?SSR 有助于高效地管理計算密集型的 AI 任務(wù),同時減輕客戶端設(shè)備的負(fù)載。這在處理復(fù)雜的 AI 模型交互和數(shù)據(jù)處理時尤其重要。
第二、實(shí)時流和更新:它無縫集成各種實(shí)時解決方案,支持流暢的動態(tài)交互,這對于 AI 聊天和其他顯示動態(tài)內(nèi)容的 UI 特別重要。
第三、與 Vercel AI SDK 集成:Vercel AI SDK(也是開源的)專為使用Next.js 創(chuàng)建 AI Agent 智能體應(yīng)用而構(gòu)建,并支持客戶端和服務(wù)器端的 AI 功能。它與 Ollama 集成得很好,并提供了處理 AI 模型推理、流式響應(yīng)和與提供商連接的實(shí)用工具。
7、缺失的一環(huán):評估和驗證
雖然開源 AI Agent 智能體堆棧已經(jīng)成熟,但評估仍然是一個關(guān)鍵挑戰(zhàn)。像LangFuse 和 Arize 的 Phoenix 這樣的項目提供了希望,但生態(tài)系統(tǒng)仍然缺乏一個全面的框架來測試和驗證 AI 模型。這個空白代表了一個創(chuàng)新的機(jī)會——社區(qū)有機(jī)會定義可靠、現(xiàn)實(shí)世界的 AI Agent 智能體應(yīng)用。
為什么這很重要:與傳統(tǒng)應(yīng)用不同,大語言模型(LLMs)是非確定性的,這意味著如果你在沒有評估和驗證的情況下部署一個 AI Agent 智能體應(yīng)用,你就無法判斷你的應(yīng)用的表現(xiàn)。一個健壯的評估系統(tǒng)對于確保你的應(yīng)用現(xiàn)在以及隨著系統(tǒng)發(fā)展都能表現(xiàn)良好至關(guān)重要。
我們應(yīng)該說,鑒于開源社區(qū)在創(chuàng)建可觀察性和監(jiān)控工具方面的強(qiáng)大記錄,我們覺得這種能力上的空白特別引人入勝。我們認(rèn)為,總的來說,評估生態(tài)系統(tǒng)還處于起步階段,正確的做法尚未被發(fā)現(xiàn)。我們懷疑當(dāng)前的系統(tǒng)過于一刀切,低估了跨項目評估需求的多樣性。需要的是一種類似于 DevOps 中 GitOps 革命的視角轉(zhuǎn)變,這也是為什么我們特別興奮地看到在這個領(lǐng)域開源驅(qū)動的創(chuàng)新被釋放出來。
8、創(chuàng)新開放獲?。耗鷮?gòu)建什么?
開源 AI Agent 智能體堆棧不僅僅是一系列工具的集合——它是一場運(yùn)動。開發(fā)者現(xiàn)在可以自由地構(gòu)建、創(chuàng)新和控制他們的 AI Agent 智能體應(yīng)用程序,無需擔(dān)心供應(yīng)商鎖定或隱私問題。
通過開源 AI,您可以獲得:
第一、自由部署在任何地方——本地、云端或邊緣。
第二、對數(shù)據(jù)的完全控制——不與第三方共享。
第三、根據(jù)您的需求進(jìn)行定制。
第四、與全球社區(qū)合作。
這不僅僅是關(guān)于技術(shù);它是關(guān)于創(chuàng)造屬于您的東西。無論您是部署模型、構(gòu)建RAG 應(yīng)用還是推出新的 AI Agent 智能體服務(wù),開源堆棧都讓您按照自己的方式去做。
本文轉(zhuǎn)載自公眾號玄姐聊AGI 作者:玄姐
