首页 > 其他分享 >LangChain(一)——构建简单的对话

LangChain(一)——构建简单的对话

时间:2024-12-26 19:27:18浏览次数:6  
标签:prompt chatLLM langchain content API 对话 LangChain 构建

目录

1、安装LangChain

在这里插入图片描述

首先安装LangChain相关包,运行:

pip install langchain
pip install langchain_community
pip install langchain_core

langchain

  • 主要功能
    • 这是 LangChain 的核心包,用于构建和运行语言模型应用程序。
    • 提供了与大语言模型交互的基本工具,以及各种组件(如链式调用、内存、提示工程等)。
  • 功能模块
    • PromptTemplates:创建和管理自定义提示。
    • Chains:将多个步骤(如 API 调用、模型执行)链接在一起。
    • Memory:实现会话记忆。
    • Agents:构建能根据任务动态调用工具的代理。
    • Toolkits:封装的实用工具(如搜索、计算器)。
  • 适用场景
    • 构建自然语言处理应用程序,如聊天机器人、问答系统、数据处理工具等。
    • 快速开发原型,用于测试 LLM 的实际应用。

langchain_community

  • 主要功能:
    • 这是 LangChain 的社区扩展包,主要包含社区贡献的模块、工具和扩展功能。
    • 这些功能通常是由开发者社区提供的,涵盖了一些较为独立或特定场景的功能。
  • 内容特点:
    • 社区贡献工具:提供更多不在核心包中的工具和接口。
    • 新兴功能:一些功能可能尚未完全稳定,但可以用于特定的场景。
    • 可选扩展:这些功能可能不属于 LangChain 核心框架,但可以作为补充模块使用。
  • 适用场景:
    • 希望使用 LangChain 的社区扩展功能,比如特定的工具整合、插件等。

langchain_core

  • 主要功能
    • 这是 LangChain 的 底层核心模块,提供 LangChain 的核心逻辑和基础实现。
    • 它与 langchain 包密切相关,langchain 包可能依赖于 langchain_core 作为后端。
  • 内容特点
    • 提供最基础的功能,例如数据结构、链式逻辑的底层实现。
    • 可能被分离出来作为独立包,便于更小粒度的功能管理和模块化。
  • 适用场景
    • 如果开发者只需要 LangChain 的核心功能,而不需要更高层的抽象(如 PromptTemplates、Chains、Agents),可以直接安装这个包。

2、搭建对话框架

官方文档使用的是OpenAI的API,我这里使用阿里系(通义系列大模型)的API,如果想使用百度千帆、智谱等API,可以在聊天模型 中找到对应的API调用方法。

在LangChain中使用ChatTongyi的API文档:ChatTongyi —

标签:prompt,chatLLM,langchain,content,API,对话,LangChain,构建
From: https://blog.csdn.net/qq_42755230/article/details/144748277

相关文章

  • 【科技前沿】零代码构建台风监测大屏:Experience Builder赋能风云气象卫星(FY-4A)应用
    本教程首发于极思课堂,极思课堂(极思课堂-GeoSceneOnline)是易智瑞信息技术有限公司面向公司客户、合作伙伴、GIS从业者、高校教师与学生以及热衷于GIS技术的极客们打造的一站式GIS前沿技术学习平台。欢迎大家访问、学习与关注。课程原文链接:极思课堂-GeoSceneOnlinehttp......
  • 使用 FFmpeg 和 VLC 在 C# 中构建 RTSP 摄像头分屏监控应用
    随着安防监控技术的不断进步,RTSP(Real-TimeStreamingProtocol)逐渐成为网络摄像头视频流的标准协议。通过RTSP协议,我们可以实时获取来自摄像头的视频流,并通过应用程序进行播放和显示。在多摄像头监控场景中,用户通常希望能够将多个摄像头的视频流同时显示在同一屏幕上,即实现......
  • 掌控云端迁移:构建MySQL跨云迁移的成本效益分析利器
    在当今数字化转型的浪潮中,企业对云计算的需求日益增长,多云策略逐渐成为主流。为了更好地管理资源、降低运营成本并提高灵活性,越来越多的企业选择将数据库迁移到不同的云环境中。然而,在享受这些优势的同时,如何有效地控制迁移过程中的成本成为了亟待解决的问题之一。本文将详......
  • 为什么不建议通过Executors构建线程池
    Executors类看起来功能还是比较强大的,又用到了工厂模式、又有比较强的扩展性,重要的是用起来还比较方便,如:ExecutorServiceexecutor=Executors.newFixedThreadPool(nThreads);即可创建一个固定大小的线程池。但是为什么在阿里巴巴Java开发手册中也明确指出,不允许使用Executo......
  • 更快、更灵活、场景更丰富,云效镜像构建能力升级啦!
    作者:崔力强在之前使用云效进行镜像构建时,你可能会遇到如下问题:只能对一个Registy进行login,如果FROM的image和push的imageregistry不相同,则无法实现。镜像构建缓存基于oss实现,有5G的大小限制,如果缓存过大,就无法使用。且每次全量上传缓存,耗时较长。为了解决......
  • 更快、更灵活、场景更丰富,云效镜像构建能力升级啦!
    作者:崔力强在之前使用云效进行镜像构建时,你可能会遇到如下问题:只能对一个Registy进行login,如果FROM的image和push的imageregistry不相同,则无法实现。镜像构建缓存基于oss实现,有5G的大小限制,如果缓存过大,就无法使用。且每次全量上传缓存,耗时较长。为了解决......
  • 在 Docker 中部署 Jenkins,并完成项目的构建和发布
    前言Jenkins的主要作用是帮助你,把需要在本地机器完成的Maven构建、Docker镜像发布、云服务器部署等系列动作全部集成在一个服务下。简化你的构建部署操作过程,因为Jenkins也被称为CI&CD(持续集成&持续部署)工具。提供超过1000个插件(Maven、Git、NodeJs)来支持构......
  • 数字孪生场景构建好处的详细阐述
    数字孪生场景构建是指利用物理模型、传感器更新、运行历史等数据,集成多学科、多物理量、多尺度、多概率的仿真过程,在虚拟空间中创建与现实世界中的物理对象或场景相对应的数字版“克隆体”,并对其进行全生命周期的映射和管理。这一技术带来了诸多好处,以下是对这些好处的详细阐述......
  • 构建哈夫曼树
    构建哈夫曼树哈夫曼树(HuffmanTree),又称最优二叉树,是一种带权路径长度最短的二叉树,常用于数据压缩领域中的编码算法——哈夫曼编码。哈夫曼树是一种特殊的二叉树,其构造过程需要频繁地找到频率最小的两个节点并进行合并。这个过程可以通过最小堆来高效地实现。**堆(Heap)**是......
  • 49、Python入门 Python与AJAX:构建高效Web交互体验
             在现代Web开发中,Python作为后端语言以其简洁高效和丰富的库支持而广受欢迎,而AJAX(AsynchronousJavaScriptandXML)技术则为前端与后端的交互带来了革命性的变化。二者的结合能够构建出高效、流畅且具有卓越用户体验的Web应用。 一、AJAX技术概述AJAX不是......