mkdir langchain-llm-app
cd langchain-llm-app
# 用vscode 打开当前目录
code .
在macOS上通过终端打开Visual Studio Code(VS Code),您可以按照以下步骤操作:
-
安装VS Code:首先,确保您已经在Mac上安装了Visual Studio Code。
-
添加VS Code到PATH:打开VS Code后,在命令面板(通过按下Cmd+Shift+P)中搜索并执行“Shell Command: Install ‘code’ command in PATH”命令。这将允许您通过终端命令行直接启动VS Code。
-
通过终端打开VS Code:完成上述步骤后,您可以在终端中使用code命令来打开VS Code。例如,要打开当前目录,可以使用命令code .。要打开特定文件,可以使用code filename。
确保您的VS Code版本是最新的,因为在某些旧版本中,安装shell命令的步骤可能有所不同。
$ python --version
Python 3.10.4
zgpeace on zgpeaces-MBP in ~/Workspace/LLM/langchain-llm-app
$ python -m venv .venv
zgpeace on zgpeaces-MBP in ~/Workspace/LLM/langchain-llm-app
$ source .venv/bin/activate
(.venv) zgpeace on zgpeaces-MBP in ~/Workspace/LLM/langchain-llm-app
在Windows上,您使用 .venv/Scripts/Activate.ps1
来激活虚拟环境,这是针对PowerShell的命令。在macOS上,对应的命令有所不同。如果您使用的是bash或zsh(macOS的默认shell),应使用以下命令:
source .venv/bin/activate
这个命令将激活名为.venv的虚拟环境
$ pip install langchain openai streamlit python-dotenv
这行代码是用于安装Python的几个库。下面是每个库的简单解释:
-
pip install: 这是Python的包管理器pip的命令,用于安装Python库。
-
langchain: 这是一个Python库,用于语言链处理。
-
openai: 这是OpenAI的官方Python库,用于与OpenAI的API进行交互。
-
streamlit: 这是一个Python库,用于快速创建和共享数据应用。
-
python-dotenv: 这是一个Python库,用于读取.env文件中的环境变量。
这行代码将会安装这些库,使得你可以在你的Python项目中使用它们。
Successfully installed altair-5.1.2 blinker-1.7.0 click-8.1.7 gitdb-4.0.11 gitpython-3.1.40 importlib-metadata-6.8.0 markdown-it-py-3.0.0 protobuf-4.25.1 pyarrow-14.0.1 pydeck-0.8.1b0 pygments-2.16.1 python-dotenv-1.0.0 rich-13.7.0 smmap-5.0.1 streamlit-1.28.2 toolz-0.12.0 tzlocal-5.2 validators-0.22.0 zipp-3.17.0
创建.env
在环境变量中设置OPENAI_API_KEY,比如MacOS的文件.zshrc
中
OPENAI_API_KEY = os.getenv("OPENAI_API_KEY")
创建 main.py
from langchain.llms import OpenAI # 导入Langchain库中的OpenAI模块
from dotenv import load_dotenv # 导入dotenv库,用于加载环境变量
load_dotenv() # 加载.env文件中的环境变量
def generate_pet_name(): # 定义一个函数generate_pet_name
llm = OpenAI(temperature=0.7) # 创建OpenAI模型的实例,设置temperature参数为0.7以调整生成的多样性
# 使用OpenAI模型生成宠物名字。这里的字符串是向模型提供的提示,模型会基于此生成宠物名字。
name = llm("I have a dog pet and I want a cool name for it. Suggest me five cool names for my pet.")
return name # 返回生成的名字
# 当该脚本作为主程序运行时,执行以下代码
if __name__ == "__main__":
print(generate_pet_name()) # 调用generate_pet_name函数,并打印返回的结果
运行:
$ python main.py
1. Rover
2. Patch
3. Max
4. Sassy
5. Shadow
参考
https://youtu.be/lG7Uxts9SXs?si=H1CISGkoYiKRSF5V