在ChatGPT引领的AI浪潮下,涌现了一大批AI应用,其背后其实蕴含着一个基本事实:AI能力得到了极大突破——大模型的能力有目共睹,未来只会变得更强。这世界唯一不变的就是变,适应变化、拥抱变化、喜欢变化,天行健君子以自强不息。我们相信未来会有越来越多的大模型出现,AI正在逐渐平民化,将来每个人都可以利用大模型轻松地做出自己的AI产品。
最近这些天,github的排行榜每天都在发生着变化。今天我们要介绍的是曾排在第二名的quivr这个项目。
github地址:https://github.com/StanGirard/quivr
在介绍这个项目之前,笔者自己先把项目下载到本地分析了一下,简要描述如下:
1. 项目结构:
前端:next.js
后台:python
2. 需要准备的东西
•Docker •Docker Compose •Supabase(可免费创建3个project,实际上是一个Postgres数据库,用来存储Vector) •如果使用gpt则需要OPENAI_API_KEY,如果使用claude则需要ANTHROPIC_API_KEY。
3. 工作流程
当然,这里也可以选择像text2vec-large-chinese这种向量处理模型来生成向量,也可以用其他向量数据库来做向量存储和相似内容查询。
这个流程和笔者之前介绍的一个项目pandasAI比较相似,感兴趣的可以去看一下:
Quivr是你的第二个大脑,利用生成式人工智能的力量来存储和检索非结构化信息。把它看作是黑曜石,但搭载了人工智能的超级引擎。
主要特点 🎯
•通用数据接受性 :Quivr能够处理几乎任何类型的数据。文本、图片、代码片段,应有尽有。 •生成式人工智能 :Quivr采用先进的人工智能技术,协助你生成和检索信息。 •快速高效 :以速度和效率为核心设计。Quivr确保快速访问你的数据。 •安全 :你的数据,永远都是由你来控制。 •文件兼容性 :•文本•Markdown•PDF•PowerPoint•Excel•Word•音频•视频 •开源 :自由是美好的,Quivr也是如此。开源且免费使用。
演示亮点 🎥
请注意:STREAMLIT的演示使用的是旧版本 新版本展示了全新的用户界面,但尚未部署,因为它缺少旧版本的一些功能。预计在25/05/23之前上线。
使用GPT3.5的演示 :
https://github.com/StanGirard/quivr/assets/19614572/80721777-2313-468f-b75e-09379f694653
使用Claude 100k上下文的演示 :https://github.com/StanGirard/quivr/assets/5101573/9dba918c-9032-4c8d-9eea-94336d2c8bd4
新版本的演示(正在进行中) :
https://github.com/StanGirard/quivr/assets/19614572/a6463b73-76c7-4bc0-978d-70562dca71f5
体验地址:
https://try-quivr.streamlit.app/
效果:
入门指南:新版本 🚀
按照以下说明,在你的本地计算机上运行和测试项目的副本。
旧版本的描述文件 位于streamlit-demo文件夹中这里[1]
先决条件 📋
在继续之前,请确保已安装以下内容:
•Docker •Docker Compose此外,您还需要Supabase[2]帐户,用于:•创建新的Supabase项目•Supabase项目的API密钥•Supabase项目的URL
安装步骤 💽
•步骤0 :如果需要,可以在Youtube上找到安装说明这里[3] •步骤1 :使用以下其中一条命令克隆存储库:•如果你没有设置SSH密钥,可以用这种方式:
git clone https
:
//github.com/StanGirard/Quivr.git && cd Quivr
•如果你已经设置了SSH密钥或想要添加(这里有指南[4])
git clone git@github
.
com
:
StanGirard
/
Quivr
.
git
&&
cd
Quivr
•步骤2 :复制.XXXXX_env
文件
cp .backend_env.example backend/.env
cp .frontend_env.example frontend/.env
•步骤3 :更新backend/.env
文件
您的
supabase_service_key
可以在Supabase仪表板的项目设置-> API下找到。使用Project API keys
部分中的anon
public
密钥。
•步骤4 :通过网络界面在Supabase数据库上运行以下迁移脚本(SQL Editor -> New query
)
迁移脚本1[5]:scripts/supabase_vector_store_document.sql
迁移脚本2[6]:scripts/supabase_usage_table.sql
迁移脚本3[7]:scripts/supabase_vector_store_summary.sql
•步骤5 :启动应用程序
docker compose build && docker compose up
•步骤6 :在浏览器中输入localhost:3000
即可打开页面。
贡献 🤝
有一个pull request?打开它,我们将尽快审核。查看我们的项目面板这里[8],了解我们当前关注的内容,并随时提供新鲜的想法!
• 路线图[9]
• 开放问题[10]
• 开放pull request[11]
• Good First Issues[12]
• 前端问题[13]
• 后端问题[14]
References
[1]
这里: streamlit-demo/README.md
[2]
Supabase: https://supabase.com/
[3]
这里: https://youtu.be/rC-s4QdfY80
[4]
这里有指南: https://docs.github.com/en/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account
[5]
迁移脚本1: scripts/supabase_vector_store_document.sql
[6]
迁移脚本2: scripts/supabase_usage_table.sql
[7]
迁移脚本3: scripts/supabase_vector_store_summary.sql
[8]
这里: https://github.com/users/StanGirard/projects/5
[9]
路线图: https://github.com/users/StanGirard/projects/5
[10]
开放问题: https://github.com/StanGirard/quivr/issues
[11]
开放拉取请求: https://github.com/StanGirard/quivr/pulls
[12]
Good First Issues: https://github.com/StanGirard/quivr/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22
[13]
前端问题: https://github.com/StanGirard/quivr/issues?q=is%3Aopen+is%3Aissue+label%3Afrontend
[14]
后端问题: https://github.com/StanGirard/quivr/issues?q=is%3Aopen+is%3Aissue+label%3Abackend