GPT实战系列-LangChain实现简单链

news/2024/7/24 6:53:58 标签: gpt, langchain, Chain, 简单链, 通义千问, qwen

GPT实战系列-LangChain实现简单链

LangChain

GPT实战系列-LangChain如何构建基通义千问的多工具链

GPT实战系列-构建多参数的自定义LangChain工具

GPT实战系列-通过Basetool构建自定义LangChain工具方法

GPT实战系列-一种构建LangChain自定义Tool工具的简单方法

GPT实战系列-搭建LangChain流程简单应用

GPT实战系列-简单聊聊LangChain搭建本地知识库准备

GPT实战系列-LangChain + ChatGLM3构建天气查询助手

GPT实战系列-大模型为我所用之借用ChatGLM3构建查询助手

GPT实战系列-简单聊聊LangChain

大模型查询工具助手之股票免费查询接口

随着OpenAI的GPT-4这样的大型语言模型(LLMs)已经风靡全球,现在让它们自动执行各种任务,如回答问题、翻译语言、分析文本等。LLMs是在交互上真正体验到像“人工智能”。

如何管理这些模块呢?

LangChain在这方面发挥重要作用。LangChain使构建由LLMs驱动的应用程序变得简单,使用LangChain,可以在统一的界面中轻松与不同类型的LLMs进行交互,管理模型版本,管理对话版本,并将LLMs连接在一起。

简单链

要实现一个链(chain),首先需要做一些配置初始化的工作,导入langchain相关的包。

from langchain.prompts import ChatPromptTemplate
from langchain.chat_models import ChatOpenAI
from langchain.schema.output_parser import StrOutputParser
from langchain_community.llms import Tongyi

实现代码,创建Prompt模版,配置大模型,以及输出解析函数。

#通过prompt模板创建一个prompt
prompt = ChatPromptTemplate.from_template(
    "请为我写一首关于 {topic}的诗。"
)

model = Tongyi( max_tokens=2048)

output_parser = StrOutputParser()
 
#创建一个简单链
chain = prompt | model | output_parser

response = chain.invoke({"topic": "大海"})
print(response)

简单链路:

ChatPromptTemplate(input_variables=['topic'], messages=[HumanMessagePromptTemplate(prompt=PromptTemplate(input_variables=['topic'], template='请为我写一首关于 {topic}的诗。'))]) 
| ChatOpenAI(client=<openai.resources.chat.completions.Completions object at 0x0000011D5F713340>, async_client=<openai.resources.chat.completions.AsyncCompletions object at 0x0000011D5EF0CEB0>,  openai_proxy='') 
| StrOutputParser()

调用效果:

题目:蔚蓝的赞歌——致大海

大海,你是蔚蓝的诗篇,
浩渺无垠,波涛汹涌的画卷。
你的深邃藏着宇宙的秘密,
你的宽广,是世界的心跳和呼吸。

你的晨曦,如新娘的面纱轻盈,
阳光洒落,万道金光闪烁晶莹。
你的黄昏,是诗人的情书,
晚霞渲染,温暖而悠长的梦境。

你的浪花,是自由的舞者,
跳跃、翻滚,诠释生命的狂热。
你的潮声,是永恒的交响乐,
低吟、高唱,唤醒沉睡的海岸线。

你的胸怀包容万物,无畏无惧,
无论是小舟还是巨轮,都在你怀抱里游弋。
你的力量,有时温柔,有时狂暴,
教诲着生命,坚韧与柔情并存的奥妙。

大海,你是神秘的哲人,
用潮起潮落,讲述岁月的流转。
你是孕育生命的摇篮,
赋予万物生机,滋养着大地的脉络。

你的蔚蓝,深邃而广阔,
如同天空的倒影,连接着天际的尽头。
大海,你是梦想者的追寻,
在你的怀抱,我们找寻着自我,追逐着希望。

哦,大海,你的壮丽无法言表,
你的魅力,让心灵得以翱翔。
你是大自然的赞歌,是生命的颂扬,
在你的怀抱,我们感受到那份无尽的宽广。

再次写诗

海之颂:蔚蓝的梦幻交响曲

大海,你是一首无尽的诗,
蔚蓝的韵律,波涛的篇章。
你的深邃,如同宇宙的秘密,
藏着星辰,蕴藏着生命的起源。

浩渺的蔚蓝,无边无际的宽广,
你的怀抱,孕育着万千生灵。
浪花翻滚,是你的欢笑与泪水,
每一滴水珠,都诉说着故事的痕迹。

海鸥翱翔,破晓的旋律在空中回荡,
潮起潮落,奏响着自然的交响。
你的声音,是宁静中的低语,
是狂风暴雨中的坚韧歌唱。

你的颜色,随着天空的变幻而变幻,
清晨的淡蓝,黄昏的金黄。
你是画家的调色盘,是诗人的灵感,
在你的面前,一切描绘都显得苍白。

大海,你是神秘的哲人,
教会我们宽恕与包容的力量。
你的深沉,犹如智慧的眼睛,
洞悉世事,却始终保持沉默。

你的愤怒,如狂狮般震撼天地,
提醒我们,尊重与敬畏的必要。
而当风暴过后,你又恢复平静,
留下一片宁静,抚慰受伤的心灵。

大海,你是一首永恒的赞歌,
在你的面前,人类如此渺小。
你的壮丽,激发我们的梦想,
让我们向往,那未知的彼岸。

让我们倾听,你的潮汐呼吸,
感受你的脉搏,跳动在灵魂深处。
大海,你是生命的摇篮,是梦想的港湾,
在你的怀抱里,我们永远追寻,那蔚蓝的梦幻。

LangChain是一个Python框架,可以使用LLMs构建应用程序。它与各种模块连接,使与LLM和提示管理,一切变得简单。

觉得有用 收藏 收藏 收藏

点个赞 点个赞 点个赞

End

GPT专栏文章:

GPT实战系列-实战Qwen通义千问在Cuda 12+24G部署方案_通义千问 ptuning-CSDN博客

GPT实战系列-ChatGLM3本地部署CUDA11+1080Ti+显卡24G实战方案

GPT实战系列-Baichuan2本地化部署实战方案

GPT实战系列-让CodeGeeX2帮你写代码和注释_codegeex 中文-CSDN博客

GPT实战系列-ChatGLM3管理工具的API接口_chatglm3 api文档-CSDN博客

GPT实战系列-大话LLM大模型训练-CSDN博客

GPT实战系列-LangChain + ChatGLM3构建天气查询助手

GPT实战系列-大模型为我所用之借用ChatGLM3构建查询助手

GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型,到底做了什么?(二)

GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型,到底做了什么?(一)

GPT实战系列-ChatGLM2模型的微调训练参数解读

GPT实战系列-如何用自己数据微调ChatGLM2模型训练

GPT实战系列-ChatGLM2部署Ubuntu+Cuda11+显存24G实战方案

GPT实战系列-Baichuan2等大模型的计算精度与量化

GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHF

GPT实战系列-探究GPT等大模型的文本生成-CSDN博客


http://www.niftyadmin.cn/n/5421498.html

相关文章

蓝桥杯嵌入式省赛模板构建——UART接收

单片机接收电脑发送的数据 程序设计步骤 1.配置USART1的PA9,PA10为串口收发引脚 2.配置USART的波特率、奇偶校验位、停止位、时钟 3.勾选NVIC Setting中的使能USART1的中断 4.将source生成的.c和.h文件移植到目标工程 4.1 USART初始化部分需要移植NVIC初始化内容 4.2 在…

通信总线协议之CAN-FD协议详解

文章目录 通信总线之CAN-FD总线协议详解1. CAN-FD 简介1.1 什么是CAN FD1.2 CAN FD的特点 2. CAN-FD总线协议2.1 帧起始2.2 仲裁段2.3 控制段2.4 数据段2.5 CRC段2.6 ACK段2.7 帧结束 3. 如何从传统的CAN升级到CAN FD 通信总线之CAN-FD总线协议详解 1. CAN-FD 简介 1.1 什么是…

SpringBoot中定时任务、corn表达式

SpringBoot中定时任务、corn表达式 corn表达式网站&#xff1a;https://cron.qqe2.com/ 方法上加上Scheduled(cron表达式) 启动类上加上EnableScheduling 示例 启动类上 启动类加上EnableScheduling开启定时任务。 SpringBootApplication EnableScheduling public class…

PiflowX-TopN组件

TopN组件 组件说明 按列排序的N个最小值或最大值。 有界性 batch streaming 计算引擎 flink 组件分组 common 端口 Inport&#xff1a;默认端口 outport&#xff1a;默认端口 组件属性 名称展示名称默认值允许值是否必填描述例子column_listcolumn_list“*”无否查…

ChatGPT引领智能对话:微信小程序的新潮玩法

1.引言 ChatGPT是由OpenAI开发的基于深度学习的自然语言处理模型&#xff0c;它在人工智能领域具有重要的影响力。ChatGPT基于大规模的文本数据进行训练&#xff0c;能够生成高质量的自然语言文本&#xff0c;包括对话、文章等。它的影响力主要体现在以下几个方面&#xff1a;…

linux系统docker历史以及对虚拟机的区别

docker历史及与容器的区别 docker容器历史对paas降维打击容器和虚拟机的区别容器应用场景 docker容器历史 容器概念始于 1979 年提出的 UNIX chroot&#xff0c;它是一个 UNIX 操作系统的系统调用&#xff0c;将一个进程及其子进程的根目录改变到文件系统中的一个新位置&#…

ChatGLM:CPU版本如何安装和部署使用

前段时间想自己部署一个ChatGLM来训练相关的物料当做chatgpt使用&#xff0c;但是奈何没有gpu机器&#xff0c;只能使用cpu服务器尝试使用看看效果 我部署的 Chinese-LangChain 这个项目&#xff0c;使用的是LLM&#xff08;ChatGLM&#xff09;embedding(GanymedeNil/text2vec…

鸿蒙App基础

基础说明 .1、应用模型 .1.1、构成要素 应用组件 应用组件是应用的基本组成单位&#xff0c;是应用的运行入口。用户启动、使用和退出应用过程中&#xff0c;应用组件会在不同的状态间切换&#xff0c;这些状态称为应用组件的生命周期。应用组件提供生命周期的回调函数&…