当前位置: 首页 > news >正文

langchain新版本v0.2文档:tutorials(1)

一、文档地址

Tutorials | 🦜️🔗 LangChain

二、Tutorials

快速上手案例

1. 基础

1.1 使用LCEL构建简单的LLM应用程序

案例说明

将把文本从英语翻译成另一种语言。案例中会用到language models语言模型、PromptTemplates模板、 OutputParsers输出解析器、LangChain Expression Language (LCEL)langchain表达语言、LangSmith调速器、LangServe服务器

其他说明

(1)文档中的案例采用了openai模型,作者学习时采用的是本地部署的qwen。详细部署参考win10部署本地大模型langchain+ollama_win10如何运行大模型-CSDN博客

(2)文档中采用的是chatModel(聊天模型,交互式的对话)作为案例,与之对应的是LLM(大语言模型,文本生成和补全)。接下来会展示二者输出的差异。

from langchain_community.llms import Ollama
from langchain_community.chat_models import ChatOllama
from langchain_core.messages import HumanMessage,SystemMessage
from langchain_core.output_parsers import StrOutputParser
from langchain_core.prompts import ChatPromptTemplate
# 使用llm
llm = Ollama(model="qwen:7b")
# 使用chatmodel
model = ChatOllama(model="qwen:7b")
# 使用格式化+链式
parser=StrOutputParser()
chain=model|parser
# 固定messages
messages=[SystemMessage(content="Translate the following from English into Chinese"),HumanMessage(content="hi")
]
# 使用模板
system_template = "Translate the following into {language}:"
human_template = "{text}"
prompt_template = ChatPromptTemplate.from_messages([("system", system_template),("user", human_template)]
)
# langchain表达式;也就是采用“|”连接上下的component
chain1=prompt_template|chain
# 输出
print(llm.invoke(messages))
#你好!
print(model.invoke(messages))
# content = '你好!有什么我可以帮助你的吗?'
# response_metadata = {'model': 'qwen:7b', 'created_at': '2024-07-13T03:32:15.601267Z',
#                      'message': {'role': 'assistant', 'content': ''}, 'done': True, 'total_duration': 6628953700,
#                      'load_duration': 12998500, 'prompt_eval_count': 19, 'prompt_eval_duration': 3899168000,
#                      'eval_count': 9, 'eval_duration': 2712232000}
# id = 'run-5aa393a8-a19b-42bf-9021-3ad8a1512484-0'
print(chain.invoke(messages))
# 你好!有什么我可以帮助你的吗?
print(chain1.invoke({"language":"中文","text":"hi"}))
#你好!有什么我能帮助你的吗?

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【Neo4j】实战 (数据库技术丛书)学习笔记
  • Ubuntu 22.04.4 LTS (linux) 安装certbot 免费ssl证书申请 letsencrypt
  • python条件
  • 【Android面试八股文】请描述一下 android 的系统架构?
  • WSL-Ubuntu20.04部署环境配置
  • Web 性能入门指南-1.1 网站速度与用户幸福感的心理学
  • 51单片机5(GPIO简介)
  • Go:基本变量与数据类型
  • Excel如何才能忽略隐藏行进行复制粘贴?
  • STM32MP135裸机编程:烧录程序到EMMC的方法
  • Redis 三大高可用模式:主从、哨兵、集群
  • frameworks 之FallbackHome
  • PMP–冲刺–总结--高频考点
  • 缺血性脑卒中的常见并发症
  • gitlab 搭建使用
  • Google 是如何开发 Web 框架的
  • [微信小程序] 使用ES6特性Class后出现编译异常
  • iOS仿今日头条、壁纸应用、筛选分类、三方微博、颜色填充等源码
  • Java新版本的开发已正式进入轨道,版本号18.3
  • markdown编辑器简评
  • Odoo domain写法及运用
  • Python利用正则抓取网页内容保存到本地
  • windows-nginx-https-本地配置
  • 前端 CSS : 5# 纯 CSS 实现24小时超市
  • 区块链将重新定义世界
  • 实现菜单下拉伸展折叠效果demo
  • CMake 入门1/5:基于阿里云 ECS搭建体验环境
  • ​MySQL主从复制一致性检测
  • ​如何使用ArcGIS Pro制作渐变河流效果
  • ​用户画像从0到100的构建思路
  • # wps必须要登录激活才能使用吗?
  • #[Composer学习笔记]Part1:安装composer并通过composer创建一个项目
  • #前后端分离# 头条发布系统
  • $redis-setphp_redis Set命令,php操作Redis Set函数介绍
  • (04)Hive的相关概念——order by 、sort by、distribute by 、cluster by
  • (2024,Vision-LSTM,ViL,xLSTM,ViT,ViM,双向扫描)xLSTM 作为通用视觉骨干
  • (26)4.7 字符函数和字符串函数
  • (6) 深入探索Python-Pandas库的核心数据结构:DataFrame全面解析
  • (react踩过的坑)antd 如何同时获取一个select 的value和 label值
  • (不用互三)AI绘画工具应该如何选择
  • (二)windows配置JDK环境
  • (附源码)ssm高校社团管理系统 毕业设计 234162
  • (函数)颠倒字符串顺序(C语言)
  • (回溯) LeetCode 78. 子集
  • (剑指Offer)面试题34:丑数
  • (接口自动化)Python3操作MySQL数据库
  • (六)vue-router+UI组件库
  • (学习日记)2024.04.04:UCOSIII第三十二节:计数信号量实验
  • (转)shell中括号的特殊用法 linux if多条件判断
  • (转)程序员疫苗:代码注入
  • (转)视频码率,帧率和分辨率的联系与区别
  • **《Linux/Unix系统编程手册》读书笔记24章**
  • .libPaths()设置包加载目录
  • .NET 实现 NTFS 文件系统的硬链接 mklink /J(Junction)
  • .NET/C# 使用反射调用含 ref 或 out 参数的方法