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

LangChain学习之路

何谓 LangChain?释放大语言模型潜能的利器

作为一种专为开发基于语言模型的应用而设计的框架,通过LangChain,我们不仅可以通过API调用如 ChatGPT、GPT-4、Llama 2 等大型语言模型,还可以实现更高级的功能。

我们相信,真正有潜力且具有创新性的应用,不仅仅在于能通过API调用语言模型,更重要的是能够具备以下两个特性:

  1. 数据感知: 能够将语言模型与其他数据源连接起来,从而实现对更丰富、更多样化数据的理解和利用。
  2. 具有代理性: 能够让语言模型与其环境进行交互,使得模型能够对其环境有更深入的理解,并能够进行有效的响应。

现在你应该已经知道,LangChain是一个基于大语言模型(LLMs)用于构建端到端语言模型应用的框架,它可以让开发者使用语言模型来实现各种复杂的任务,例如文本到图像的生成、文档问答、聊天机器人等。LangChain提供了一系列工具、套件和接口,可以简化创建由LLMs和聊天模型提供支持的应用程序的过程。

打通 LangChain 从原理到应用的最后一公里

LangChain中的具体组件包括:

  • 模型(Models),包含各大语言模型的LangChain接口和调用细节,以及输出解析机制。
  • 提示模板(Prompts),使提示工程流线化,进一步激发大语言模型的潜力。
  • 数据检索(Indexes),构建并操作文档的方法,接受用户的查询并返回最相关的文档,轻松搭建本地知识库。
  • 记忆(Memory),通过短时记忆和长时记忆,在对话过程中存储和检索数据,让ChatBot记住你是谁。
  • 链(Chains),是LangChain中的核心机制,以特定方式封装各种功能,并通过一系列的组合,自动而灵活地完成常见用例。
  • 代理(Agents),是另一个LangChain中的核心机制,通过“代理”让大模型自主调用外部工具和内部工具,使强大的“智能化”自主Agent成为可能!你的 App 将产生自驱力!

这些组件是LangChain的基石,是赋予其智慧和灵魂的核心要素,它们相互协作,形成一个强大而灵活的系统。在基础篇中,我们将深入探索这些组件的工作原理和使用方法,并给出大量用例,夯实你对这些组件的理解和应用能力。

应用 1:情人节玫瑰宣传语

情人节到啦,你的花店需要推销红色玫瑰,那么咱们让大语言模型做的第一个应用,就是给咱们生成简短的宣传语。

这个需求极为简单,你直接去ChatGPT网站,或者用文心一言、星火认知等大模型,都做得到。不过,怎样通过LangChain来用程序的方式实现呢?也很容易。

第一步是安装三个包,通过 pip install langchain 来安装LangChain,

pip install langchain

然后在终端输入查看是否安装成功: 

pip show langchain

 通过 pip install openai 来安装OpenAI,

pip install openai

然后会输入Successfully installed colorama-0.4.6 distro-1.9.0 jiter-0.7.0 openai-1.53.0 tqdm-4.66.6就是成功了

还需要通过 pip install langchain-openai 以便在 LangChain 中使用 OpenAI 模型。

pip install langchain-openai

 然后输出Successfully installed langchain-openai-0.2.5 regex-2024.9.11 tiktoken-0.8.0ss说明安装成功。

第二步,你还需要在OpenAI网站注册属于自己的OpenAI Key。(当然,LangChain也支持其他的开源大语言模型,但是推理效果没有GPT那么好)

完成了上面两个步骤,就可以写代码了。

import os
os.environ["OPENAI_API_KEY"] = ''
from langchain_openai import OpenAI
llm = OpenAI(model_name="gpt-3.5-turbo-instruct",max_tokens=200)
text = llm.invoke("请给我写一句情人节红玫瑰的中文宣传语")
print(text)

在掘金的运行结果如下:

(shims) ➜  LangChain-shizhanke COMMAND="cd /cloudide/workspace/LangChain-shizhanke/00_开篇词_奇 点时刻 && export PYTHONPATH="/cloudide/workspace/.cloudide/extensions/ms-python.debugpy-2024.0.0
-linux-x64/bundled/libs:$PYTHONPATH"; python3 /cloudide/workspace/LangChain-shizhanke/00_开篇词_奇点时刻/01_SimpleTextGeneration.py" marscode-dev
/cloudide/workspace/LangChain-shizhanke/00_开篇词_奇点时刻/01_SimpleTextGeneration.py:11: LangChainDeprecationWarning: The method `BaseChatModel.predict` was deprecated in langchain-core 0.1.7 and will be removed in 1.0. Use invoke instead.
  text = llm.predict("请给我写一句情人节红玫瑰的中文宣传语")
以下是一些关于情人节红玫瑰的中文宣传语,供你参考:

1. 情人节,红玫瑰,传递你的浓情爱意。
2. 红玫瑰,情人节的浪漫象征,让爱永恒。
3. 情人节,送她红玫瑰,表达你的深深眷恋。
4. 红玫瑰,情人节的最佳礼物,诉说你的真情。
5. 情人节,用红玫瑰点燃爱的火焰,温暖彼此的心。
6. 红玫瑰,代表着热烈的爱情,在情人节绽放。
7. 情人节,红玫瑰相伴,让爱情更加甜蜜。
8. 送红玫瑰,过情人节,让爱成为永恒的主题。
9. 红玫瑰,情人节的必备元素,为爱情增添色彩。
10. 情人节,红玫瑰的芬芳,弥漫着爱的气息。
11. 用红玫瑰庆祝情人节,让爱情之花永远盛开。
12. 红玫瑰,情人节的浪漫使者,传递爱的信息。
13. 情人节,与红玫瑰一起,谱写爱的篇章。
14. 红玫瑰,见证情人节的美好时刻,留下难忘的回忆。
15. 情人节,红玫瑰的爱意,让你们的爱情更加坚定。
(shims) ➜  LangChain-shizhanke 


http://www.kler.cn/a/377415.html

相关文章:

  • Anolis8防火墙安全设置
  • Redis常见面试题概览——针对实习面试
  • 跟李沐学AI:BERT
  • 开源模型应用落地-glm模型小试-glm-4-9b-chat-批量推理(二)
  • 「C/C++」C/C++的区别
  • git commit应遵循的提交规范
  • 插入/归并
  • 海风里的青春:海滨学院班级回忆录开发
  • 沈阳乐晟睿浩科技有限公司抖音小店运营创新
  • 如何在忘记密码的情况下解锁 iPhone? 6 种方法分享
  • Nat Med病理AI系列|DEPLOY模型:从病理切片图像预测中枢神经系统肿瘤甲基化状态|顶刊精析·24-11-03
  • 关闭kafka在控制台打印的日志
  • Oracle 第20章:数据库调优
  • Python基于TensorFlow实现双向长短时记忆循环神经网络加注意力机制回归模型(BiLSTM-Attention回归算法)项目实战
  • 信息技术(information Technology)
  • 安卓设备adb执行AT指令控制电话卡
  • 前端如何优化页面中的大量任务
  • vue2中的v-bind相当于原生js的什么
  • 3.1 大数据时代
  • 《Apache Cordova/PhoneGap 使用技巧分享》
  • 19.公益众筹捐赠系统(基于springboot和html的Java项目)
  • HTML 语法规范——代码注释、缩进与格式、标签与属性、字符编码等
  • 【力扣热题100】[Java版] 刷题笔记-121. 买卖股票的最佳时机
  • 【那些年踩过的坑-前端篇- Mac版本】Mac电脑如何升级node.js
  • 测试和实施面试题收集
  • Rust语言有哪些常用语句?