前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >LangChain系列教程之环境设置

LangChain系列教程之环境设置

作者头像
山行AI
发布2023-08-10 13:59:01
1.4K0
发布2023-08-10 13:59:01
举报
文章被收录于专栏:山行AI

前言

"LangChain 系列" 是一系列全面的文章和教程,探索了 LangChain 库的各种功能和特性。LangChain 是由 SoosWeb3 开发的 Python 库,为自然语言处理(NLP)任务提供了一系列强大的工具和功能。

该系列涵盖了与 NLP 相关的广泛主题,包括数据加载、文本预处理、文本分割、嵌入等等。系列中的每篇文章深入探讨了 LangChain 的特定方面,提供详细的解释、代码示例和实际应用案例。

"LangChain 系列" 的目标是帮助开发人员和数据科学家利用 LangChain 的功能来构建强大且高效的 NLP 应用程序。无论您是 NLP 的新手还是经验丰富的从业者,本系列都提供有价值的见解和指导,以提升您的 NLP 项目。

通过跟随 "LangChain 系列" 中的文章,您将全面了解如何在各种 NLP 任务中使用 LangChain,并发挥您的 NLP 项目的全部潜力。

设置完美的Python环境来开发LangChain

目录

•什么是LangChain?[1]•使用LangChain的先决条件[2]•设置完美的Python环境[3]•Python虚拟环境[4]•创建新的虚拟环境[5]•安装主要的LangChain模块[6]•结论[7]

让我向您介绍一些正在搅动开发者界的东西:LangChain。这是一个为人工智能应用程序而构建的强大框架。无论是聊天机器人还是推荐引擎,只要你想,LangChain 都有能力实现。而且最棒的是,它非常易于使用。对于我来说,最重要的是物超所值,而LangChain完全符合这一点。

这是系列中的第一篇指南,我希望保持简短明了,易于理解并提供详细信息。本指南以Python为中心,今天我们将讨论如何为您使用LangChain创建完美的Python环境。

也可以查看 LangChain 文档[8]。

什么是LangChain?

首先,LangChain到底是什么?

LangChain是一个非常多功能的框架,旨在简化开发使用OpenAI的GPT3和GPT4等语言模型的应用程序。它关注数据的使用和实现。它旨在帮助语言模型与各种数据源连接,并使其能够与环境进行交互。它提供的模块可以处理不同的任务 - 我们可以处理不同类型的模型,管理提示信息,保持内存状态持久化等等。

LangChain的酷之处在于它可以以各种方式使用 - 想象一下自主代理、个人助理、问答系统甚至是聊天机器人。对于一些棘手的任务,如查询结构化数据、理解代码、使用API、提取信息、文档摘要和生成模型等方面,它非常有帮助。如果您想在应用程序中充分利用语言模型,LangChain是您必备的工具箱。无论您是刚开始还是已经从事这方面的工作一段时间,它都是一个很好的资源。

现在,对于我们今天的项目,我们将使用LangChain来处理所有与'AI相关'的任务。我们将涉及生成嵌入向量、创建和查询向量数据库等内容。

如果您对LangChain的功能感到好奇,请查看我创建的工具:Scrape and chat with repositories[9]。

使用LangChain的先决条件

Python的设置可能有些棘手,但一个坚实的基础可以避免许多麻烦。请确保检查以下要点:

1.操作系统:Python在操作系统方面非常灵活,但有些系统在开发体验上比其他系统更好。以下系统按照我的个人偏好顺序排列,您可以根据自己的喜好选择任何操作系统:1.MacOS:在我的经验中(我使用过这三个操作系统),MacOS是最佳选择,冲突较少,并且设置过程更加顺畅。2.Linux:如果您无法使用高级的Mac电脑,Linux是第二好的选择,如果您的Linux设置正确,它仍然提供良好的体验。3.带有Linux子系统(WSL)的Windows:如果您使用的是Windows系统,也没问题,Python在Windows上工作良好,我长时间在Windows上使用过它,但我建议您至少设置好WSL。WSL是一个兼容性层,它可以让您在Windows上本地运行Linux二进制可执行文件;这将对您有所帮助。2.Python 3.7或更高版本:我们将使用许多Python模块,因此请确保您的Python版本是最新的;我推荐使用Python 3.10.10。3.安装Python[10]。4.Pip:这是Python的软件包安装程序。我们需要它来安装LangChain所依赖的一些库。如果您已经安装了Python,那么很可能已经安装了Pip。但如果没有:•安装Pip[11]。5.Python虚拟环境(venv):相信我,您会希望将项目及其依赖项良好地隔离开来。这就是Python的venv派上用场的地方。如果您以前从未使用过它,不用担心,它非常简单,并且已经随Python一起安装了。

请注意,本指南中的所有内容都基于MacOS操作系统。

[12]设置完美的Python环境

因此,一旦您完成了前面的所有要点,让我们开始行动吧。

[13]Python虚拟环境

保持Python体验流畅的最佳方法是始终为每个项目使用虚拟环境。我的工作流程如下:

1.为我的新项目创建一个目录,无人会使用它哈哈哈。2.在该目录中创建一个新的虚拟环境;我总是尝试给它命名,以使我记起我的项目。3.激活虚拟环境。4.安装所需的包和依赖项。

这对我来说非常有效,使每个项目都能在自己的小盒子中独立运行。

[14]创建一个新的虚拟环境

一旦您决定在哪里保存您的项目,就可以在根目录中创建一个新的虚拟环境。Python内置了venv模块,您可以使用以下命令创建一个新的虚拟环境:

代码语言:javascript
复制
python3 -m venv YOUR_VENV_NAME

所以让我们为我们的LangChain项目创建一个新的虚拟环境:

代码语言:javascript
复制
python3 -m venv langchain

然后激活它:

代码语言:javascript
复制
source langchain/bin/activate

现在,您的终端将显示您正在虚拟环境中:

代码语言:javascript
复制
(langchain) soos@MacBookPro langchain-series %

好了,现在您拥有了一个全新闪亮的Python环境,准备安装一些依赖项。

[15]安装主要的LangChain模块

LangChain内置了许多模块和工具,但通常情况下,您还需要一些额外的包。您可以使用Pip安装所有这些包,以下是我通常在开始开发之前立即安装的包。

代码语言:javascript
复制
python3 -m pip install --upgrade langchain deeplake pinecone-client openai tiktoken python-dotenv

让我们来了解一下我们在这里所做的工作:

python3 -m pip:这会使用Python3运行pip模块。这是确保您正在为Python3解释器使用正确版本的pip的可靠方法。•install:这是安装包的pip命令。•langchain deeplake pinecone openai tiktoken python-dotenv:这些是您要安装的Python包的名称。此命令将安装这些包的最新版本。

以下是每个包的简要说明:

langchain:这是主要的LangChain模块,我们将能够使用文档加载器、文本分割器和其他实用工具。•deeplake:Deep Lake是一个向量数据库提供者;我们需要将处理过的数据存储为向量,因此需要一个向量数据库。Deep Lake允许您轻松地在本地或云上创建索引,所以通常我会选择它。•pinecone:Pinecone是另一个用于机器学习应用的向量数据库,可能是最知名的一个;它可靠且性能出色,但您可能需要在等候名单上注册以获得免费帐户,所以我并不总是使用它,但我喜欢在需要时可以使用它。•openai:这是用于OpenAI API的官方Python客户端库,允许您访问强大的AI模型;我们将使用它来进行嵌入模型、对话模型等操作。•tiktoken:这是OpenAI的一个库,它允许您计算文本字符串中的标记数,而无需进行API调用。•python-dotenv:这个包允许您在.env文件中指定环境变量,这对于管理密钥和其他配置值非常有用。

就是这样,现在您拥有了完美的Python环境,可以开始使用LangChain和语言模型应用程序。

在下一集中,我们将学习如何设置项目、导入主要模块并设置环境变量。

就是这样,各位。我们刚刚涉足了LangChain这个令人兴奋的世界——这是人工智能应用领域的一场变革,当您意识到您可以轻松地创建强大的应用程序时,您就会明白为什么我一直这样说。它非常灵活、易于使用,并且配备了各种模块,可以帮助您构建从聊天机器人到强大的问答系统等各种应用。

在本指南中,我们从设置Python环境到了解开始使用LangChain所需的关键模块,涵盖了基础知识。我们看了一下如何创建Python虚拟环境——这是一个关键的步骤,可以让您的项目整洁有序。

openai[16]Developer[17]Python[18]AI[19]langchain[20]

声明

本文由山行AI翻译整理自:https://blog.davideai.dev/the-ultimate-langchain-series-environment-setup,感兴趣的请点赞、收藏。

References

[1] 什么是LangChain?: https://blog.davideai.dev/the-ultimate-langchain-series-environment-setup#heading-what-is-langchain [2] 使用LangChain的先决条件: https://blog.davideai.dev/the-ultimate-langchain-series-environment-setup#heading-requisites-you-use-langchain [3] 设置完美的Python环境: https://blog.davideai.dev/the-ultimate-langchain-series-environment-setup#heading-set-up-the-perfect-python-environment [4] Python虚拟环境: https://blog.davideai.dev/the-ultimate-langchain-series-environment-setup#heading-python-virtual-environment [5] 创建新的虚拟环境: https://blog.davideai.dev/the-ultimate-langchain-series-environment-setup#heading-create-a-new-virtual-environment [6] 安装主要的LangChain模块: https://blog.davideai.dev/the-ultimate-langchain-series-environment-setup#heading-install-the-main-langchain-modules [7] 结论: https://blog.davideai.dev/the-ultimate-langchain-series-environment-setup#heading-conclusion [8] LangChain 文档: https://python.langchain.com/en/latest/index.html [9] Scrape and chat with repositories: https://soosweb3.hashnode.dev/make-a-chatbot-for-github-repositories#heading-what-is-langchain [10] 安装Python: https://www.python.org/downloads/ [11] 安装Pip: https://pip.pypa.io/en/stable/installation/ [12] 永久链接: https://blog.davideai.dev/the-ultimate-langchain-series-environment-setup#heading-set-up-the-perfect-python-environment [13] 永久链接: https://blog.davideai.dev/the-ultimate-langchain-series-environment-setup#heading-python-virtual-environment [14] 永久链接: https://blog.davideai.dev/the-ultimate-langchain-series-environment-setup#heading-create-a-new-virtual-environment [15] 永久链接: https://blog.davideai.dev/the-ultimate-langchain-series-environment-setup#heading-install-the-main-langchain-modules [16] openai: https://blog.davideai.dev/tag/openai [17] Developer: https://blog.davideai.dev/tag/developer [18] Python: https://blog.davideai.dev/tag/python [19] AI: https://blog.davideai.dev/tag/ai [20] langchain: https://blog.davideai.dev/tag/langchain

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-07-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 山行AI 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
    • 目录
      • 什么是LangChain?
        • 使用LangChain的先决条件
          • [12]设置完美的Python环境
            • [13]Python虚拟环境
          • [15]安装主要的LangChain模块
            • References
        • 声明
        相关产品与服务
        向量数据库
        腾讯云向量数据库(Tencent Cloud VectorDB)是一款全托管的自研企业级分布式数据库服务,专用于存储、检索、分析多维向量数据。该数据库支持多种索引类型和相似度计算方法,单索引支持千亿级向量规模,可支持百万级 QPS 及毫秒级查询延迟。腾讯云向量数据库不仅能为大模型提供外部知识库,提高大模型回答的准确性,还可广泛应用于推荐系统、自然语言处理等 AI 领域。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档