这是一个使用以下工具和API构建的基本入门项目:
当我开始深入研究所有这些时,我感到,当我了解一些单独的作品时,很难将所有内容拼凑成一个凝聚力的项目。我希望这个项目对于希望使用此堆栈建造的任何人都有用,而只需要一些东西就开始。
我们正在构建一个应用文本(文本文件),将它们嵌入向量,将其存储到Pinecone中并允许对数据进行语义搜索的应用程序。
对于任何想知道哪种语义搜索的人来说,这里是一个概述(直接从chatgpt4获取):
语义搜索是指了解用户意图和搜索查询的上下文含义的搜索方法,而不仅仅是匹配关键字。
它使用自然语言处理和机器学习来解释查询背后的语义或含义。这将产生更准确和相关的搜索结果。语义搜索可以考虑用户意图,查询上下文,同义词识别和自然语言理解。它的应用程序从网络搜索引擎到个性化推荐系统。
在本节中,我将引导您完成如何部署和运行此应用程序。
要运行此应用,您需要以下内容:
要在本地运行该应用程序,请按照以下步骤:
git clone [email protected]:dabit3/semantic-search-nextjs-pinecone-langchain-chatgpt.git更改为目录并使用NPM或纱线安装依赖项
复制.example.env.local到一个名为.env.local的新文件,并使用您的API键和环境进行更新。
确保您的环境是Pinecone给您的实际环境,例如us-west4-gcp-free
(可选) - 在/documents文件夹中添加您自己的自定义文本或标记文件。
运行应用程序:
npm run dev在创建嵌入式和索引时,最多可能需要2-4分钟才能完全初始化索引。 utils中有180秒的Settimeout函数等待创建索引。
如果初始化需要更长的时间,那么它将在您第一次尝试创建嵌入式时失败。如果发生这种情况,请访问Pinecone控制台观看并等待创建的索引状态以完成,然后再次运行该功能。
预配置的应用程序数据与镜头协议开发人员文档有关,因此,除非您用自己的数据替换,否则它只会理解有关它的问题。这是您可能与默认数据一起问的几个问题
该项目的基础是该节点的指导。您也可以在Twitter上关注他们!
我建议检查GPT存储库加载程序,这使得将任何GitHub存储库变成文本格式变得容易,从而保留文件和文件内容的结构,从而易于使用我的代码库将其切碎并保存到Pinecone中。