亚洲mv大片欧洲mv大片入口,国产粉嫩无码一区二区三区,国内精品自产拍在线观看91,久久久亚洲欧洲日产国码二区,中文字幕人妻久久一区二区三区

常州機(jī)器視覺培訓(xùn)

常州上位機(jī)軟件開發(fā)

常州工業(yè)機(jī)器人編程設(shè)計(jì)培訓(xùn)

常州PLC培訓(xùn)

常州PLC

常州PLC編程培訓(xùn)

常州電工培訓(xùn)

常州和訊plc培訓(xùn)中心歡迎您!
當(dāng)前位置:網(wǎng)站首頁(yè) > 新聞中心 新聞中心
入門LLMs開發(fā) — LangChain-常州上位機(jī)培訓(xùn),常州機(jī)器視覺培訓(xùn)
日期:2024-6-18 10:18:29人氣:  標(biāo)簽:常州上位機(jī)培訓(xùn) 常州機(jī)器視覺培訓(xùn)

像OpenAI的GPT-4這樣的大型語(yǔ)言模型(LLMs)已經(jīng)風(fēng)靡全球。它們可以自動(dòng)執(zhí)行各種任務(wù),如回答問(wèn)題、翻譯語(yǔ)言、分析文本等。LLMs是第一種真正感覺像“人工智能”的機(jī)器學(xué)習(xí)類型。

然而,在將LLMs應(yīng)用于實(shí)際產(chǎn)品時(shí)仍然存在挑戰(zhàn)。特別是其中一個(gè)最棘手和繁瑣的挑戰(zhàn)是LLM的管理。如果我們想要構(gòu)建由LLMs驅(qū)動(dòng)的應(yīng)用程序,我們需要管理以下幾個(gè)方面:

不同類型的LLM —— OpenAI、Anthropic、開源等

模型版本 —— 隨著我們更新到最新版本

提示版本 —— 隨著不斷調(diào)整和改進(jìn)提示

模型鏈接 —— 可能需要結(jié)合或鏈接多個(gè)LLM的輸入和輸出以獲得最終結(jié)果


要獨(dú)自完成所有這些工作將需要大量工作,這就是LangChain發(fā)揮作用的地方!


介紹LangChain

LangChain使構(gòu)建由LLMs驅(qū)動(dòng)的應(yīng)用程序變得簡(jiǎn)單。它提供了極大簡(jiǎn)化上述所有挑戰(zhàn)的工具。使用LangChain,我們可以在統(tǒng)一的界面中輕松與不同類型的LLMs進(jìn)行交互,管理模型版本,管理提示版本,并將LLMs連接在一起。所有這些功能都打包在易于使用的API中,因此我們可以快速在應(yīng)用程序中利用LLMs。


安裝

開始使用LangChain很容易。我們可以使用pip進(jìn)行安裝,如下所示:

pip install langchain

或者使用conda:

conda install langchain -c conda-forge

最后,如果想要所有最新的功能,可以直接從其GitHub存儲(chǔ)庫(kù)構(gòu)建該庫(kù)。


設(shè)置

為了充分利用LangChain,將希望將其與不同的組件,如模型提供商和API,集成在一起?梢詾橄MB接到的每個(gè)提供商設(shè)置環(huán)境變量。例如,對(duì)于OpenAI,可以設(shè)置OpenAI API密鑰:

export OPENAI_API_KEY="..."

或者,可以在使用LangChain的Python應(yīng)用程序中啟動(dòng)后,在代碼中設(shè)置變量:

from langchain.llms import OpenAI

llm = OpenAI(openai_api_key="...")


LangChain的關(guān)鍵部分

LangChain之所以偉大,是因?yàn)樗`活且模塊化。它將語(yǔ)言處理分解為單獨(dú)的部分,讓開發(fā)者創(chuàng)建自定義工作流程。以下是它的關(guān)鍵部分:

組件和鏈:執(zhí)行語(yǔ)言處理特定任務(wù)的模塊。鏈將這些組件連接起來(lái),形成自定義工作流程

提示模板:可重復(fù)使用的提示,可以更改其中的特定值。例如,一個(gè)詢問(wèn)用戶姓名的提示可以被個(gè)性化

向量存儲(chǔ):通過(guò)文檔的數(shù)字意義來(lái)保存和搜索信息

索引和檢索器:存儲(chǔ)和查找有關(guān)模型訓(xùn)練數(shù)據(jù)的詳細(xì)信息,以獲得更好的響應(yīng)

輸出解析器:管理和精煉模型的響應(yīng),使其更有結(jié)構(gòu)

示例選擇器:從模型的訓(xùn)練數(shù)據(jù)中選擇正確的例子,提高響應(yīng)準(zhǔn)確性

代理:具有特定任務(wù)的唯一實(shí)例,如聊天機(jī)器人或移動(dòng)應(yīng)用程序


在LangChain中構(gòu)建一個(gè)由LLM驅(qū)動(dòng)的應(yīng)用程序


LangChain的LLM類連接到不同的語(yǔ)言模型提供商,如OpenAI和Hugging Face。我們可以輕松使用LangChain構(gòu)建一個(gè)帶有提示的應(yīng)用程序,并得到輸出。例如:

import os

from langchain.llms import OpenAI

llm = OpenAI(model_name="gpt-3.5-turbo",

openai_api_key=os.environ["OPENAI_API_KEY"])

print(llm("Tell me a joke about pizza!"))


這可能會(huì)得到類似這樣的輸出:


Why did the pizza maker go to art school?

Because they wanted to get a "pizza" the creative action!

Hahahaha….. so funny Mr. gpt-3.5-turbo….


如果我們想要切換模型,只需在代碼中更改一些細(xì)節(jié)即可。


在LangChain中管理LLMs的提示

LLMs需要正確的提示才能得到正確的輸出。LangChain中的PromptTemplate通過(guò)使用模板生成提示,幫助生成提示?梢栽诒3种鹘Y(jié)構(gòu)的同時(shí)輕松更改值。例如:


from langchain.llms import OpenAI

from langchain import PromptTemplate

import os

USER_INPUT = "chocolate cake"

llm = OpenAI(model_name="gpt-3.5-turbo",

openai_api_key=os.environ["OPENAI_API_KEY"])

template = """I'm interested in making {dish}. Can you provide me with a simple recipe for it, including the main ingredients and basic instructions?"""

prompt = PromptTemplate(input_variables=["dish"], template=template)

final_prompt = prompt.format(dish=USER_INPUT)

print(f"LLM Output: {llm(final_prompt)}")

這使得管理所有提示并處理動(dòng)態(tài)輸入變得非常容易。


在多步驟工作流中結(jié)合LLMs和提示

在LangChain中進(jìn)行鏈接意味著將LLMs與其他元素組合用于應(yīng)用程序。我們可以:

使用一個(gè)LLM的輸出作為另一個(gè)LLM的輸入。

將LLMs與模板結(jié)合使用。

將LLMs與外部數(shù)據(jù)或聊天歷史結(jié)合使用。


例如:

from langchain.llms import OpenAI

from langchain.chains import LLMChain, SimpleSequentialChain

from langchain import PromptTemplate

import os

llm = OpenAI(model_name="gpt-3.5-turbo",

openai_api_key=os.environ["OPENAI_API_KEY"])

# 鏈中的第一步

template = "Can you provide a brief summary of the movie {movie_title}? Please keep it concise."

first_prompt = PromptTemplate(input_variables=["movie_title"],

template=template)

chain_one = LLMChain(llm=llm, prompt=first_prompt)

# 鏈中的第二步

second_prompt = PromptTemplate(input_variables=["actor"],

template="Can you list three movies featuring {actor}?")

chain_two = LLMChain(llm=

llm, prompt=second_prompt)

# 結(jié)合第一和第二鏈

overall_chain = SimpleSequentialChain(chains=[chain_one, chain_two], verbose=True)

final_answer = overall_chain.run("Inception")

此示例構(gòu)建了一個(gè)兩步鏈,用于查找有關(guān)城市的旅游信息。


深入學(xué)習(xí)

LangChain是一個(gè)Python框架,讓我們可以使用LLMs構(gòu)建應(yīng)用程序。它與各種模型連接,使與LLM和提示管理有關(guān)的一切變得簡(jiǎn)單。要了解更多信息,請(qǐng)查看精彩的LangChain文檔,其中包含有關(guān)各種功能和示例的信息。


本文網(wǎng)址:
下一篇:沒有資料

相關(guān)信息:
版權(quán)所有 CopyRight 2006-2017 江蘇和訊自動(dòng)化設(shè)備有限公司 常州自動(dòng)化培訓(xùn)中心 電話:0519-85602926 地址:常州市新北區(qū)府琛商務(wù)廣場(chǎng)2號(hào)樓1409室
蘇ICP備14016686號(hào)-2 技術(shù)支持:常州山水網(wǎng)絡(luò)
本站關(guān)鍵詞:常州PLC培訓(xùn) 常州PLC編程培訓(xùn) 常州PLC編程 常州PLC培訓(xùn)班 網(wǎng)站地圖 網(wǎng)站標(biāo)簽
在線與我們?nèi)〉寐?lián)系
亚洲mv大片欧洲mv大片入口,国产粉嫩无码一区二区三区,国内精品自产拍在线观看91,久久久亚洲欧洲日产国码二区,中文字幕人妻久久一区二区三区