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

大语言模型学习--LangChain

LangChain基本概念

ReAct学习资料

https://zhuanlan.zhihu.com/p/660951271

LangChain官网地址

 Introduction | 🦜️🔗 LangChain

LangChain是一个基于语言模型开发应用程序的框架。它可以实现以下应用程序:
  • 数据感知:将语言模型连接到其他数据源
  • 自主性:允许语言模型与其环境进行交互

LangChain的主要价值在于:

  • 组件化:为使用语言模型提供抽象层,以及每个抽象层的一组实现。组件是模块化且易于使用的,无论您是否使用LangChain框架的其余部分。
  • 现成的链:结构化的组件集合,用于完成特定的高级任务

LangChain具体能力

优劣势

LangChain实践

本地环境安装

pip install langchain

langchain依赖关系

下面使用Langchain来集成阿里的通义千问

首先要申请API-key 然后本地python调用一下

参考地址阿里云登录 - 欢迎登录阿里云,安全稳定的云计算服务平台

代码如下:

import os
from openai import OpenAIclient = OpenAI(# 若没有配置环境变量,请用百炼API Key将下行替换为:api_key="sk-xxx",api_key=os.getenv("DASHSCOPE_API_KEY"), base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
)
completion = client.chat.completions.create(model="qwen-plus", # 此处以qwen-plus为例,可按需更换模型名称。模型列表:https://help.aliyun.com/zh/model-studio/getting-started/modelsmessages=[{'role': 'system', 'content': 'You are a helpful assistant.'},{'role': 'user', 'content': '你是谁?'}],)print(completion.model_dump_json())

API-Key申请参考链接 如何获取API Key_大模型服务平台百炼(Model Studio)-阿里云帮助中心

有一定的免费额度

本地测试输出如下:

{"id":"chatcmpl-f970c884-fbe9-99f0-8d9f-8c18209ee58f","choices":[{"finish_reason":"stop","index":0,"logprobs":null,"message":{"content":"我是来自阿里云的大规模语言模型,我叫通义千问。","refusal":null,"role":"assistant","audio":null,"function_call":null,"tool_calls":null}}],"created":1740919207,"model":"qwen-plus","object":"chat.completion","service_tier":null,"system_fingerprint":null,"usage":{"completion_tokens":16,"prompt_tokens":22,"total_tokens":38,"completion_tokens_details":null,"prompt_tokens_details":{"audio_tokens":null,"cached_tokens":0}}}

接下来使用LangChain来接入大模式试下:

import os
from langchain_community.llms import Tongyi
from langchain_core.messages import HumanMessageos.environ["DASHSCOPE_API_KEY"] = "xxx"  # 此处为通义千问的API KEYllm = Tongyi(temperature=1)  # 创建一个Tongyi模型实例,设置温度为1
result = llm.invoke([HumanMessage(content="你是谁?")])  # 使用模型进行语言处理任务
print(result)  # 输出处理结果

输出结果如下:

我是阿里云开发的一款超大规模语言模型,我叫通义千问。

        LangChain作为一个脚手架 能够快速集成大模型以及实现一些其他格式化功能,本质是为了能够更好的调用相关大模型API以及进行业务逻辑处理。

http://www.lryc.cn/news/545862.html

相关文章:

  • Spark内存迭代计算
  • Python之参数星号(*)使用笔记
  • 一文掌握 Scrapy 框架的详细使用,包括实战案例
  • 【Mac】git使用再学习
  • 【MySQL篇】数据库基础
  • SpringBoot项目注入 traceId 来追踪整个请求的日志链路
  • 【Block总结】SAFMN,空间自适应调制与局部特征增强的协同设计|即插即用
  • Python爬虫:一文掌握PyQuery模块
  • LearnOpenGL之Shader编程用算法绘画
  • 如何使用Spring Boot框架整合Redis:超详细案例教程
  • 算法--贪心
  • 线程控制(创建、终止、等待、分离)
  • 【备份】php项目处理跨域请求踩坑
  • 目标检测YOLO实战应用案例100讲-面向无人机图像的小目标检测
  • 实现 Leaflet 多类型点位标记与聚合功能的实战经验分享
  • Linux 环境“从零”部署 MongoDB 6.0:mongosh 安装与数据操作全攻略
  • 深度学习五大模型:CNN、Transformer、BERT、RNN、GAN详细解析
  • 004 rocketmq集群
  • 基于 Python 深度学习的电影评论情感分析可视化系统(2.0 全新升级)
  • Linux内核配置与构建原理
  • 大语言模型微调的基本概念介绍
  • 实例分割 | yolov11训练自己的数据集
  • vue3:四嵌套路由的实现
  • AIGC和搜索引擎的异同
  • ES批量查询
  • Vue2学习
  • PySide(PyQT)重新定义contextMenuEvent()实现鼠标右键弹出菜单
  • Storm实时流式计算系统(全解)——下
  • 配置Nginx日志url encode问题
  • JAVA SE 包装类和泛型