位置: IT常识 - 正文

大语言模型集成工具 LangChain(大语言模型集成工具)

编辑:rootadmin
大语言模型集成工具 LangChain 大语言模型集成工具 LangChainLangChain 介绍介绍:通过可组合性使用大型语言模型构建应用程序【背景】大型语言模型 (LLM) 正在成为一种变革性技术,使开发人员能够构建他们以前无法构建的应用程序,但是单独使用这些 LLM 往往不足以创建一个真正强大的应用程序,当可以将它们与其他计算或知识来源相结合时,就有真的价值了。LangChain 旨在协助开发这些类型的应用程序使用文档:https://langchain.readthedocs.io/en/latest/index.html代码:https://github.com/hwchase17/langchain安装介绍库安装pip install langchainpip install openaiOPENAI KEY 获取:淘宝上花几块钱购买一个是最方便的途径或到 https://openai.com/blog/openai-api/ 网站申请账号,申请周期有可能会比较长添加环境变量在终端运行:export OPENAI_API_KEY="..."或在 python 脚本中添加:import os; os.environ["OPENAI_API_KEY"] = "..."LangChain 应用(基于0.0.64 版本测试)获取 LLM 的预测 (QA 任务)获取 LLM 的预测是最直接的应用方式,测试样例如下text = "What would be a good company name a company that makes colorful socks?"print(llm(text)) # 返回 Socktastic!

推荐整理分享大语言模型集成工具 LangChain(大语言模型集成工具),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:语言学集群模型,语言模型算法,语言模型perplexity,语言模型plug,语言模型plug,语言模型有什么用,大语言模型集成有哪些,大语言模型集成有哪些,内容如对您有帮助,希望把文章链接给更多的朋友!

简单数学问题:

from langchain.llms import OpenAI # 导入 LLM wrapperllm = OpenAI(temperature=0.9) # 大的 temperature 会让输出有更多的随机性text = "what is the results of 5+6?"print(llm(text)) # 返回 11text = "what is the results of 55+66?"print(llm(text)) # 返回 121text = "what is the results of 55555+66666?"print(llm(text)) # 返回 122221text = "what is the results of 512311+89749878?"print(llm(text)) # 返回 89,876,189,终于错了...大语言模型集成工具 LangChain(大语言模型集成工具)

另一个例子,这里返回的是同义词,如果要返回同音词则需要修改输入的 prompt(另外一个解决方式是基于以下章节中的 Memory 模式):

text = "what word is similar to good?"print(llm(text)) # 返回 Excellenttext = "what word is homophone of good?"print(llm(text)) # 返回 Goo输入 prompts 模板设置在上面根据公司生产的产品生成公司名字的应用中,一种让用户输入更简单的方式是仅让客户输入公司生产的产品即可,不需要输入整个语句,这需要对 prompts 设置模板:from langchain.prompts import PromptTemplateprompt = PromptTemplate( input_variables=["product"], template="What is a good name for a company that makes {product}?",)print(prompt.format(product="colorful socks")) # 返回 What is a good name for a company that makes colorful socks?text = prompt.format(product="colorful socks")print(llm(text)) # 返回 Socktastic!text = prompt.format(product="chocolates")print(llm(text)) # 返回 ChocoDelightz!Memory 功能: 在 LLM 交互中记录交互的历史状态,并基于历史状态修正模型预测

该实现基于论文: MemPrompt

即当模型出错了之后,用户可以反馈模型错误的地方,然后这些反馈会被添加到 memory 中,以后遇到类似问题时模型会提前找到用户的反馈,从而避免犯同样的错

对话任务中的 ConversationChain 示例(ConversationBufferMemory 模式),verbose=True 会输出对话任务中的 prompt,可以看到之前聊天会作为短期 memory 加在 prompt 中,从而让模型能有短时间的记忆能力:

from langchain import OpenAI, ConversationChainllm = OpenAI(temperature=0)conversation = ConversationChain(llm=llm, verbose=True)conversation.predict(input="Hi there!") # 返回如下#> Entering new ConversationChain chain...#Prompt after formatting:#The following is a friendly conversation between a human and an AI. The AI is talkative and provides lots of specific #details from its context. If the AI does not know the answer to a question, it truthfully says it does not know.#Current conversation:#Human: Hi there!#AI:#> Finished chain.# Out[53]: " Hi there! It's nice to meet you. How can I help you today?"conversation.predict(input="I'm doing well! Just having a conversation with an AI.") # 返回如下#Prompt after formatting:#The following is a friendly conversation between a human and an AI. The AI is talkative and provides lots of specific #details from its context. If the AI does not know the answer to a question, it truthfully says it does not know.#Current conversation:#Human: Hi there!#AI: Hi there! It's nice to meet you. How can I help you today?#Human: I'm doing well! Just having a conversation with an AI.#AI:#> Finished chain.#Out[54]: " That's great! It's always nice to have a conversation with someone new. What would you like to talk about?"LangChain 这里看起来没有直接在 QA 任务中集成 memprompt,不过可以基于对话任务来测试之前 QA 任务中出错的问题,可以看到基于 memprompt 确实可以利用用户的反馈来修正模型预测结果:conversation.predict(input="what word is similar to good?") # 返回 ' Synonyms for "good" include excellent, great, fine, and superb.'conversation.predict(input="similar to means with similar pronunciation") # 返回 ' Ah, I see. Synonyms for "good" with similar pronunciation include wood, hood, and should.'

这里的实现看起来和 memprompt 非常类似,每个问题不会直接回答答案,而是回答 understating+answer,从而让用户可以基于对 understating 的理解来判断模型反馈是否符合用户的预期,而不用直接判断 answer 的正确性

对话任务中的其他几种 memory 添加模式

ConversationSummaryMemory:与 ConversationBufferMemory 类似,不过之前的对话会被总结为一个 summary 加在 prompt 中ConversationBufferWindowMemory:在 ConversationBufferMemory 模式基础上加个滑窗,即只加入最近几次对话的记录,避免 memory buffer 过大ConversationSummaryBufferMemory:结合以上两种方式,将之前的对话总结为一个 summary 加在 prompt 中,同时会设置一个 prompt 最大词汇数量,超过该词汇数量的时候会抛弃更早的对话来使 prompt 的词汇数量符合要求

更高级的 memory 使用方式

Adding Memory to a Multi-Input Chain:主要用于 QA 任务,用一个语料库作为 memory,对于输入的 prompt,找到与该 prompt 类似的信息加在 prompt 中,从而能利用上语料库中的信息Adding Memory to an Agent:对于具备 google 搜索功能的 Agent,可以将对话历史记录到 memory 中,从而能让 Agent 对某些与之前历史结合的对话理解更准确总结LangChain 基于 OPENAI 的 GPT3 等大语言模型设计一系列便于集成到实际应用中的接口,降低了在实际场景中部署大语言模型的难度
本文链接地址:https://www.jiuchutong.com/zhishi/299861.html 转载请保留说明!

上一篇:vue中的provide/inject你知道吗(vue2、vue3)?(vue中的路由参数如何获取)

下一篇:立体匹配入门指南(8):视差图、深度图、点云(立体匹配原理)

  • win10任务管理器快捷键(win10任务管理器被禁用)

    win10任务管理器快捷键(win10任务管理器被禁用)

  • p40共有几个摄像头(p40共有几个摄像头啊)

    p40共有几个摄像头(p40共有几个摄像头啊)

  • 微信朋友圈位置如何定位到别的城市(微信朋友圈位置怎么定位到外地)

    微信朋友圈位置如何定位到别的城市(微信朋友圈位置怎么定位到外地)

  • 手机屏幕漏液紫色扩散(手机屏幕漏液紫色扩散能阻止吗)

    手机屏幕漏液紫色扩散(手机屏幕漏液紫色扩散能阻止吗)

  • 如何理解计算机组成和计算机体系结构(如何理解计算机组成中的冯诺依曼理论体系)

    如何理解计算机组成和计算机体系结构(如何理解计算机组成中的冯诺依曼理论体系)

  • 微信号可以隐藏吗不想让好友看到(微信号可以隐藏手机号码吗)

    微信号可以隐藏吗不想让好友看到(微信号可以隐藏手机号码吗)

  • 华为p30圆点悬浮怎么取消(华为p30pro浮动小圆圈)

    华为p30圆点悬浮怎么取消(华为p30pro浮动小圆圈)

  • 华为p30有隐藏功能吗(华为p30隐藏功能)

    华为p30有隐藏功能吗(华为p30隐藏功能)

  • 小米cc9pro能超过p30pro吗(小米cc9pro最高支持多少w快充)

    小米cc9pro能超过p30pro吗(小米cc9pro最高支持多少w快充)

  • 小程序服务的基础(小程序服务内容)

    小程序服务的基础(小程序服务内容)

  • 微信视频是镜像的吗(微信视频是镜像的吗华为)

    微信视频是镜像的吗(微信视频是镜像的吗华为)

  • word和wps兼容吗(word跟wps兼容吗)

    word和wps兼容吗(word跟wps兼容吗)

  • 手机号多久不交费会被自动注销(手机号多久不交钱会注销吗)

    手机号多久不交费会被自动注销(手机号多久不交钱会注销吗)

  • 华为nova5支持防水吗(华为nova5防窥膜都不能指纹吗)

    华为nova5支持防水吗(华为nova5防窥膜都不能指纹吗)

  • oppo手机屏幕摔黑屏了(oppo手机屏幕摔黑屏了,但还能触摸)

    oppo手机屏幕摔黑屏了(oppo手机屏幕摔黑屏了,但还能触摸)

  • 简述域名系统的作用(简述域名系统的主要功能)

    简述域名系统的作用(简述域名系统的主要功能)

  • 小爱音箱怎么关机重启(小爱音箱怎么关联qq音乐)

    小爱音箱怎么关机重启(小爱音箱怎么关联qq音乐)

  • 21.5寸显示器多少厘米(21.5寸显示器多少分辨率最好)

    21.5寸显示器多少厘米(21.5寸显示器多少分辨率最好)

  • qq注销后头像显示什么(qq用户注销后的头像)

    qq注销后头像显示什么(qq用户注销后的头像)

  • ipadwifi版可以连热点吗(ipadwifi版可以连热点吗air5)

    ipadwifi版可以连热点吗(ipadwifi版可以连热点吗air5)

  • word样本模板在哪里(word2019样本模板在哪)

    word样本模板在哪里(word2019样本模板在哪)

  • 货拉拉差评怎么改(货拉拉被投诉差评服务分上不去了是什么情况)

    货拉拉差评怎么改(货拉拉被投诉差评服务分上不去了是什么情况)

  • nfc怎样激活手机卡(nfc怎么激活门禁卡)

    nfc怎样激活手机卡(nfc怎么激活门禁卡)

  • 【bug】Failed at the node-sass@4.14.1 postinstall script(终于圆满解决)(but all failed)

    【bug】Failed at the node-sass@4.14.1 postinstall script(终于圆满解决)(but all failed)

  • 福建国税网上办税平台登录
  • 小微企业所得税优惠政策
  • 电梯的税收筹划怎么做
  • 个人所得税综合所得税率
  • 一般纳税人的税种有哪些
  • 待处理财产损益借方
  • 住宿费收入缴纳标准
  • 以前年度损益调整在借方是什么意思
  • 记账凭证工资表
  • 发票鉴定管理办法
  • 公司收到银行承兑汇票会计分录
  • 福利费结转以后年度
  • 分摊材料成本差异率怎么算
  • 营业外收入交税会计分录
  • 一般纳税人贸易公司每个月最低费用多少
  • 代开专票地税没交怎么办?
  • 建筑业营改增实施指南
  • 上级工会返还的会计分录
  • 应交增值税进项税额借贷方向
  • 出售已计提减值准备的固定资产
  • 研发费用申报表汇算清缴怎么填
  • 网卡和网线都正确接法
  • 收到货款发票怎么记账
  • 结转已经销售商品成本的分录
  • 支付代账公司费用 怎么写凭证
  • dgservice.exe是什么文件
  • windows 11预览版
  • php句法规则详解图
  • 如何防范增值税的税收风险
  • thinkphp框架入门
  • php命名空间和自由空间
  • 什么是社保差额
  • 长期待摊费用的会计分录
  • 深度测试软件
  • vue 动态组件
  • elementui的upload组件详解
  • 什么是资产评估的价值类型
  • get命令获取文件夹
  • 无偿调出固定资产账面价值为零如何处理
  • 厂房和设备折旧年限
  • 小规模普通发票几个点的税
  • mongodb bi
  • 补发去年工资会被扣税吗
  • 金税盘离线开票时间超限怎么办
  • 租赁收入的成本包括哪些
  • 绿化养护合同交不交印花税
  • 往来款项的含义
  • sql2000数据迁移到2008
  • 控股公司的收入怎么计算
  • 应收应付会计分录大全
  • 永久性差异有哪些项目
  • 消费税计税分录
  • 专利技术评估价值7亿
  • 股东预分配利润后如何返还
  • 工程分包总包产生的 税费由谁承担
  • 期末自动结转期间损益
  • 会计分录借贷怎么分视频教程
  • win10系统怎么删
  • debian和ubuntu命令一样吗
  • ubuntu系统怎么开机
  • opensuse安装显卡驱动
  • win10链接手机怎么用
  • ikeeperpab.exe是什么
  • win7系统运行怎么打开
  • 详细分析我国针对疫情的国防动员举措
  • 清除cookie是什么意思
  • javascript怎么写
  • 安卓系统引导程序
  • go语言websocket
  • jquery示例
  • jquery鼠标位置
  • jQuery的ajax和遍历数组json实例代码
  • jQuery给div,Span, a ,button, radio 赋值与取值
  • java script js
  • 消费税增值税的区别与联系
  • 酒店行业区分小巨头企业
  • 税务局分局局长是什么级别干部
  • 代扣代缴企业所得税手续费
  • 国际税务师证书
  • 河北省电子税务局app下载
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设