融匯11款A(yù)I工具構(gòu)建完美應(yīng)用 原創(chuàng)
上篇:??融匯14款A(yù)I工具構(gòu)建完美應(yīng)用??
如您所見,人工智能(AI)應(yīng)用在近年來得到了長足的發(fā)展。從語音助手到軟件開發(fā),人工智能已在我們的生活中無處不在,并得到了廣泛應(yīng)用。下面,我將為您介紹25個開源項目,您可以用它們來制作自己的人工智能應(yīng)用程序,并使其更上一層樓。
1.Taipy -將數(shù)據(jù)和人工智能算法轉(zhuǎn)化為可投入生產(chǎn)網(wǎng)絡(luò)的應(yīng)用
作為一個開源的Python庫,Taipy(https://github.com/Avaiga/taipy)提供了假設(shè)分析、智能管道執(zhí)行、內(nèi)置調(diào)度和部署工具等功能,可用于輕松地進(jìn)行端到端的應(yīng)用開發(fā)。例如,它可以為基于Python的應(yīng)用,創(chuàng)建圖形化的用戶界面,并改進(jìn)數(shù)據(jù)流的管理。同時,您可以用其繪制數(shù)據(jù)集的圖表,并使用類似圖形化用戶界面的滑塊,讓用戶可以選擇使用其他實用的功能,來處理數(shù)據(jù)。
在不犧牲性能的情況下,Taipy提供了友好的用戶界面、高效的數(shù)據(jù)處理能力、以及良好的易用性。您只需通過命令:pip install taipy,來完成安裝。同時,Taipy也能利用各種代碼庫,來簡化開發(fā)并增強(qiáng)功能。
目前,Taipy發(fā)布了最新版本為v3.1(https://docs.taipy.io/en/latest/relnotes/)。該版本的多功能部件對象實現(xiàn)了HTML或Python對象的可視化。這意味著Folium(https://python-visualization.github.io/folium/latest/)、Bokeh(https://bokeh.org/)、Vega-Altair(https://altair-viz.github.io/)和Matplotlib(https://matplotlib.org/)等代碼庫現(xiàn)在都可以被用于可視化。同時,它提供了對Plotly Python(https://plotly.com/python/)的原生支持,使得繪制圖表變得更容易。
在利用分布式計算提高性能的同時,Taipy及其所有依賴項都能與Python 3.12完全兼容,以便用戶在Taipy的項目中使用最新的工具和代碼庫。請閱讀文檔-- https://docs.taipy.io/en/latest/,以獲得更多介紹。
下圖展示的是其聊天界面(https://docs.taipy.io/en/release-3.1/gallery/llm/5_chatbot/)。該演示使用了OpenAI的GPT-4 API,生成對消息的回復(fù)。您可以通過更改代碼,以使用其他的API或模型。
下圖展示的是由Taipy團(tuán)隊提供的、可用于加速Taipy應(yīng)用構(gòu)建的、另一個名為Taipy Studio(https://docs.taipy.io/en/latest/manuals/studio/)的VSCode擴(kuò)展功能。
當(dāng)然,您也可以為自己的應(yīng)用選用Taipy的云部署。如果您想了解其代碼庫結(jié)構(gòu),可以閱讀HuggingFace的《使用Taipy創(chuàng)建Python語言的大模型Web界面(https://huggingface.co/blog/Alex1337/create-a-web-interface-for-your-llm-in-python)》一文。
在教程資源方面,Taipy提供了10多個帶有代碼和文檔的演示教程,可供您學(xué)習(xí)。例如:
- Covid儀表板(https://covid-dashboard.taipy.cloud/Country)
- Tweet的生成(https://tweet-generation.taipy.cloud/)
- 數(shù)據(jù)可視化(https://production-planning.taipy.cloud/Data-Visualization)
- 實時人臉識別(https://face-recognition.taipy.cloud/)
目前,Taipy的v3版在GitHub上有七千多顆星,且在不斷改進(jìn)中。
2.Supabase - Firebase的開源替代品
要構(gòu)建人工智能應(yīng)用,您往往需要一個后臺,而Supabase(https://github.com/supabase/supabase)正是可以滿足此需求的優(yōu)秀后臺服務(wù)提供商。
通過參考相關(guān)文檔(https://supabase.com/docs),您可以從如下npm命令(Next.js)開始安裝Supabase:
npx create-next-app -e with-supabase
如下代碼段則展示了如何進(jìn)行CRUD操作:
import { createClient } from '@supabase/supabase-js'
// Initialize
const supabaseUrl = 'https://chat-room.supabase.co'
const supabaseKey = 'public-anon-key'
const supabase = createClient(supabaseUrl, supabaseKey)
// Create a new chat room
const newRoom = await supabase
.from('rooms')
.insert({ name: 'Supabase Fan Club', public: true })
// Get public rooms and their messages
const publicRooms = await supabase
.from('rooms')
.select(`
name,
messages ( text )
`)
.eq('public', true)
// Update multiple users
const updatedUsers = await supabase
.from('users')
.eq('account_type', 'paid')
.update({ highlight_color: 'gold' })
您可以利用Supabase的Auth、realtime、Edge函數(shù)、以及存儲等功能,來構(gòu)建一個超快的應(yīng)用。同時,Supabase也提供了多個啟動工具包,如:帶有LangChain的Next.js(https://github.com/langchain-ai/langchain-nextjs-template)、帶有Next.js的Stripe(https://github.com/vercel/nextjs-subscription-payments)、以及AI聊天機(jī)器人(https://github.com/supabase-community/vercel-ai-chatbot)。
目前,Supabase在GitHub上有六萬三千多顆星,以及大量貢獻(xiàn)者。而且,他們的提交次數(shù)達(dá)兩萬七千多次。
3.Chatwoot -即時聊天、電子郵件支持、全方位渠道服務(wù)臺,并擁有自己的數(shù)據(jù)
Chatwoot(https://github.com/chatwoot/chatwoot)可與電子郵件、網(wǎng)站即時聊天、Facebook、Twitter、WhatsApp、Instagram以及Line等常用客戶溝通渠道連接,以實現(xiàn)一站式多社交應(yīng)用的客戶體驗。如下圖所示,這對于想圍繞著某個人工智能應(yīng)用來建立用戶社區(qū)的需求,顯得十分必要。
您可以通過閱讀文檔(https://www.chatwoot.com/docs/product),了解各種集成選項,從而更輕松地管理整個生態(tài)系統(tǒng)。其文檔非常詳細(xì),每個集成都有相應(yīng)的快照示例,例如:WhatsApp頻道就帶有WhatsApp Cloud API。因此,您可以按需將其一鍵部署到Heroku或自行托管。
目前,Chatwoot發(fā)布的是v3.6版,在GitHub上擁有一萬八千多顆星。
4.CopilotKit -在數(shù)小時內(nèi)為您的產(chǎn)品提供AI Copilot
CopilotKit(https://github.com/CopilotKit/CopilotKit)可以讓我們使用兩個React組件,將各種關(guān)鍵性的人工智能功能集成到React應(yīng)用中。同時,它也提供了內(nèi)置(但完全可定制)的Copilot原生用戶體驗組件,如:<CopilotKit />、<CopilotPopup />、<CopilotSidebar/>、以及<CopilotTextarea/>等。
通過閱讀相關(guān)文檔(https://docs.copilotkit.ai/getting-started/quickstart-textarea),您可以從使用如下npm命令開始安裝Copilot:
npm i @copilotkit/react-core @copilotkit/react-ui @copilotkit/react-textarea
下面的代碼段展示了如何集成CopilotTextArea的方法。
import { CopilotTextarea } from "@copilotkit/react-textarea";
import { useState } from "react";
export function SomeReactComponent() {
const [text, setText] = useState("");
return (
<>
<CopilotTextarea
className="px-4 py-4"
value={text}
onValueChange={(value: string) => setText(value)}
placeholder="What are your plans for your vacation?"
autosuggestionsConfig={{
textareaPurpose: "Travel notes from the user's previous vacations. Likely written in a colloquial style, but adjust as needed.",
chatApiConfigs: {
suggestionsApiConfig: {
forwardedParams: {
max_tokens: 20,
stop: [".", "?", "!"],
},
},
},
}}
/>
</>
);
}
通過上述方法,您可以在幾分鐘內(nèi)構(gòu)建出AI聊天機(jī)器人,以用于基于LLM的全棧應(yīng)用。
5.DALL-E Mini -根據(jù)文本提示生成圖像
OpenAI的第一個令人印象深刻的圖像生成模型是DALL-E。DALL-E mini應(yīng)母公司的要求更名為Craiyon。而Craiyon/DALL-E mini則試圖利用開源模型重現(xiàn)其成果。如下圖所示,您可以在Craiyon(https://www.craiyon.com/)上使用該模型。
參考相關(guān)文檔(https://github.com/borisdayma/dalle-mini?tab=readme-ov-file#development),您可以用如下命令(用于開發(fā))開始安裝DALL-E Mini:
pip install dalle-mini
通過閱讀DALL-E Mini的相關(guān)說明(https://wandb.ai/dalle-mini/dalle-mini/reports/DALL-E-Mini-Explained-with-Demo--Vmlldzo4NjIxODA),您也可以了解有關(guān)其數(shù)據(jù)集、架構(gòu)和算法等更多信息。當(dāng)然,《最佳人工智能圖像和提示終極指南(https://www.craiyon.com/blog/ultimate-guide-best-ai-art-photorealistic-images-and-prompts)》,也值得您參考。
目前,DALL-E Mini的v0.1版本在GitHub上有一萬四千多顆星。
6.Deepgram -為應(yīng)用構(gòu)建語音人工智能
無論是初創(chuàng)公司還是美國國家航空航天局(NASA),它們每天都在使用Deepgram(https://github.com/deepgram)的API以快速、準(zhǔn)確、可擴(kuò)展且經(jīng)濟(jì)高效的方式,轉(zhuǎn)錄和理解數(shù)百萬分鐘的音頻。同時,Deepgram能為開發(fā)人員提供語音到文本和音頻的智能模型。
由Deepgram的官方介紹文檔可知(https://developers.deepgram.com/docs/introduction),它提供了免費和可視化兩種模型。其免費層面完全能夠滿足您的基本使用。而可視化是上面一層,您可以查看實時的流媒體響應(yīng)或音頻文件,并比較音頻的智能化水平。
您還可以閱讀Deepgram的博客示例(https://deepgram.com/learn/how-to-add-speech-recognition-to-your-react-project),以獲悉如何在React和Node.js項目中添加語音識別功能。
如果您想親自體驗Deepgram API的靈活性,請訪問它們的API Playground(https://playground.deepgram.com/?smart_format=true&language=en&model=nova-2)。
7.InvokeAI -穩(wěn)定擴(kuò)散模型的領(lǐng)先創(chuàng)意引擎
作為Stable Diffusion的實現(xiàn),InvokeAI(https://github.com/invoke-ai/InvokeAI)是一種開源的文本到圖像、以及圖像到圖像的生成器。它提供了業(yè)界領(lǐng)先的WebUI,并通過CLI支持終端的使用,可謂多種商業(yè)產(chǎn)品的基礎(chǔ)。
InvokeAI既能夠在Windows、Mac和Linux機(jī)器上運行,也可以在僅有4 GB內(nèi)存的GPU顯卡上運行。您可以閱讀其有關(guān)硬件要求(https://invoke-ai.github.io/InvokeAI/installation/INSTALLATION/),如何安裝不同的模型(https://invoke-ai.github.io/InvokeAI/installation/050_INSTALLING_MODELS/),以及重要的自動安裝信息(https://invoke-ai.github.io/InvokeAI/installation/010_INSTALL_AUTOMATED/)。
正如其文檔(https://invoke-ai.github.io/InvokeAI/features/IMG2IMG/)所述,InvokeAI還能夠使用其他圖像來生成新的圖像。
目前,InvokeAI在GitHub上有將近兩萬一千多顆星。
8.OpenAI- 您需要的一切
OpenAI(https://github.com/openai)已被全世界所知曉。通過OpenAI,您可以使用DALL-E來根據(jù)文字描述,創(chuàng)建原始、逼真的圖像,使用Whisper實現(xiàn)語音識別模型。
如下代碼段所示,您可以從一個簡單的API開始構(gòu)建。
completion = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "What are some famous astronomical observatories?"}
]
)
當(dāng)然,其文檔鏈接-- https://platform.openai.com/docs/introduction提供了更多可構(gòu)建的選項。
如上圖所示,您可以創(chuàng)建助理應(yīng)用(https://platform.openai.com/docs/assistants/overview)程序并查看API playground(https://platform.openai.com/playground/p/default-chat?model=text-davinci-003),以便更好地了解它。
9.DeepFaceLab -用于創(chuàng)建Deepfakes的領(lǐng)先軟件
DeepFaceLab(https://github.com/iperov/DeepFaceLab)是一款實現(xiàn)深度偽造(Deepfakes)的頂級開源工具。此處的深度偽造是利用深度學(xué)習(xí)來篡改圖像和視頻的技術(shù)。它們經(jīng)常被用來在圖片或短片中調(diào)換人臉,有時是為了開玩笑,但有時是為了欺詐。
如上圖所示,作為一款使用Python構(gòu)建的深度偽造工具,DeepFaceLab可以改變媒體中的人臉,消除皺紋和衰老的痕跡,甚至可以操縱嘴唇的動作。
您既可以使用其基礎(chǔ)教程來了解如何有效地使用DeepFaceLab(https://www.youtube.com/watch?v=kOIMXt8KK8M),也可以通過鏈接觀看DeepLab算法的使用視頻(https://www.youtube.com/channel/UCGf4OlX_aTt8DlrgiH3jN3g/videos)。
遺憾的是,在DeepFaceLab中并沒有“使一切正常”的按鈕。不過,您可以通過學(xué)習(xí)其工作流程,以滿足自己的特定需求。而且,由于教程眾多、算法可靠,因此它已是人工智能應(yīng)用領(lǐng)域的可靠選擇。
截止2023年11月9日,DeepFaceLab已在GitHub上擁有近四萬四千顆星。
10.Detectron2 -基于PyTorch的模塊化對象檢測庫
作為Facebook AI Research的下一代代碼庫,Detectron2支持Facebook上的多個計算機(jī)視覺研究項目和生產(chǎn)應(yīng)用。它是 Detectron和maskrcnn-benchmark的后續(xù)產(chǎn)品,因此提供了最先進(jìn)的物體檢測和分割算法模型。同時,Detectron2也能適應(yīng)不斷發(fā)展的前沿研究領(lǐng)域。
通過鏈接--https://www.youtube.com/watch?v=eUSgtfK4ivk,您可以了解如何利用機(jī)器學(xué)習(xí)來使用Detectron2。同時,Detectron2配備了如:DensePose和全景特征金字塔網(wǎng)絡(luò)(panoptic feature pyramid networks)等先進(jìn)的物體檢測算法。據(jù)此,Detectron2能夠進(jìn)行語義分割和全景分割,這有助于更準(zhǔn)確地檢測和分割圖像和視頻中的物體。
此外,Detectron2不僅支持使用邊界框和實例分割掩碼進(jìn)行物體檢測,還能夠預(yù)測人物的姿勢,這一點與Detectron比較相似。
目前,Detectron2在GitHub代碼庫中有兩萬八千多顆星,而且在GitHub上被一萬六千多名開發(fā)人員所使用。
11.FastAI -深度學(xué)習(xí)庫
作為一個多功能深度學(xué)習(xí)庫,F(xiàn)astai(https://github.com/fastai/fastai)為從業(yè)人員提供了高級組件,使他們能夠在常見的深度學(xué)習(xí)任務(wù)中快速獲得一流的結(jié)果。同時,它也為研究人員提供了低級組件,以便他們進(jìn)行實驗和開發(fā)新的方法。
該架構(gòu)利用Python的動態(tài)特性和PyTorch的靈活性,將復(fù)雜的深度學(xué)習(xí)技術(shù)分解為易于管理的抽象概念。如下圖所示,它建立在提供可組合構(gòu)件的低級API的層次結(jié)構(gòu)之上。據(jù)此,如果用戶想重寫部分高級API或添加特定行為,以滿足自己的需求,就不必學(xué)習(xí)如何使用最底層的API了。
在安裝了pyTorch后,您可以通過參考其文檔(https://docs.fast.ai/),使用以下命令以開始FastAI的相關(guān)操作。
conda install -c fastai fastai
FastAI分別為初學(xué)者、中級和專家提供了不同的教程(https://docs.fast.ai/tutorial.html)。當(dāng)然,如果您想為FastAI作出貢獻(xiàn)的話,請事先閱讀他們的代碼風(fēng)格指南(https://docs.fast.ai/dev/style.html)。
目前,F(xiàn)astAI在GitHub上擁有兩萬五千多顆星,且已被GitHub上的一萬六千多名開發(fā)人員所使用。
譯者介紹
陳峻(Julian Chen),51CTO社區(qū)編輯,具有十多年的IT項目實施經(jīng)驗,善于對內(nèi)外部資源與風(fēng)險實施管控,專注傳播網(wǎng)絡(luò)與信息安全知識與經(jīng)驗。
原文標(biāo)題:All the tools I need to build a perfect AI app. ,作者:Anmol Baranwal
鏈接:https://dev.to/taipy/all-the-tools-i-need-to-build-a-perfect-ai-app-2oeh。
