Supabase 本周正在举办一个 AI黑客松。LangChain 的我们是 Supabase 和黑客松的忠实粉丝,因此我们认为现在是强调您可以将 LangChain 和 Supabase 结合使用的多种方式的绝佳时机。
我们如此喜欢 Supabase 的原因是它在多种不同方面都很有用。构建有趣的 AI 应用程序的一个重要部分是将 GPT-3 等模型与您的个人数据连接起来。因此,从这个意义上说,Supabase 支持的不同类型的数据库非常有用。但是,在构建应用程序之后,您还需要一种与世界分享它的方法 - Supabase 也可以在这方面提供帮助。
Supabase VectorStore
人们一直在构建的主要 AI 应用程序类型之一是“聊天”与您的文档数据的方式。基本上,就像 ChatGPT,但它知道关于特定数据的信息,无论是您的个人写作还是深奥的网站。有关此类应用程序的深入教程,请参阅这篇博客。此应用程序的一个重要部分是将文档的嵌入存储在向量数据库中。Supabase 可以做到这一点!请参阅我们的文档 此处,了解如何操作的详细步骤。
Supabase 混合搜索
向量数据库可以轻松地对文档进行语义搜索,但这并不是检索文档的唯一方法。例如,MendableAI 团队发现,通过切换到混合搜索技术,检索性能提高了 20%。他们使用 Supabase 来做到这一点!请参阅我们的文档 此处,了解如何尝试这种方法的详细步骤。
Supabase + LangChain 入门模板
为了让您能够非常轻松地使用 Supabase 和 LangChain 构建完整的堆栈应用程序,我们整理了一个 GitHub 仓库 入门模板。我们的模板包括
- 一个空的 Supabase 项目,您可以在本地运行并在准备就绪后部署到 Supabase,以及设置和部署说明
- 在
supabase/functions/chat
中,一个 Supabase Edge Function,它使用 LangChain 调用 GPT-3.5 API,支持批量和流式模式,以获得出色的用户体验。 - 在
supabase/migrations
中,一个 Postgres 迁移,它为您设置使用 Supabase Vector Store for LangChain。 - 在
src
中,一个 React + Next.js + Tailwind 前端,已经使用 Supabase SDK 设置好,并且有一个 调用 Chat 函数的示例
有了这个,您可以使用以下技术构建一个全栈 AI 应用程序:
- LangChain 提供的所有模块,例如 Prompts、Chains、LLMs、Chat Models、Retrievers、Vector Stores、Document Loaders、Text Splitters 等。
- Supabase 提供的所有惊人功能,开箱即用,例如数据库、身份验证、存储、实时等。
- 一个您可以使用 React + Next.js + Tailwind 轻松自定义的前端堆栈
Supabase Edge Functions 在底层使用 Deno,我们最近添加了对在 Deno 上运行 LangChain 的支持,如有任何问题,请在 Discord 或 GitHub 上告知我们!