前言
对LangChain 有初步认识那该实操了
申请API KEY
根据AI练中学的说明可以注册火山方舟账号 获取豆包API账号 新用户提供50wtokens
创建API Key账号:
具体申请步骤:
连接
根据上述步骤获得API_Key、base_url、model_endpoint并将其配置在换进变量中,在命令行中执行 source ~/.cloudiderc
export OPENAI_API_KEY=<YOUR_API_KEY>
export OPENAI_BASE_URL=<YOUR_MODEL_BASE_URL>
export LLM_MODELEND=<YOUR_MODEL_ENDPOINT>
之后就都可以使用自己豆包模型API运行代码
本地使用
创建相应的项目环境并配置LangChain环境将,将API_Key、base_url、model_endpoint配置进项目,不建议直接将API_Key暴露代码中。
我是将其放入.env文件,并将其创建在项目根目录下,确保能够正确调用。对了export语句不适用于.ven文件
建议在.gitignore中添加.ven确保不会上传发到版本控制系统中,确保API_Key不会外露,保证安全,避免不必要的损失。
实操
应用 1:情人节玫瑰宣传语
实例化语言模型 llm,通过环境变量获取API的key、base_url和model名称,并设置生成上限token数量。
import os
from langchain_openai import ChatOpenAI
llm = OpenAI(model_name="gpt-3.5-turbo-instruct",max_tokens=200)
llm = ChatOpenAI(model=os.environ.get("LLM_MODELEND"))
text = llm.predict("请给我写一句情人节红玫瑰的中文宣传语")
print(text)
生成结果
应用2:海报文案生成器
(1)安装需要的包
①标准库os和requests,用于访问环境变量和进行网络请求。
②PIL库处理图像,transformers 库用于加载HuggingFace的图像字幕生成模型。
③LangChain的相关类用于定义工具和初始化Agent。
(2)代码
①初始化图像字幕生成工具:HuggingFace中的image-caption模型
②定义LangChain图像字幕生成工具:ImageCapTool
③初始化并运行LangChain Agent
代码见掘金《LangChain实战棵》小册
生成结果:
在运行这段代码之前,需要先更新LangChain到最新版本,安装HuggingFace的Transformers库(开源大模型工具),并安装 Pillow(Python图像处理工具包)和 PyTorch(深度学习框架),在本地运行许需要提前将环境配置完好,AI练中学已经配置好,不需要再手动安装,节省配置环境时间。
总结
提示文本(prompt)是用户向大模型提出的问题或指令。它的质量直接影响到模型生成的答案
在LangChain中,代理(agent)是一个能够自主执行任务的实体。它可以访问各种工具(如搜索引擎、数据库等),根据用户的需求选择合适的工具来完成任务。代理的引入,使得大模型不再仅仅是生成文本,而是可以与外部世界交互,执行更复杂的任务。
AgentExecutor Chain是LangChain中用来执行代理任务的链。它将代理、工具和语言模型连接起来,形成一个完整的任务执行流程。
大模型通过模式匹配、概率计算和上下文理解来“思考”。LangChain中的代理可以自主执行任务,AgentExecutor Chain则负责调度工具,实现更复杂的任务。通过合理设计提示文本和利用代理,我们可以充分发挥大模型的潜力,实现更多的应用场景。