Home
开源技术本页
大模型应用开源技术
author_avatarchat-langchain

这个工程将 LangChain 与 FastAPI 相结合,方便用户搭建 web 接口,让项目快速衔接 AI 能力。

点击访问langchain-ai/chat-langchain
chat-langchain

chat-langchain基本信息

MIT License
5435stars
1281forks
48watching
最近更新时间:2024/11/04, 22:44
最新版本:未发布

chat-langchain介绍

🦜️🔗 Chat LangChain

Chat LangChain是一个专注于问题解答的本地聊天机器人实现,主要针对LangChain文档进行问答。它使用了LangChainFastAPINext.js构建。

部署版本:chat.langchain.com

该应用程序利用了LangChain的流媒体支持和异步API,实时更新页面,供多个用户使用。

✅ 本地运行

  1. 安装后端依赖:poetry install
  2. 确保输入环境变量来配置应用程序:
export OPENAI_API_KEY=
export WEAVIATE_URL=
export WEAVIATE_API_KEY=
export RECORD_MANAGER_DB_URL=

# for tracing
export LANGCHAIN_TRACING_V2=true
export LANGCHAIN_ENDPOINT="https://api.smith.langchain.com"
export LANGCHAIN_API_KEY=
export LANGCHAIN_PROJECT=
  1. 运行python ingest.py将LangChain文档数据导入Weaviate向量存储(只需要执行一次)。
    1. 您可以使用其他文档加载器将自己的数据加载到向量存储中。
  2. 使用poetry run make start启动Python后端。
  3. 运行cd chat-langchain,然后运行yarn安装前端依赖。
  4. 运行yarn dev启动前端。
  5. 在浏览器中打开localhost:3000

☕ 本地运行(使用JS后端)

  1. 按照上面的前三个步骤将LangChain文档数据导入向量存储。
  2. 运行cd chat-langchain,然后运行yarn安装前端依赖。
  3. chat-langchain/.env.local文件中填入来自chat-langchain/.env.example文件的自定义密钥,并将NEXT_PUBLIC_API_BASE_URL设置为"http://localhost:3000/api"
  4. 使用yarn dev运行应用程序。
  5. 在浏览器中打开localhost:3000

📚 技术描述

Chat LangChain有两个组件:数据导入和问题回答。

数据导入包括以下步骤:

  1. 从文档站点和Github代码库中抓取html。
  2. 使用LangChain的RecursiveURLLoaderSitemapLoader加载html。
  3. 使用LangChain的RecursiveCharacterTextSplitter将文档拆分成段落。
  4. 使用LangChain的Weaviate向量存储包装器(使用OpenAI的嵌入向量)创建一个嵌入向量存储。

问题回答包括以下步骤:

  1. 根据聊天历史和用户的新输入,使用GPT-3.5确定一个独立的问题。
  2. 根据这个独立的问题,在向量存储中查找相关的文档。
  3. 将独立的问题和相关文档传递给模型,生成并流式传输最终的答案。
  4. 为当前的聊天会话生成一个跟踪URL,以及用于收集反馈的端点。

🚀 部署

通过在Vercel上将前端Next.js应用作为无服务器边缘函数部署b点击此处。 您需要使用您部署了后端的基本URL(没有尾部斜杠!)填充NEXT_PUBLIC_API_BASE_URL环境变量。

免责声明:本站大资源来自网络收集整理,小部分资源来自原创,如有侵权等,请联系处理。
AI奇想空间
AI奇想空间
https://aimazing.site
AI惊奇站是一个汇聚人工智能工具、资源和教程的导航网站。 在这里,你可以发现最新的AI技术、工具和应用,学习如何使用各种AI平台和框架,获取丰富的AI资源。 欢迎广大AI爱好者加入我们的社区,开启你的AI之旅!
AI交流群
Copyright © 2024 AI奇想空间.微信