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

LangChain框架入门:概念介绍及环境配置

一、langchain框架及相关概念1、大语言模型LLM大语言模型的本质是基于 Transformer 架构中的解码器部分构建的生成式模型核心逻辑很简单 —— 根据上文输入的 token 序列预测下一个最可能的 token进而实现文本生成、补全等基础功能是所有 AI 生成应用的底层核心。2、chat model而 Chat Model聊天模型则是大语言模型的场景化优化版本我们日常在手机上使用的豆包、千问等智能对话工具都属于这类模型。它与基础 LLM 的核心区别在于更适配多轮对话场景具备原生的上下文记忆能力比如我们直接调用 OpenAI 的基础 API 接口时模型无法记住上一轮的对话内容每次调用都是独立的 “单次交互”但在豆包等聊天模型中我们可以连续提问、追问模型能关联历史交互信息实现连贯、自然的沟通体验这就是 Chat Model 针对对话场景的优化所在。3、langchain我们今天要重点讲的 LangChain 框架是一套专门用于开发 LLM 相关应用的开源工具集。它的核心价值就是把 “调用模型、编写提示词、解析输出结果、管理对话记忆” 等复杂且重复的开发流程拆分成一个个标准化、可复用的 “即插即用” 组件。这样一来我们无需从零造轮子就能快速搭建实用的 AI 应用高效解决开发中常见的「调用大模型但输出格式混乱」「重复编写提示词导致效率低下」「需要少样本引导模型输出符合预期结果」等痛点。二、前置准备1.1 环境搭建我使用的requirement.txt依赖aiofiles23.2.1 aiohttp3.9.1 aiosignal1.3.1 altair5.2.0 annotated-types0.6.0 anyio3.7.1 async-timeout4.0.3 attrs23.1.0 beautifulsoup44.12.2 blinker1.7.0 Brotli1.1.0 cachetools5.3.2 certifi2023.11.17 charset-normalizer3.3.2 click8.1.7 dataclasses-json0.6.3 distro1.8.0 duckduckgo-search3.9.9 exceptiongroup1.2.0 frozenlist1.4.0 gitdb4.0.11 GitPython3.1.40 greenlet3.0.1 h110.14.0 h24.1.0 hpack4.0.0 httpcore1.0.2 httpx0.25.2 hyperframe6.0.1 idna3.6 importlib-metadata6.8.0 Jinja23.1.2 jsonpatch1.33 jsonpointer2.4 jsonschema4.20.0 jsonschema-specifications2023.11.2 langchain0.1.9 langchain-community0.0.24 langchain-core0.1.26 langchain-openai0.0.7 langsmith0.1.6 lxml4.9.3 markdown-it-py3.0.0 MarkupSafe2.1.3 marshmallow3.20.1 mdurl0.1.2 multidict6.0.4 mypy-extensions1.0.0 numpy1.26.2 openai1.12.0 orjson3.9.15 packaging23.2 pandas2.1.3 Pillow10.1.0 protobuf4.25.1 pyarrow14.0.1 pydantic2.5.2 pydantic_core2.14.5 pydeck0.8.1b0 Pygments2.17.2 python-dateutil2.8.2 pytz2023.3.post1 PyYAML6.0.1 referencing0.31.1 regex2023.12.25 requests2.31.0 rich13.7.0 rpds-py0.13.2 six1.16.0 smmap5.0.1 sniffio1.3.0 socksio1.0.0 soupsieve2.5 SQLAlchemy2.0.23 streamlit1.31.1 tenacity8.2.3 tiktoken0.6.0 toml0.10.2 toolz0.12.0 tornado6.4 tqdm4.66.1 typing-inspect0.9.0 typing_extensions4.8.0 tzdata2023.3 tzlocal5.2 urllib32.1.0 validators0.22.0 wikipedia1.4.0 yarl1.9.3 zipp3.17.0这里我用以上版本的langchain作为环境演示langchain框架常见的用法。首先通过requirement.txt安装所需依赖建议使用虚拟环境避免版本冲突命令如下pip install -r requirements.txt1.2 API Key配置避坑重点申请api的操作在通过api调用模型的博客中以做介绍。本文使用阿里通义千问qwen-plus模型需先获取DashScope API Key获取地址推荐用环境变量管理避免硬编码泄露Windows右键「此电脑」→「属性」→「高级系统设置」→「环境变量」新建变量名DASHSCOPE_API_KEY值为你的API Key设置后重启IDE/终端确保环境变量生效。

相关文章:

LangChain框架入门:概念介绍及环境配置

一、langchain框架及相关概念 1、大语言模型 LLM(大语言模型)的本质,是基于 Transformer 架构中的解码器部分构建的生成式模型,核心逻辑很简单 —— 根据上文输入的 token 序列,预测下一个最可能的 token&#xff0c…...

深入了解JVM

堆的内存划分堆分为新生代和老年代,新生代占三分之一,老年代占三分之二 新生代又分成Eden和两个Survivor两个区,比例为8:1:1 新对象优先在Eden区分配,满了就会触发Minor GC,存活的放到幸存区&am…...

每日算法练习:LeetCode 169. 多数元素 ✅

大家好,我是你们的算法小伙伴。今天我们来练习一道经典的数组问题 ——LeetCode 169. 多数元素,它的最优解法「摩尔投票法」非常巧妙,是面试中的高频考点。题目描述给定一个大小为 n 的数组 nums,返回其中的多数元素。多数元素是指…...

下载亚马逊Corretto 17的方法(OpenJDK 17发行版)

Corretto 17的定义 Corretto 17是亚马逊(Amazon)提供的免费、多平台、生产就绪的OpenJDK 17发行版。作为OpenJDK的下游版本,它完全兼容Java SE标准,并提供长期支持(LTS),适用于企业级应用开发和…...

ACS X轴回零程序 项目实战版

代码INT iAxis REAL HomeVel REAL SearchLimitVel REAL HomeOffset REAL timeoutiAxis 0 HomeVel 5 SearchLimitVel 10 HomeOffset 157 timeout 50000VEL(iAxis) SearchLimitVel ACC(iAxis) VEL(iAxis) * 10 DEC(iAxis) VEL(iAxis) * 10 JERK(iAxis) VEL(iAxis) * 100…...

从零开始:构建具有幻觉缓解能力的AI原生应用

从零开始:构建具有幻觉缓解能力的AI原生应用 关键词:AI原生应用、幻觉缓解、从零开始构建、人工智能、应用开发 摘要:本文将带领大家从零开始构建具有幻觉缓解能力的AI原生应用。我们会先介绍相关背景知识,解释核心概念,接着阐述核心算法原理和具体操作步骤,通过数学模型…...

C++ 标准库提供了一组丰富的输入/输出功能

C 基本的输入输出 C 标准库提供了一组丰富的输入/输出功能,我们将在后续的章节进行介绍。本章将讨论 C 编程中最基本和最常见的 I/O 操作。 C 的 I/O 发生在流中,流是字节序列。如果字节流是从设备(如键盘、磁盘驱动器、网络连接等&#xff0…...

通常,当我们需要用到数字时,我们会使用原始的数据类型

C 数字 通常&#xff0c;当我们需要用到数字时&#xff0c;我们会使用原始的数据类型&#xff0c;如 int、short、long、float 和 double 等等。这些用于数字的数据类型&#xff0c;其可能的值和数值范围&#xff0c;我们已经在 C 数据类型一章中讨论过。 #include <iostrea…...

C++ 是一种静态类型的、编译式的、通用的、大小写敏感的、不规则的编程语言

要判断这个关于C的描述是否准确&#xff0c;我们可以从以下几个方面来分析&#xff1a; 1. 静态类型 静态类型语言要求在编译时确定变量的类型&#xff0c;且类型在程序运行过程中一般不会改变。C属于静态类型语言&#xff0c;和C、Java等类似&#xff0c;在声明变量时必须指定…...

OSVR - Open-Source Virtual Reality - 开源虚拟现实

OSVR - Open-Source Virtual Reality - 开源虚拟现实1. OSVR Organization2. OSVR Developer PortalReferenceshttp://www.osvr.org/ http://www.osvr.org/cn-zh/ 虚拟现实是一种重现实际或虚构环境&#xff0c;模拟用户在其中真实存在的沉浸式数字娱乐形式。这种体验还模拟感…...

Visual Studio 2015 - 格式化代码

Visual Studio 2015 - 格式化代码1. 格式化代码References1. 格式化代码 Ctrl K, Ctrl D - 格式化文档 Ctrl K, Ctrl F - 格式化选择 References [1] Yongqiang Cheng (程永强), https://yongqiang.blog.csdn.net/...

Altium生成Gerber及CAM350、DFM检查

完成 PCB 板图的设计并交给供应商进行打样或是量产时&#xff0c;一般不会直接给供应商 PCB 源文件&#xff0c;那就需要生成 Gerber文件。那么如何生成 Gerber文件及用 CAN350软件或华秋DFM 进行检查。 目录&#xff1a; 一、Gerber文件清单 二、Gerber各文件讲解 三、生成…...

SpringCloud动态路由利器--router4j

前言 本文介绍Java的动态路由中间件&#xff1a;router4j。router4j用于SpringCloud项目&#xff0c;它可以将某个url请求路由到指定的机器上&#xff0c;也可以将所有请求强制转到指定机器。 问题描述 Java后端在开发SpringCloud项目时如果同一个应用起了多个实例&#xff…...

深度解析对抗训练自编码器(Adversarial Autoencoder, AAE)

深度解析对抗训练自编码器&#xff08;Adversarial Autoencoder, AAE&#xff09; 在异常检测和生成模型领域&#xff0c;自编码器&#xff08;AutoEncoder&#xff09;通过压缩与重构学习数据的内在规律。然而&#xff0c;传统 AE 的隐藏空间&#xff08;Latent Space&#xf…...

Leetcode:单调栈系列

本人总结的单调栈大概有三类&#xff1a; 求右边第一个比该元素大&#xff08;小&#xff09;的元素求左边第一个比该元素大&#xff08;小&#xff09;的元素求两边比该元素大&#xff08;小&#xff09;的元素 前两类一般是中等难度的题&#xff0c;完成一次单调栈即可&…...

联合循环——23 电厂建筑屋顶防雷,盘柜中性点地排设计说明

一、屋顶防雷 &#xff08;1&#xff09;放电类型&#xff1a; 90%云对地放电是负极性&#xff0c;总的来说&#xff0c;放电开始于云端的负电荷而扩展到正电荷的地面。然而&#xff0c;大量的放电现象发生在云层之间。 &#xff08;2&#xff09;雷电波幅&#xff1a; 80%雷击…...

【广度优先搜索】【分类讨论】900. 最佳运动员的比拼回合

作者推荐 视频算法专题 本文涉及知识点 广度优先搜索 分类讨论 LeetCode : 1900. 最佳运动员的比拼回合 n 名运动员参与一场锦标赛&#xff0c;所有运动员站成一排&#xff0c;并根据 最开始的 站位从 1 到 n 编号&#xff08;运动员 1 是这一排中的第一个运动员&#xff…...

【计网】什么是移动计算?中国Java之父余胜军被刷爆的CDN又是什么?

目录 一、移动计算 1. 理解移动计算 2. 应用实例 二、数据缓存和内容分发网络&#xff08;CDN&#xff09; 1. 数据缓存 2. 内容分发网络&#xff08;CDN&#xff09; 3. CDN与数据缓存的联系 三、余胜军开了个网站&#xff0c;说CDN被刷爆了&#xff0c;他是什么意思&…...

史上最全msys2下载配置操作步骤

史上最全msys2下载配置操作步骤一&#xff0c;MSYS2简介二&#xff0c;软件下载三&#xff0c;pacman配置四&#xff0c;总结&#xff01;推荐参考B站视频&#xff1a;《3分钟搞定msys2的安装与配置》 一&#xff0c;MSYS2简介 面向Windows的软件分发与构建平台 MSYS2是一个…...

wow-iot 编码指南

项目地址&#xff1a;https://github.com/wow-iot3/wow_linux_eval 1、命名规则 &#xff08;1&#xff09;数据类型整数类型使用<stdint.h>内定义格式&#xff0c;约束为&#xff1a;int8_t/uint8_tint16_t/uint16_tint32_t/uint32_tint64_t/uint64_t&#xff08;2&…...

【大数据】分布式存储系统GFS与HDFS、高可用与高容错解析

目录 一、Chunk & Block 二、Master & Chunk Server&#xff1a;存储与计算的解耦&#xff1f; 1. 不准确&#xff01; 2. 调度与存储处理的解耦 解耦的具体含义 为什么这样设计&#xff1f; 3. NameNode & DataNode NameNode&#xff08;元数据管理&…...

PyCaret高性能计算:GPU加速训练指南

PyCaret高性能计算&#xff1a;GPU加速训练指南 【免费下载链接】pycaret An open-source, low-code machine learning library in Python 项目地址: https://gitcode.com/gh_mirrors/py/pycaret PyCaret是一个开源的低代码机器学习库&#xff0c;通过GPU加速功能可以显…...

pydata-book沟通技巧:如何向非技术人员解释数据分析结果

pydata-book沟通技巧&#xff1a;如何向非技术人员解释数据分析结果 【免费下载链接】pydata-book wesm/pydata-book: 这是Wes McKinney编写的《Python for Data Analysis》一书的源代码仓库&#xff0c;书中涵盖了使用pandas、NumPy和其他相关库进行数据处理和分析的实践案例和…...

从Swin到VMamba:视觉Transformer的效率革命

从Swin到VMamba&#xff1a;视觉Transformer的效率革命 【免费下载链接】VMamba 项目地址: https://gitcode.com/gh_mirrors/vm/VMamba 在计算机视觉领域&#xff0c;设计计算效率高的网络架构一直是持续的需求。随着视觉Transformer的发展&#xff0c;从Swin Transfor…...

终极SSH文件系统指南:sshfs如何让远程文件访问像本地一样简单

终极SSH文件系统指南&#xff1a;sshfs如何让远程文件访问像本地一样简单 【免费下载链接】sshfs File system based on the SSH File Transfer Protocol 项目地址: https://gitcode.com/gh_mirrors/ssh/sshfs sshfs是一款基于SSH文件传输协议的文件系统客户端&#xff…...

IEC 61850标准协议解读 5.基于Java的MMS实现 lec61850bean

专栏文章目录 第一章 IEC 61850标准协议解读 0.导言 第二章 IEC 61850标准协议解读 1.建模讲解 第三章 IEC 61850标准协议解读 2.基于Java的MMS实现 目录 专栏文章目录 前言 1 依赖库引入 2 创建服务端 3 创建客户端 4 读写模型 4.1 服务端读写 4.2 客户端读写 5.报告 6 文件服…...

wow-time时间操作说明

wow-time文件说明 项目地址&#xff1a;https://github.com/wow-iot3/wow_linux_eval本文件的功能主要用于处理时间操作&#xff0c;主要涉及时间信息获取(普通格式与cp56格式)、设置时间、格式转换、获取时间戳、获取毫秒数&#xff1b; 获取时间信息 int wow_time_get_cp56(C…...

探秘 ESCRCPY:一款高效便捷的无线屏幕镜像工具

探秘 ESCRCPY&#xff1a;一款高效便捷的无线屏幕镜像工具 【免费下载链接】escrcpy &#x1f4f1; Graphical Scrcpy to display and control Android, devices powered by Electron. | 使用图形化的 Scrcpy 显示和控制您的 Android 设备&#xff0c;由 Electron 驱动。 项目…...

100元打造便携显示器:PocketLCD完整物料清单与采购指南

100元打造便携显示器&#xff1a;PocketLCD完整物料清单与采购指南 【免费下载链接】PocketLCD 带充电宝功能的便携显示器 项目地址: https://gitcode.com/gh_mirrors/po/PocketLCD PocketLCD是一款带充电宝功能的便携显示器开源项目&#xff0c;让你花最少的成本拥有一…...

CGAL计算几何算法库完全指南:从入门到精通的终极教程

CGAL计算几何算法库完全指南&#xff1a;从入门到精通的终极教程 【免费下载链接】cgal The public CGAL repository, see the README below 项目地址: https://gitcode.com/gh_mirrors/cg/cgal CGAL&#xff08;Computational Geometry Algorithms Library&#xff09;…...