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

LangChain入门:构建LLM驱动的应用程序的初学者指南

LangChain & DemoGPT

一、介绍

        你有没有想过如何使用大型语言模型(LLM)构建强大的应用程序?或者,也许您正在寻找一种简化的方式来开发这些应用程序?那么你来对地方了!本指南将向您介绍LangChain,这是一个简化构建LLM驱动的应用程序的过程的工具。我们还将深入研究 DemoGPT,这是一项尖端技术,可自动执行管道生成过程,提供无缝的开发体验。

二、开始使用语言链

        LangChain是一个促进端到端语言模型应用程序开发的平台。要开始使用 LangChain 开始您的旅程,第一步是安装它。详细的安装说明可以在 LangChain 文档中找到。我们这里简述为:

11 最低安装

pip install langchain

        这将安装 LangChain 的最低要求。 LangChain 的很多价值在于将其与各种模型提供程序、数据存储等集成。默认情况下,并未安装执行此操作所需的依赖项。然而,还有另外两种安装 LangChain 的方法可以引入这些依赖项。

2  要安装常见 LLM 提供程序所需的模块,请运行:

pip install langchain[llms]

3 要安装所有集成所需的所有模块,请运行:

pip install langchain[all]

请注意,如果使用 ,则在将方括号作为参数传递给命令时,需要用方括号括起来,例如:zsh

pip install 'langchain[all]'

        安装后,您需要将LangChain与大型语言模型(LLM)集成。在本指南中,我们将使用 OpenAI 的 API,这些 API 不需要额外的设置。

三、使用 LangChain 构建语言模型应用程序

        在设置 LangChain 并将其与 LLM 集成之后,有趣的部分开始了——构建您的语言模型应用程序。LangChain 提供了各种模块,您可以组合这些模块来创建复杂的应用程序或单独用于更简单的应用程序。

3.1 使用法学LLM进行预测

        LangChain最基本的构建块是在某些输入上调用LLM。例如,假设我们正在创建一个服务,该服务根据公司制作的内容生成公司名称。下面是如何使用 LangChain 实现此目的的简单示例:

import { OpenAI } from "langchain/llms/openai"; 
const model = new OpenAI({ openAIApiKey: "sk-…", temperature: 0.9 }); 
const res = await model.call("What would be a good company name for a company that makes colorful socks?"); 
console.log(res); // Outputs: '\n\nFantasy Sockery'

3.2 管理LLM的提示

        在应用程序中使用 LLM 时,通常不会将用户输入直接发送到 LLM。相反,您将使用用户输入构造提示并将其发送到 LLM。LangChain 使这变得简单:

import { PromptTemplate } from "langchain/prompts"; 
const template = "What is a good name for a company that makes {product}?"; 
const prompt = new PromptTemplate({ template: template, inputVariables: ["product"] }); 
const res = await prompt.format({ product: "colorful socks" }); 
console.log(res); // Outputs: 'What is a good name for a company that makes colorful socks?'

3.3 使用 LangChain 创建多步骤工作流

        实际应用程序不仅仅是单个基元,而是它们的组合。LangChain 允许您创建由链接组成的链,这些链接可以是原语,如 LLM 或其他链。下面是如何创建 LLMChain 的示例,该 LLMChain 使用 PromptTemplate 格式化用户输入并将格式化的响应传递给 LLM:

import { OpenAI } from "langchain/llms/openai"; 
import { PromptTemplate } from "langchain/prompts"; 
import { LLMChain } from "langchain/chains";
const model = new OpenAI({ temperature: 0.9 }); 
const template = "What is a good name for a company that makes {product}?"; 
const prompt = new PromptTemplate({ template: template, inputVariables: ["product"] }); 
const chain = new LLMChain({ llm: model, prompt: prompt });
const res = await chain.call({ product: "colorful socks
" }); 
console.log(res); // Outputs: { text: '\n\nColorfulCo Sockery.' }

3.4使用代理动态运行链

        LangChain超越了代理的预定工作流程。代理使用 LLM 来确定要执行的操作以及顺序。此高级功能使您的应用程序能够实时适应用户输入,从而显著增强其功能。

3.5 使用 DemoGPT 自动化整个管道

        虽然LangChain为构建LLM驱动的应用程序提供了强大的基础,但还有另一个工具可以增强您的开发过程:DemoGPT。

        DemoGPT 利用 LangChain 文档的强大功能来自动化管道生成、执行代码调试并交付精美的演示应用程序。通过根据需求智能创建数据处理管道,无需手动施工,节省开发人员的时间和精力。

        此外,它还提供交互式演示生成、版本控制和多个产品版本的无缝管理。它显着提高了效率和准确性,使其成为软件开发工具包中的宝贵工具。

        如果您有兴趣观看使用 LangChain 和 DemoGPT 构建的应用程序的现场演示,请查看 Streamlit 应用程序上的 DemoGPT

        此演示展示了 DemoGPT 的功能,并通过模拟交互和实时可视化提供了实践经验。

四、结论

        LangChain和DemoGPT是强大的工具,可以简化开发LLM驱动的应用程序的过程。通过自动化管道生成过程并提供基于用户输入的动态链,它们允许开发人员轻松创建复杂的应用程序。无论您是经验丰富的开发人员还是刚刚开始使用LLM,这些工具都可以提供无缝且高效的开发体验。

        那么,你还在等什么?立即开始使用 LangChain 和 DemoGPT构建您的 LLM 应用程序!

        本指南只是使用这些工具可以实现的目标的开始。随着您进一步探索它们,您将发现它们可以增强您的开发过程并使您能够创建强大的交互式应用程序的更多方法。

        我希望本指南内容丰富且鼓舞人心。祝您编码愉快!

参考资料:

Getting Started with LangChain: A Beginner’s Guide to Building LLM-Powered Applications | by DemoGPT | Jul, 2023 | AI Mind

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

相关文章:

  • gitlab修改远程仓库地址
  • VB+SQL自动点歌系统设计与实现
  • 设计模式之适配器模式(Adapter)的C++实现
  • C#系统锁屏事件例子 - 开源研究系列文章
  • R语言实现免疫浸润分析(2)
  • 系统架构设计师-信息安全技术(2)
  • STM32F4X-GPIO输入功能使用
  • Jenkins-CICD-python/Java包升级与回退
  • 模糊测试面面观 | 模糊测试工具知多少
  • esp8266+电压检测模块检测电池电压
  • MongoDB增删改查操作
  • Python | Package | Python的三种包安装方式(pip/whl/tar.gz)
  • 1. 微信小程序开发环境搭建
  • Redis五大基本数据类型及其使用场景
  • 优于立方复杂度的 Rust 中矩阵乘法
  • CentOS gcc介绍及快速升级
  • IO多路复用中select的TCP服务器模型和poll服务模型
  • AI工程师招募;60+开发者AI工具清单;如何用AI工具读懂插件源码;开发者出海解读;斯坦福LLM课程 | ShowMeAI日报
  • Mysql 使用JSON_SEARCH函数 判断多表查询时,某个拼接字段是否包含另外一个字段
  • C++头文件
  • 无脑入门pytorch系列(四)—— scatter_
  • 【Spring源码】Spring扩展点及顺序
  • 广州华锐互动:3D数字孪生开发编辑器助力企业高效开发数字孪生应用
  • 【脚踢数据结构】图(纯享版)
  • [leetcode] 707 设计链表
  • JIRA:项目管理的秘密武器
  • ARM 作业1
  • 【解析postman工具的使用---基础篇】
  • Elasticsearch:如何在 Ubuntu 上安装多个节点的 Elasticsearch 集群 - 8.x
  • 记录win 7旗舰版 “VMware Alias Manager and Ticket Service‘(VGAuhService)启动失败。