中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

做測算的網(wǎng)站影視后期培訓機構(gòu)全國排名

做測算的網(wǎng)站,影視后期培訓機構(gòu)全國排名,短網(wǎng)址生成鏈接,微信上微網(wǎng)站怎么做的目錄 前言 一、概述 二、Model 三、Prompt 五、Output Parsers 總結(jié) 前言 隨著人工智能技術(shù)的不斷進步,大模型的應用場景越來越廣泛。LangChain框架作為一個創(chuàng)新的解決方案,專為處理大型語言模型的輸入輸出而設(shè)計。其中,Model IO&#…

目錄

前言

一、概述

二、Model

三、Prompt

五、Output Parsers

總結(jié)


前言

隨著人工智能技術(shù)的不斷進步,大模型的應用場景越來越廣泛。LangChain框架作為一個創(chuàng)新的解決方案,專為處理大型語言模型的輸入輸出而設(shè)計。其中,Model IO(輸入輸出)模塊扮演著至關(guān)重要的角色,負責構(gòu)建和管理數(shù)據(jù)交互的通道。本文將深入剖析ModelIO模塊的工作原理、功能特性,以及如何通過該模塊提升數(shù)據(jù)處理效率,進而加速AI大模型應用的開發(fā)。

一、概述

Model IO模塊是LangChain框架的數(shù)據(jù)交互中樞;它不僅負責準備和處理模型的輸入數(shù)據(jù),還管理模型產(chǎn)出的結(jié)果。主要包括一下3部分:

  1. 提示詞格式化(Input):接收原始輸入數(shù)據(jù)到將其轉(zhuǎn)換為模型可理解的格式
  2. 大模型調(diào)用(Model ):調(diào)用大語言模型API獲得返回結(jié)果
  3. 結(jié)果解析處理(Output):將大語言模型返回的結(jié)果進行解析處理。

??????

二、Model

???????1、LLMs

LLMs是LangChain 的核心組件LangChain并不提供自己的LLMs,它主要允許開發(fā)者使用統(tǒng)一的方式與不同的大型語言模型進行交。這包括與OpenAI、Cohere、Hugging Face等流行的LLMs服務(wù)進行接口對接。(類似于Completion,屬于文本生成類模型API的支持)

from langchain_openai import OpenAIllm = OpenAI()llm.invoke("奧巴馬當了幾年總統(tǒng)?")

?2、Chat?Model?

對于需要復雜對話管理能力的應用,LangChain框架提供了ChatModels模塊。這個模塊利用特殊的語言模型變體,優(yōu)化了聊天場景下的信息交換和處理流程。(類似于Chat Completion,屬于聊天會話類模型API的支持)

from langchain_openai import ChatOpenAIchat_model = ChatOpenAI(model="gpt-3.5-turbo-0125")from langchain_core.messages import (AIMessage,HumanMessage,SystemMessage
)# 設(shè)置模型角色,同時設(shè)置樣例
messages = [SystemMessage(content="你是一個智能助手"),HumanMessage(content="第二十一屆世界杯在哪兒舉行的?"),AIMessage(content="在俄羅斯"),HumanMessage(content="冠軍是哪個球隊")]# chat_model.invoke(messages)chat_model.invoke(messages).content

三、Prompt

通過Prompts模塊提供了靈活的提示詞模板和處理機制,允許用戶高效地定義和格式化這些提示,以便與LLMs進行有效的交互。

?1、Prompt?Template?

用于創(chuàng)建動態(tài)的提示詞模板,可以基于一定規(guī)則插入變量。例如:

## 可以動態(tài)傳入?yún)?shù)
from langchain.prompts import PromptTemplate# 定義提示詞模板
prompt_template = PromptTemplate.from_template("Tell me a {adjective} joke about {content}."
)
# 傳入?yún)?shù),格式化提示詞模板
prompt_template.format(adjective="funny", content="chickens")## 也可以不傳參數(shù)from langchain.prompts import PromptTemplateprompt_template = PromptTemplate.from_template("Tell me a joke")prompt_template.format()

2、ChatPromptTemplate

專門用于支持聊天場景,模擬多輪對話中的上下文交換。例如:

from langchain.prompts import ChatPromptTemplatechat_template = ChatPromptTemplate.from_messages([("system", "You are a helpful AI bot. Your name is {name}."),("human", "Hello, how are you doing?"),("ai", "I'm doing well, thanks!"),("human", "{user_input}"),]
)messages = chat_template.format_messages(name="Bob", user_input="What is your name?")chat_model.invoke(messages)

3、Few-shot prompt templates

利用有限示例來豐富大型語言模型(LLMs)的知識基礎(chǔ),并指導其推理過程。向模型提供針對性的樣本集合,這些樣本作為參考點,有效地提升模型在處理新穎問題時的邏輯推理能力和答案生成的精確度;同時還增強了模型在面對未知或復雜情境下的思維連貫性和適應性。

from langchain.prompts.few_shot import FewShotPromptTemplatefrom langchain.prompts.prompt import PromptTemplateexamples ?= [{"question": "富蘭克林·德拉諾·羅斯福和亞伯拉罕·林肯中哪個擔任總統(tǒng)的時間更長?","answer":"""這里需要后續(xù)問題嗎:是。后續(xù)問題:富蘭克林·德拉諾·羅斯福擔任了幾年總統(tǒng)?中間答案:富蘭克林·德拉諾·羅斯福擔任了12年的總統(tǒng)。后續(xù)問題:亞伯拉罕·林肯則擔任了幾年總統(tǒng)?中間答案:亞伯拉罕·林肯則擔任了5年的總統(tǒng)。因此最終答案是:富蘭克林·德拉諾·羅斯福"""},{"question": "百度的創(chuàng)始人是何時出生的?","answer":"""這里需要后續(xù)問題嗎:是。后續(xù)問題:百度的創(chuàng)始人是誰?中間答案:百度的創(chuàng)始人是李彥宏。后續(xù)問題:李彥宏是什么時候出生的?中間答案:李彥宏于1968年11月17日出生。因此最終答案是:1968年11月17日"""},{"question": "特雷西·麥克格雷迪和姚明,誰在NBA打的賽季多?","answer":"""這里需要后續(xù)問題嗎:是。后續(xù)問題:特雷西·麥克格雷迪在NBA打了幾個賽季?中間答案:特雷西·麥克格雷迪在NBA打了9個賽季。后續(xù)問題:姚明在NBA打了幾個賽季?中間答案:姚明在NBA打了8個賽季。因此最終答案是:特雷西·麥克格雷迪"""}]

1)使用一個樣本

# 定義提示詞模板
example_prompt = PromptTemplate(input_variables=["question", "answer"], template="Question: {question}\n{answer}")
# 使用第一個樣例作為參數(shù) 并輸出打印
print(example_prompt.format(**examples[0]))#輸出結(jié)果
Question: 富蘭克林·德拉諾·羅斯福和亞伯拉罕·林肯中哪個擔任總統(tǒng)的時間更長?這里需要后續(xù)問題嗎:是。
后續(xù)問題:富蘭克林·德拉諾·羅斯福擔任了幾年總統(tǒng)?
中間答案:富蘭克林·德拉諾·羅斯福擔任了12年的總統(tǒng)。
后續(xù)問題:亞伯拉罕·林肯則擔任了幾年總統(tǒng)?
中間答案:亞伯拉罕·林肯則擔任了5年的總統(tǒng)。
因此最終答案是:富蘭克林·德拉諾·羅斯福

?

2)使用所有樣本

# 使用所有的樣例
prompt = FewShotPromptTemplate(examples=examples,example_prompt=example_prompt,suffix="Question: {input}",input_variables=["input"]
)print(prompt.format(input="馬云比馬化騰大幾歲?"))
Question: 富蘭克林·德拉諾·羅斯福和亞伯拉罕·林肯中哪個擔任總統(tǒng)的時間更長?這里需要后續(xù)問題嗎:是。
后續(xù)問題:富蘭克林·德拉諾·羅斯福擔任了幾年總統(tǒng)?
中間答案:富蘭克林·德拉諾·羅斯福擔任了12年的總統(tǒng)。
后續(xù)問題:亞伯拉罕·林肯則擔任了幾年總統(tǒng)?
中間答案:亞伯拉罕·林肯則擔任了5年的總統(tǒng)。
因此最終答案是:富蘭克林·德拉諾·羅斯福Question: 百度的創(chuàng)始人是何時出生的?這里需要后續(xù)問題嗎:是。
后續(xù)問題:百度的創(chuàng)始人是誰?
中間答案:百度的創(chuàng)始人是李彥宏。
后續(xù)問題:李彥宏是什么時候出生的?
中間答案:李彥宏于1968年11月17日出生。
因此最終答案是:1968年11月17日Question: 特雷西·麥克格雷迪和姚明,誰在NBA打的賽季多?這里需要后續(xù)問題嗎:是。
后續(xù)問題:特雷西·麥克格雷迪在NBA打了幾個賽季?
中間答案:特雷西·麥克格雷迪在NBA打了9個賽季。
后續(xù)問題:姚明在NBA打了幾個賽季?
中間答案:姚明在NBA打了8個賽季。
因此最終答案是:特雷西·麥克格雷迪Question: 馬云比馬化騰大幾歲?

3)調(diào)用測試

llm.invoke(prompt.format(input="特朗普的爸爸的女兒的兄弟是誰?"))
'
這里需要后續(xù)問題嗎:是。
后續(xù)問題:特朗普的爸爸是誰?
中間答案:特朗普的爸爸是弗雷德·特朗普。
后續(xù)問題:弗雷德·特朗普的女兒是誰?
中間答案:弗雷德·特朗普的女兒是瑪麗·安娜·特朗普。
后續(xù)問題:瑪麗·安娜·特朗普的兄弟是誰?
中間答案:瑪麗·安娜·特朗普的兄弟是唐納德·特朗普。
因此最終答案是:唐納德·特朗普'

五、Output Parsers

為了進一步處理和解析LLMs的輸出結(jié)果,LangChain提供了一系列的Output Parsers。這些解析器能夠?qū)⒛P偷奈谋据敵鲛D(zhuǎn)換為更加結(jié)構(gòu)化的格式,便于后續(xù)的處理和使用。

from langchain.output_parsers import CommaSeparatedListOutputParser
from langchain.prompts import PromptTemplate
from langchain_openai import OpenAImodel = OpenAI()# 將輸出解析為逗號分隔的列表
parser = CommaSeparatedListOutputParser()
format_instructions = parser.get_format_instructions()prompt = PromptTemplate(template="List five {subject}.\n{format_instructions}",input_variables=["subject"],partial_variables={"format_instructions": format_instructions}
)## LCEL 鏈式表達式語言用法 (前一個的輸入,作為后一個的輸出)
chain = prompt | model | parser
chain.invoke({"subject": "ice cream flavors"})輸出:
['chocolate','vanilla','strawberry','mint chocolate chip','cookies and cream']


總結(jié)

通過以上相關(guān)的功能模塊,LangChain框架的Model IO模塊為大型語言模型的數(shù)據(jù)交互提供了強大支持。其精心設(shè)計的接口和工具讓開發(fā)者能夠更加專注于模型的實際應用,同時簡化了大模型調(diào)用數(shù)據(jù)流的管理細節(jié)。降低了大模型開發(fā)門檻,使得開發(fā)者可以便捷地實現(xiàn)高級的AI應用能力。

探索未知,分享所知;點擊關(guān)注,碼路同行,尋道人生!

http://www.risenshineclean.com/news/62314.html

相關(guān)文章:

  • 湖南網(wǎng)站建設(shè) 真好磐石網(wǎng)絡(luò)免費推廣網(wǎng)址
  • 山東青島網(wǎng)站建設(shè)樂天seo視頻教程
  • 做門窗投標網(wǎng)站優(yōu)化模型
  • 小學課程建設(shè)網(wǎng)站目標新網(wǎng)域名查詢
  • 百度免費做網(wǎng)站百度在線使用網(wǎng)頁版
  • spring boot 做網(wǎng)站關(guān)鍵詞優(yōu)化推廣公司
  • 手機網(wǎng)站自動適應短鏈接在線生成器
  • 山東平臺網(wǎng)站建設(shè)制作百度網(wǎng)頁版下載安裝
  • 住建部網(wǎng)站2015年城市建設(shè)統(tǒng)計seo優(yōu)化的優(yōu)點
  • 奉賢區(qū)網(wǎng)站建設(shè)收錄網(wǎng)站排名
  • 福田祥菱q雙排小貨車報價及圖片廈門seo推廣外包
  • 天津自己制作網(wǎng)站網(wǎng)站新站整站排名
  • 網(wǎng)站開發(fā)網(wǎng)頁設(shè)計游戲代理加盟平臺
  • seo兼職論壇手機優(yōu)化大師官網(wǎng)
  • 怎么快速推廣網(wǎng)站萬網(wǎng)域名交易
  • 建行信用卡網(wǎng)站登錄網(wǎng)站域名查詢系統(tǒng)
  • 那個網(wǎng)站做外貿(mào)好百度大搜是什么
  • dw做的網(wǎng)站鏈接不會跳轉(zhuǎn)什么是搜索引擎優(yōu)化
  • 做期貨網(wǎng)站微營銷平臺系統(tǒng)
  • 西寧網(wǎng)站設(shè)計制作公司品牌推廣軟文200字
  • 只做襯衫的網(wǎng)站關(guān)鍵詞采集軟件
  • 沈陽網(wǎng)站建設(shè)找哪家系統(tǒng)優(yōu)化軟件哪個好
  • 企業(yè)網(wǎng)站建設(shè)方案書范本域名批量查詢
  • 網(wǎng)站 續(xù)費商業(yè)策劃公司十大公司
  • 網(wǎng)站后端都需要什么意思網(wǎng)站交換鏈接的常見形式
  • 企業(yè)展示型電商網(wǎng)站模板google關(guān)鍵詞規(guī)劃師
  • php和什么語言做網(wǎng)站豬肉價格最新消息
  • 在越南做網(wǎng)站需要什么排超聯(lián)賽積分榜
  • 工業(yè)做網(wǎng)站技能培訓有哪些科目
  • 大連城市建設(shè)管理局網(wǎng)站建站公司網(wǎng)站建設(shè)