Langchain模板-LangChainTemplates 讲解及应用

langchain官方链接:https://github.com/langchain-ai/langchain/tree/master/templates

其他相关链接:

https://python.langchain.com/docs/templates

https://templates.langchain.com/

Langchain模板,提供一系列的易于部署的参考架构,为开发者提供了轻松快速构建大模型应用的能力,任何人都可以使用,方便快速开发和投入生产。是一种创建、共享、维护、下载和自定义链和代理的方法。Langchain模板是一组端到端的模板,用于创建不同类型的应用程序,使用同一的格式,便于使用LangServe部署。也可以发布,其他项目或者开发者可以重用成果。

关键字:模板 脚手架 方便抄作业搬砖

LangChainTemplates的动机:这些模板可以是链式或者代理式,并代表全功能的上下文感知推理的应用程序。

使用:创建一个项目,其中包含一个链文件夹,然后将templates下载到该应用程序项目中。可以轻松检查和修改链,然后使用langserve部署整个项目。

LangChainTemplates 案例

接下来将介绍一个LangChainTemplates的简单应用,本文以pirate-speak 海盗口音为例子。

案例链接:https://github.com/langchain-ai/langchain/tree/master/templates/pirate-speak

这个案例的功能是:将输入文本转换为海盗口语输出。

以下为安装代码,在Anaconda中为安装环境:

(base) C:\Windows\System32>conda info --envs
(base) C:\Windows\System32>conda activate gpt-researcher
(gpt-researcher) C:\Windows\System32>E:
(gpt-researcher) E:\>cd \Text-to-sql\git\pergit_wangning\code\LLM
(gpt-researcher) E:\Text-to-sql\git\pergit_wangning\code\LLM>langchain app new app-sot --package skeleton-of-thought
(gpt-researcher) E:\Text-to-sql\git\pergit_wangning\code\LLM>cd app-sot
# 修改 app/server.py 文件
# from pirate_speak.chain import chain as pirate_speak_chain
# add_routes(app, pirate_speak_chain, path="/pirate-speak")
# 修改完成运行程序:
(gpt-researcher) E:\Text-to-sql\git\pergit_wangning\code\LLM\app-sot>langchain serve

运行成功,显示:

访问:http://127.0.0.1:8000/pirate-speak/playground/

如下显示:

这只是其中一个模板案例,其他的可自行测试

 LangChainTemplates在程序中的引用

LangChainTemplates提供了一系列模板供我们使用,为了方便,开发时也可以直接引用,以刚刚的项目为案例。

代码结构如下所示:

packages中为pirate-speak代码,project为项目代码:

查看pirate-speak核心代码为:

# if you update this, you MUST also update ../pyproject.toml
# with the new `tool.langserve.export_attr`
chain = _prompt | _model

本质为一个成熟的chain,所以在自己代码中可以直接调用。

以下是代码调用案例:

# Auther : auserwn
# -*- codeing = utf-8 -*-
# @Time : 2024/1/5 18:01
# @Auther : auser
# @file : .py
# @software : PyCharm
from pirate_speak.chain import chain as pirate_speak_chain

question="你好"
output = pirate_speak_chain.invoke({"text": question})
print(output)

显示输出:

D:\Anaconda\envs\llm\python.exe E:/Text-to-sql/git/pergit_wangning/code/LLM2/my-app/project/apply_ps.py
content='嘿嘿,喂喂!'

进程已结束,退出代码0

其他案例慢慢探索。LangChainTemplates对环境要求太恶心了,建议使用conda新建一个环境研究成熟再使用。

  • 17
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值