第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

LangChain 介紹 |助力大模型LLM應(yīng)用開發(fā)從入門到精通

標(biāo)簽:
雜七雜八

概述

在探索 langchain知识库问答入门 的过程中,我们将引导您通过快速安装和环境设置,进入利用 LangChain 构建应用程序的世界。首先,您将学习如何安装 LangChain 和所需的 OpenAI 模型 API,以及如何通过环境变量管理 API 密钥。通过构建包含 LLMs(大型语言模型)和 ChatModels 的应用程序,我们可以进一步探索如 HumanMessageAIMessage 等角色在消息传递中的应用。此外,文章深入介绍了如何使用 Prompt Templates 为语言模型提供上下文,以及如何通过 Output Parsers 处理模型输出。 LLMChain 组件的组合允许创建复杂流程,如上下文提供、消息格式化和输出解析。我们将通过示例代码演示如何构建基本的翻译应用程序,这将加速您在 langchain知识库问答入门 领域的学习之旅。

快速入门 | 🦜️🔗 Langchain

安装

要安装LangChain,请运行:

pip install langchain

环境设置

使用LangChain通常需要与一个或多个模型提供者、数据存储、API等进行集成。在本示例中,我们将使用OpenAI的模型API。

首先,我们需要安装他们的Python包:

pip install openai

访问API需要一个API密钥,你可以通过创建一个帐户并前往 OpenAI帐户页面 来获取。当我们获得了一个密钥之后,我们需要通过运行以下命令将其设置为环境变量:

export OPENAI_API_KEY="你的API密钥"

如果你不想设置环境变量,你可以在初始化OpenAI LLM类时直接通过 openai_api_key 命名参数传递密钥:

from langchain.llms import OpenAI

llm = OpenAI(openai_api_key="你的API密钥")

构建应用程序

LLMs

LangChain中有两种类型的语言模型:

  • LLMs(Large Language Models):这是以字符串作为输入并返回字符串的语言模型。
  • ChatModels:这是以消息列表作为输入并返回消息的语言模型。

每个 ChatMessage 由两个部分组成:

  • content:这是消息的内容。

  • role:这是 ChatMessage 来自的实体的角色。LangChain提供了如下对象来帮助区分不同的角色:

    • HumanMessage:代表来自人类/用户的 ChatMessage
    • AIMessage:代表来自AI/助手的 ChatMessage
    • SystemMessage:代表来自系统的 ChatMessage
    • FunctionMessage:代表来自函数调用的 ChatMessage

如果这些角色都不适用,还可以使用 ChatMessage 类手动指定角色。

Prompt Templates

大多数LangChain应用程序不会直接将用户输入传递给LLM。通常,它们会将用户输入添加到一个更大的文本片段中,称为提示模板,该模板提供了有关特定任务的附加上下文。

提示模板将用户输入转化为完全格式化提示的所有逻辑绑定在一起。例如:

from langchain.prompts import PromptTemplate

prompt = PromptTemplate(template="What is a good name for a company that makes {product}?")

prompt.format(product="colorful socks")

使用提示模板的优势有:

  • 变量的灵活性:可以“部分”出变量或组合变量。
  • 模板组合:可以轻松地将不同的模板组合成一个单独的提示。
  • 生成消息列表:提示不仅可以包含有关内容的信息,还可以包含每个消息(其角色、其在列表中的位置等)。

Output Parsers

OutputParsers将LLM的原始输出转换为可以在下游使用的格式。有几种主要类型,包括:

  • 结构化信息(例如JSON):将LLM的文本转换为结构化信息。
  • 字符串转换:将ChatMessage转换为字符串。
  • 其他信息转换:将除消息之外的其他信息(如OpenAI函数调用)转换为字符串。

LLMChain

现在,我们可以将所有这些组合成一个链组件。这个链组件将接收输入变量,将其传递给提示模板以创建提示,将提示传递给LLM,然后通过一个(可选的)输出解析器将输出传递出去。

from langchain.chat_models import ChatOpenAI
from langchain.prompts import ChatPromptTemplate
from langchain.chains import LLMChain

template = "You are a helpful assistant."

chat_prompt = ChatPromptTemplate.from_template(template)

chain = LLMChain(llm=ChatOpenAI(), prompt=chat_prompt)

在构建应用程序时,可以利用这些构建块来构建更复杂的流程。例如,可以使用提示模板为LLM提供上下文,用输出解析器处理LLM的响应,并通过链将这些操作连接起来。

示例代码

以下是一个简单的示例:

from langchain.prompts import PromptTemplate
from langchain.chat_models import ChatOpenAI
from langchain.chains import LLMChain

# 创建提示模板
template = "You are a helpful assistant that translates {input_language} to {output_language}."
prompt = PromptTemplate(template=template, input_variables=["input_language", "output_language"])

# 创建链组件
chain = LLMChain(llm=ChatOpenAI(), prompt=prompt)

# 使用链
input_language = "English"
output_language = "French"
response = chain.run(input_language=input_language, output_language=output_language)
print(response)

通过以上步骤和示例,您可以开始使用Langchain构建简单的语言模型应用程序。为了构建更复杂的应用程序,可以组合不同的组件并根据需要调整配置。

點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺(jué)得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消