想了解更多AIGC的內(nèi)容,請(qǐng)?jiān)L問:
如您所見,人工智能(AI)應(yīng)用在近年來得到了長(zhǎng)足的發(fā)展。從語音助手到軟件開發(fā),人工智能已在我們的生活中無處不在,并得到了廣泛應(yīng)用。下面,我將為您介紹25個(gè)開源項(xiàng)目,您可以用它們來制作自己的人工智能應(yīng)用程序,并使其更上一層樓。
1.Taipy -將數(shù)據(jù)和人工智能算法轉(zhuǎn)化為可投入生產(chǎn)網(wǎng)絡(luò)的應(yīng)用
作為一個(gè)開源的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í),您可以用其繪制數(shù)據(jù)集的圖表,并使用類似圖形化用戶界面的滑塊,讓用戶可以選擇使用其他實(shí)用的功能,來處理數(shù)據(jù)。
在不犧牲性能的情況下,Taipy提供了友好的用戶界面、高效的數(shù)據(jù)處理能力、以及良好的易用性。您只需通過命令:pip install taipy,來完成安裝。同時(shí),Taipy也能利用各種代碼庫,來簡(jiǎn)化開發(fā)并增強(qiáng)功能。
目前,Taipy發(fā)布了最新版本為v3.1(https://docs.taipy.io/en/latest/relnotes/)。該版本的多功能部件對(duì)象實(shí)現(xiàn)了HTML或Python對(duì)象的可視化。這意味著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)在都可以被用于可視化。同時(shí),它提供了對(duì)Plotly Python(https://plotly.com/python/)的原生支持,使得繪制圖表變得更容易。
在利用分布式計(jì)算提高性能的同時(shí),Taipy及其所有依賴項(xiàng)都能與Python 3.12完全兼容,以便用戶在Taipy的項(xiàng)目中使用最新的工具和代碼庫。請(qǐng)閱讀文檔-- https://docs.taipy.io/en/latest/,以獲得更多介紹。
下圖展示的是其聊天界面(https://docs.taipy.io/en/release-3.1/gallery/llm/5_chatbot/)。該演示使用了OpenAI的GPT-4 API,生成對(duì)消息的回復(fù)。您可以通過更改代碼,以使用其他的API或模型。
下圖展示的是由Taipy團(tuán)隊(duì)提供的、可用于加速Taipy應(yīng)用構(gòu)建的、另一個(gè)名為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多個(gè)帶有代碼和文檔的演示教程,可供您學(xué)習(xí)。例如:
- Covid儀表板(https://covid-dashboard.taipy.cloud/Country)
- Tweet的生成(https://tweet-generation.taipy.cloud/)
- 數(shù)據(jù)可視化(https://production-planning.taipy.cloud/Data-Visualization)
- 實(shí)時(shí)人臉識(shí)別(https://face-recognition.taipy.cloud/)
目前,Taipy的v3版在GitHub上有七千多顆星,且在不斷改進(jìn)中。
2.Supabase - Firebase的開源替代品
要構(gòu)建人工智能應(yīng)用,您往往需要一個(gè)后臺(tái),而Supabase(https://github.com/supabase/supabase)正是可以滿足此需求的優(yōu)秀后臺(tái)服務(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ù)、以及存儲(chǔ)等功能,來構(gòu)建一個(gè)超快的應(yīng)用。同時(shí),Supabase也提供了多個(gè)啟動(dòng)工具包,如:帶有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 -即時(shí)聊天、電子郵件支持、全方位渠道服務(wù)臺(tái),并擁有自己的數(shù)據(jù)
Chatwoot(https://github.com/chatwoot/chatwoot)可與電子郵件、網(wǎng)站即時(shí)聊天、Facebook、Twitter、WhatsApp、Instagram以及Line等常用客戶溝通渠道連接,以實(shí)現(xiàn)一站式多社交應(yīng)用的客戶體驗(yàn)。如下圖所示,這對(duì)于想圍繞著某個(gè)人工智能應(yīng)用來建立用戶社區(qū)的需求,顯得十分必要。
您可以通過閱讀文檔(https://www.chatwoot.com/docs/product),了解各種集成選項(xiàng),從而更輕松地管理整個(gè)生態(tài)系統(tǒng)。其文檔非常詳細(xì),每個(gè)集成都有相應(yīng)的快照示例,例如:WhatsApp頻道就帶有WhatsApp Cloud API。因此,您可以按需將其一鍵部署到Heroku或自行托管。
目前,Chatwoot發(fā)布的是v3.6版,在GitHub上擁有一萬八千多顆星。
4.CopilotKit -在數(shù)小時(shí)內(nèi)為您的產(chǎn)品提供AI Copilot
CopilotKit(https://github.com/CopilotKit/CopilotKit)可以讓我們使用兩個(gè)React組件,將各種關(guān)鍵性的人工智能功能集成到React應(yīng)用中。同時(shí),它也提供了內(nèi)置(但完全可定制)的Copilot原生用戶體驗(yàn)組件,如:<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的第一個(gè)令人印象深刻的圖像生成模型是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ù)百萬分鐘的音頻。同時(shí),Deepgram能為開發(fā)人員提供語音到文本和音頻的智能模型。
由Deepgram的官方介紹文檔可知(https://developers.deepgram.com/docs/introduction),它提供了免費(fèi)和可視化兩種模型。其免費(fèi)層面完全能夠滿足您的基本使用。而可視化是上面一層,您可以查看實(shí)時(shí)的流媒體響應(yīng)或音頻文件,并比較音頻的智能化水平。
您還可以閱讀Deepgram的博客示例(https://deepgram.com/learn/how-to-add-speech-recognition-to-your-react-project),以獲悉如何在React和Node.js項(xiàng)目中添加語音識(shí)別功能。
如果您想親自體驗(yàn)Deepgram API的靈活性,請(qǐng)?jiān)L問它們的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的實(shí)現(xiàn),InvokeAI(https://github.com/invoke-ai/InvokeAI)是一種開源的文本到圖像、以及圖像到圖像的生成器。它提供了業(yè)界領(lǐng)先的WebUI,并通過CLI支持終端的使用,可謂多種商業(yè)產(chǎn)品的基礎(chǔ)。
InvokeAI既能夠在Windows、Mac和Linux機(jī)器上運(yùn)行,也可以在僅有4 GB內(nèi)存的GPU顯卡上運(yùn)行。您可以閱讀其有關(guān)硬件要求(https://invoke-ai.github.io/InvokeAI/installation/INSTALLATION/),如何安裝不同的模型(https://invoke-ai.github.io/InvokeAI/installation/050_INSTALLING_MODELS/),以及重要的自動(dòng)安裝信息(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實(shí)現(xiàn)語音識(shí)別模型。
如下代碼段所示,您可以從一個(gè)簡(jiǎ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)建的選項(xiàng)。
如上圖所示,您可以創(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)是一款實(shí)現(xiàn)深度偽造(Deepfakes)的頂級(jí)開源工具。此處的深度偽造是利用深度學(xué)習(xí)來篡改圖像和視頻的技術(shù)。它們經(jīng)常被用來在圖片或短片中調(diào)換人臉,有時(shí)是為了開玩笑,但有時(shí)是為了欺詐。
如上圖所示,作為一款使用Python構(gòu)建的深度偽造工具,DeepFaceLab可以改變媒體中的人臉,消除皺紋和衰老的痕跡,甚至可以操縱嘴唇的動(dòng)作。
您既可以使用其基礎(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的模塊化對(duì)象檢測(cè)庫
作為Facebook AI Research的下一代代碼庫,Detectron2支持Facebook上的多個(gè)計(jì)算機(jī)視覺研究項(xiàng)目和生產(chǎn)應(yīng)用。它是 Detectron和maskrcnn-benchmark的后續(xù)產(chǎn)品,因此提供了最先進(jìn)的物體檢測(cè)和分割算法模型。同時(shí),Detectron2也能適應(yīng)不斷發(fā)展的前沿研究領(lǐng)域。
通過鏈接--https://www.youtube.com/watch?v=eUSgtfK4ivk,您可以了解如何利用機(jī)器學(xué)習(xí)來使用Detectron2。同時(shí),Detectron2配備了如:DensePose和全景特征金字塔網(wǎng)絡(luò)(panoptic feature pyramid networks)等先進(jìn)的物體檢測(cè)算法。據(jù)此,Detectron2能夠進(jìn)行語義分割和全景分割,這有助于更準(zhǔn)確地檢測(cè)和分割圖像和視頻中的物體。
此外,Detectron2不僅支持使用邊界框和實(shí)例分割掩碼進(jìn)行物體檢測(cè),還能夠預(yù)測(cè)人物的姿勢(shì),這一點(diǎn)與Detectron比較相似。
目前,Detectron2在GitHub代碼庫中有兩萬八千多顆星,而且在GitHub上被一萬六千多名開發(fā)人員所使用。
11.FastAI -深度學(xué)習(xí)庫
作為一個(gè)多功能深度學(xué)習(xí)庫,F(xiàn)astai(https://github.com/fastai/fastai)為從業(yè)人員提供了高級(jí)組件,使他們能夠在常見的深度學(xué)習(xí)任務(wù)中快速獲得一流的結(jié)果。同時(shí),它也為研究人員提供了低級(jí)組件,以便他們進(jìn)行實(shí)驗(yàn)和開發(fā)新的方法。
該架構(gòu)利用Python的動(dòng)態(tài)特性和PyTorch的靈活性,將復(fù)雜的深度學(xué)習(xí)技術(shù)分解為易于管理的抽象概念。如下圖所示,它建立在提供可組合構(gòu)件的低級(jí)API的層次結(jié)構(gòu)之上。據(jù)此,如果用戶想重寫部分高級(jí)API或添加特定行為,以滿足自己的需求,就不必學(xué)習(xí)如何使用最底層的API了。
在安裝了pyTorch后,您可以通過參考其文檔(https://docs.fast.ai/),使用以下命令以開始FastAI的相關(guān)操作。
conda install -c fastai fastai
FastAI分別為初學(xué)者、中級(jí)和專家提供了不同的教程(https://docs.fast.ai/tutorial.html)。當(dāng)然,如果您想為FastAI作出貢獻(xiàn)的話,請(qǐng)事先閱讀他們的代碼風(fēng)格指南(https://docs.fast.ai/dev/style.html)。
目前,F(xiàn)astAI在GitHub上擁有兩萬五千多顆星,且已被GitHub上的一萬六千多名開發(fā)人員所使用。
下篇:融匯14個(gè)AI工具構(gòu)建完美應(yīng)用
譯者介紹
陳峻(Julian Chen),51CTO社區(qū)編輯,具有十多年的IT項(xiàng)目實(shí)施經(jīng)驗(yàn),善于對(duì)內(nèi)外部資源與風(fēng)險(xiǎn)實(shí)施管控,專注傳播網(wǎng)絡(luò)與信息安全知識(shí)與經(jīng)驗(yàn)。
原文標(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