AI项目 简述Windows本地下载运行LangChain | 豆包MarsCode AI刷题

330 阅读3分钟

本文是关于如何获取chatGTP的API,以及Windows系统中创建虚拟环境和在本地下载运行LangChain的比较基础的一些操作,内含遇到的问题和解决方法

(内容较基础且仅供参考,每个人遇到的问题可能都不一样,本文仅仅介绍了我遇到的问题和我的解决方法)

1.获取chatCPT的API

我们可选择的API有很多,国内国外的一些大模型都有API。但因为我们的《掘金小册-LangChain 实战课》用的是chatGPT,所以我用的也是GPT的API;我用了两种方法来获取GPT的API。

1.去GPT的官网购买官方的API

直接去官网购买API可能是最容易想到的方法,但是却是最难实行的。因为要爬梯子、创建GPT账号、手机号验证(国内手机号不支持)、还需要海外的VISA卡。我也是试了好久最终还是放弃了。

image.png

2.在GitHub上找开源API资源

本着学习的性质,我们大可不必在官网上购买API。GitHub上就有免费的开源的转发API,网址:(github.com/chatanywher…

image.png

2.创建虚拟环境

1.安装Python版本

python的安装就不赘述了。 但是还是要提醒python版本尽量选择3.9.0~3.12.0,因为最新版本3.13.0好像还不支持LangChain,反正我刚开始配置的3.13.0版本,下载langchain一直出错,来回折腾了好几天。后来换成3.10.0就好了。

2.建立文件夹创建虚拟环境

(1)、建立langchain项目的文件夹 如图我建的文件夹名字就是langchain,然后复制此文件夹的路径D:\VS Code\langchain(这是我的路径),

image.png (2)、进入终端 以PowerShell为例:打开电脑的开始菜单,输入powershell,进入Windows PowerShell。

image.png (3)、进入后输入下列代码

cd "D:\VS Code\langchain"

这会导航到刚才创建的文件夹。

image.png (4)、使用以下命令创建虚拟环境

python -m venv langchain_env

这会创建一个名为 langchain_env 的虚拟环境文件夹,其中包含 Python 和安装包的独立副本。

(5)、激活虚拟环境

使用以下命令在Windows上激活刚刚创建的虚拟环境:

.\langchain_env\Scripts\Activate

image.png 这样我们就完成了虚拟环境的创建和激活,下面我们就可以放心的下载langchain以及有关的一些组件。

3.下载LangChain以及相关组件

在虚拟环境中,使用 pip 安装 LangChain:

pip install langchain

安装完成后使用以下代码可以查看是否安装完,以及安装的版本

pip show langchain

image.png 我们可以看到安装完成了安装的是langchain-0.3.7版本,如果不是最新版本还可以使用以下代码进行更新:

pip install --upgrade langchain

然后使用以下代码下载openai

pip install openai

下载完成后同样可以使用show来查看版本(注意:尽量下载openai-1.54.0以上的版本,后期有很多langchain依赖项工具要求openai版本必须1.54.0版本以上)

pip show openai

4.测试

打开所用的编译器,在建立虚拟环境的文件夹langchain下创建.py文件编译运行,具体代码和结果如下:

import os
from openai import OpenAI
os.environ["OPENAI_API_KEY"] = 'your_api_key'
os.environ["OPENAI_BASE_URL"] = 'your base url'
client = OpenAI()
#test
response = client.chat.completions.create(
    model='gpt-3.5-turbo',
    temperature=0.5,
    max_tokens=100,
    messages=[{"role": "user", "content": "请给我的花店起5个不同的参考名字"}],
)
print(response.choices[0].message.content)

image.png 这样,就完成了简单的本地下载和运行LangChain。

(我也是在训练营才刚接触langchain,还有很多不懂的地方,若文章里面出现了什么错误欢迎大家评论区指正~)