精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Java 程序員從零開始學 LangChain —模型組件

人工智能
LangChain? 的模型組件有三種類型,分別是 LLM? 大語言模型,Chat Model? 聊天模型和文本嵌入模型 Text Embedding Models。

前面的文章了不起給大家介紹了 LangChain 的一些基本知識,沒看過的小伙伴可以點擊這里去看下,今天了不起給大家介紹一下 LangChain 的第一個很重要的組件模型 Model。

注意這里說的模型是指 LangChain 的模型組件,而不是指類似于 OpenAI 的語言模型,之所以 LangChain 會出現模型組件就是因為業內的語言模型太多了,除了 OpenAI 這家公司的語言模型之外,還很有很多其他家的。

LangChain 的模型組件有三種類型,分別是 LLM 大語言模型,Chat Model 聊天模型和文本嵌入模型 Text Embedding Models。

LLM 大語言模型

LLM 作為最基本的一種模型組件,輸入和輸出都只支持字符串,在大部分的場景下就可以滿足我們的需求了。我們可以在 Colab([https://colab.research.google.com) 上面直接寫 Python 代碼

舉個栗子

下面是一個 case,先安裝依賴,再執行下面的代碼。

pip install openai
pip install langchain
import os
# 配置OpenAI 的 API KEY
os.environ["OPENAI_API_KEY"] ="sk-xxx"
# 從 LangChain 中導入 OpenAI 的模型
from langchain.llms import OpenAI
# 三個參數分別代表OpenAI 的模型名稱,執行的次數和隨機性,數值越大越發散
llm = OpenAI(model_name="text-davinci-003", n=2, temperature=0.3)
llm.generate(["給我講一個故事", "給我講一個笑話"])

運行的結果如下

圖片

Chat Model 聊天模型

Chat Model 是基于 LLM 模型的,只不過 Chat Model 相對于 LLM 模型組件間輸入和輸出更加結構化,輸入和輸出的參數的類型都是 Chat Model,而不是簡單的字符串。常用的 Chat Model 類型有如下幾種

  1. AIMessage:用來保存 LLM 的響應,以便在下次請求時把這些信息傳回給 LLM。
  2. HumanMessage:發送給 LLMs 的提示信息,比如“實現一個快速排序方法”
  3. SystemMessage:設置 LLM 模型的行為方式和目標。你可以在這里給出具體的指示,比如“作為一個代碼專家”,或者“返回 json 格式”。
  4. ChatMessage:ChatMessage 可以接收任意形式的值,但是在大多數時間,我們應該使用上面的三種類型。

舉個栗子

from langchain.chat_models import ChatOpenAI
from langchain.schema import (
    AIMessage,
    HumanMessage,
    SystemMessage
)
chat = ChatOpenAI(temperature=0)

messages = [
        SystemMessage(cnotallow="返回的數據markdown 語法進行展示,代碼使用代碼塊包裹"),
        HumanMessage(cnotallow="用 Java 實現一個二分查找算法")
]

print(chat(messages))

生成的內容字符串形式如下

cnotallow='二分查找算法,也稱折半查找算法,是一種在有序數組中查找特定元素的搜索算法。該算法的時間復雜度為 O(log n)。\n\n以下是 Java 實現二分查找算法的代碼:\n\njava\npublic class BinarySearch {\n public static int binarySearch(int[] arr, int target) {\n int left = 0;\n int right = arr.length - 1;\n while (left <= right) {\n int mid = (left + right) / 2;\n if (arr[mid] == target) {\n return mid;\n } else if (arr[mid] < target) {\n left = mid + 1;\n } else {\n right = mid - 1;\n }\n }\n return -1;\n }\n\n public static void main(String[] args) {\n int[] arr = {1, 3, 5, 7, 9};\n int target = 5;\n int index = binarySearch(arr, target);\n if (index != -1) {\n System.out.println("目標元素 " + target + " 在數組中的下標為 " + index);\n } else {\n System.out.println("目標元素 " + target + " 不在數組中");\n }\n }\n}\n\n\n在上述代碼中,binarySearch 方法接收一個有序數組和一個目標元素,返回目標元素在數組中的下標,如果目標元素不在數組中,則返回 -1。\n\n在 binarySearch 方法中,使用兩個指針 left 和 right 分別指向數組的左右兩端,然后在一個 while 循環中不斷縮小查找范圍,直到找到目標元素或者查找范圍為空。在每次循環中,計算中間位置 mid,然后將目標元素與中間位置的元素進行比較,如果相等,則返回中間位置的下標;如果目標元素比中間位置的元素大,則將左指針移到中間位置的右邊;如果目標元素比中間位置的元素小,則將右指針移到中間位置的左邊。' additional_kwargs={} example=False

將 content 里面的內容提取出來,用 markdown 語法展示出來是這樣的

圖片

使用這個模型組件,可以進行一些角色的預設,然后來定制個性化的問答。

Prompts template

from langchain.chat_models import ChatOpenAI
from langchain.prompts import (
    ChatPromptTemplate,
    PromptTemplate,
    SystemMessagePromptTemplate,
    AIMessagePromptTemplate,
    HumanMessagePromptTemplate,
)
from langchain.schema import (
    AIMessage,
    HumanMessage,
    SystemMessage
)
system_template="你是一個把{input_language}翻譯成{output_language}的助手"
system_message_prompt = SystemMessagePromptTemplate.from_template(system_template)
human_template="{text}"
human_message_prompt = HumanMessagePromptTemplate.from_template(human_template)

chat_prompt = ChatPromptTemplate.from_messages([system_message_prompt, human_message_prompt])
messages = chat_prompt.format_prompt(input_language="英語", output_language="漢語", text="I love programming.")

print(messages)

chat = ChatOpenAI(temperature=0)

print(chat(messages.to_messages()))

output

messages=[SystemMessage(cnotallow='你是一個把英語翻譯成漢語的助手', additional_kwargs={}), HumanMessage(cnotallow='I love programming.', additional_kwargs={}, example=False)] cnotallow='我喜歡編程。' additional_kwargs={} example=False

文本嵌入模型 Text Embedding Models

文本嵌入模型組件相對比較難理解,這個組件接收的是一個字符串,返回的是一個浮點數的列表。在 NLP 領域中 Embedding 是一個很常用的技術,Embedding 是將高維特征壓縮成低維特征的一種方法,常用于自然語言處理任務中,如文本分類、機器翻譯、推薦系統等。它將單詞、短語、句子等文本中的離散數據映射到實數域上的向量,這些向量可以被神經網絡更好地處理和學習。通過 Embedding,文本數據可以被更好地表示和理解,提高了模型的表現力和泛化能力。

舉個栗子

from langchain.embeddings import OpenAIEmbeddings
embeddings = OpenAIEmbeddings()
text = "hello world"

query_result = embeddings.embed_query(text)
doc_result = embeddings.embed_documents([text])

print(query_result)
print(doc_result)

output

[-0.01491016335785389, 0.0013780705630779266, -0.018519161269068718, -0.031111136078834534, -0.02430146001279354, 0.007488010451197624,0.011340680532157421, 此處省略 .......

圖片

總結

今天給大家介紹了一下 LangChain 的模型組件,有了模型組件我們就可以更加方便的跟各種 LLMs 進行交互了。

參考資料

官方文檔:https://python.langchain.com/en/latest/modules/models.html

責任編輯:武曉燕 來源: Java極客技術
相關推薦

2023-06-09 07:34:16

Java提示詞組件

2022-02-16 22:57:57

Mitmproxy抓包工具

2024-08-01 11:21:52

2015-08-24 14:59:06

Java線程

2011-04-06 15:55:50

開發webOS程序webOS

2024-07-31 08:14:17

2024-12-09 09:44:34

機器學習模型分類器

2015-08-26 10:01:20

iOS開發

2024-07-30 09:22:44

PostgreSQL數據庫工具

2023-02-20 09:55:00

微服務框架單體架構

2015-11-17 16:11:07

Code Review

2019-01-18 12:39:45

云計算PaaS公有云

2018-04-18 07:01:59

Docker容器虛擬機

2024-12-06 17:02:26

2020-07-02 15:32:23

Kubernetes容器架構

2015-03-06 17:24:56

Android應用安全安卓應用安全

2018-09-14 17:16:22

云計算軟件計算機網絡

2010-05-26 17:35:08

配置Xcode SVN

2024-05-15 14:29:45

2011-04-29 10:46:32

iPhone開發入門iPhoneiOS
點贊
收藏

51CTO技術棧公眾號

久久99精品久久久久久国产越南 | 国内精品久久影院| 天天综合天天添夜夜添狠狠添| 外国精品视频在线观看 | 欧美电影在线观看免费| 在线免费不卡电影| 椎名由奈jux491在线播放 | 亚洲自拍一区在线观看| 欧美aaaa视频| 91精品国产欧美日韩| 男女猛烈激情xx00免费视频| 岛国av一区二区三区| 免费看污久久久| 国产永久免费视频| 99热这里只有精品8| 在线性视频日韩欧美| 超碰中文字幕在线观看| 国产精品一区二区av影院萌芽| 成人欧美一区二区三区| 久久99国产精品99久久| 日韩久久久久久久久久| 婷婷激情综合| 亚洲欧美在线x视频| japan高清日本乱xxxxx| 色综合天天色| 狠狠色噜噜狠狠狠狠97| 波多野结衣与黑人| melody高清在线观看| 国产在线一区二区综合免费视频| 青青草成人在线| 91香蕉国产视频| 亚洲性视频大全| 亚洲国产精品va| 久久久九九九热| 国产情侣一区二区三区| 日韩欧美在线视频观看| 亚洲aⅴ天堂av在线电影软件| 亚洲乱码精品久久久久..| 在线精品观看| 欧美激情乱人伦| 天堂资源在线视频| 激情五月色综合国产精品| 亚洲精品成人av| 熟女人妻一区二区三区免费看| 中文成人在线| 欧美日韩视频在线观看一区二区三区| 久久视频免费在线| 黄色网址免费在线观看| 国产精品少妇自拍| 欧美成熟毛茸茸复古| 特黄aaaaaaaaa真人毛片| 黑人巨大精品欧美黑白配亚洲| 欧美在线观看日本一区| www欧美在线| 99av国产精品欲麻豆| 97欧美精品一区二区三区| 日本一区二区网站| 国产亚洲毛片在线| 97在线精品国自产拍中文| 三级黄色在线视频| 亚洲第一在线| 久久久久久久激情视频| 日韩成人免费在线视频| 狠狠爱www人成狠狠爱综合网| 色综合视频一区中文字幕| 少妇人妻丰满做爰xxx| 自拍偷拍欧美专区| 欧美激情一级精品国产| 麻豆亚洲av成人无码久久精品| 女人天堂亚洲aⅴ在线观看| 欧美夫妻性生活视频| 国产亚洲精品av| 亚洲精品男同| 欧美在线精品免播放器视频| 日本免费在线观看视频| 奇米影视一区二区三区| 欧美一级高清免费| 中文在线免费观看| 国产中文字幕一区| 韩国成人动漫在线观看| 久久这里精品| 椎名由奈av一区二区三区| 欧美极品少妇无套实战| 五月天av在线| 欧美日韩一区久久| aaa黄色大片| 136福利精品导航| 亚洲欧美精品在线| 午夜精品一区二区三级视频| 日韩影院二区| 久久久久久九九九| 波多野结衣影片| 国产激情一区二区三区四区| 久久久久无码国产精品一区| 日本在线人成| 精品久久久久久| 精品久久久久久中文字幕2017| 蜜桃视频m3u8在线观看| 欧美日韩国产另类一区| 日韩无码精品一区二区| 日韩精品一区二区三区免费观看| 欧美人在线视频| 香蕉污视频在线观看| 日本美女一区二区三区| 国产精品一区二区三区在线观| 国产视频三级在线观看播放| 亚洲女同女同女同女同女同69| 久久久一本二本三本| 日韩毛片免费看| 国产手机视频精品| 日本黄色小说视频| 日本人妖一区二区| 精品国产乱码久久久久久久软件| 视频免费一区| 精品久久久香蕉免费精品视频| 色婷婷狠狠18| 欧美综合精品| 久久五月天色综合| 性色av一区二区三区四区| 波多野结衣在线一区| 黄瓜视频免费观看在线观看www | 国产免费久久久| 99精品国产99久久久久久白柏| 手机福利在线视频| av有声小说一区二区三区| 日韩久久精品一区| 韩国一级黄色录像| 日本免费新一区视频| 欧美精品一区二区三区久久| 超碰在线最新网址| 欧美一级免费观看| 国产精品免费在线视频| 日韩高清不卡在线| 粉嫩av四季av绯色av第一区| 成人在线直播| 在线不卡的av| 毛茸茸多毛bbb毛多视频| 亚洲调教视频在线观看| 成人午夜高潮视频| 日本黄色片在线观看| 黄色精品在线看| 亚洲 欧美 日韩在线| 欧美激情五月| 亚洲一区国产精品| av在线免费网站| 在线不卡的av| 久久99久久99精品免费看小说| 久色婷婷小香蕉久久| 亚洲精品成人久久久998| 亚洲精品在线影院| 在线亚洲午夜片av大片| 少妇又紧又色又爽又刺激视频| 国产亲近乱来精品视频 | 另类综合日韩欧美亚洲| 欧美专区一二三 | 国产成人极品视频| 同心难改在线观看| 欧美性xxxxhd| 日本乱子伦xxxx| 日本视频一区二区| 手机福利在线视频| 成人福利免费在线观看| 午夜免费久久久久| 深夜视频在线免费| 欧美在线观看禁18| 天天操夜夜操av| 国产精品一区二区x88av| 女人帮男人橹视频播放| silk一区二区三区精品视频| 9.1国产丝袜在线观看| 国产三级视频在线看| 欧美日精品一区视频| 欧美三级 欧美一级| zzijzzij亚洲日本少妇熟睡| 欧美牲交a欧美牲交aⅴ免费下载| 国产精品羞羞答答在线观看 | 在线观看中文字幕网站| 亚洲男人的天堂一区二区| 少妇搡bbbb搡bbb搡打电话| 在线综合视频| 少妇免费毛片久久久久久久久| 日韩不卡免费高清视频| 久久影院免费观看| 手机看片1024国产| 欧美亚洲日本一区| 久久激情免费视频| 久久新电视剧免费观看| 无需播放器的av| 中文不卡在线| 日本视频一区二区不卡| 国产亚洲高清一区| 热久久免费视频精品| 免费a级毛片在线播放| 亚洲激情自拍图| 天天综合网入口| 国产精品久久久久三级| 国产视频精品视频| 日本亚洲视频在线| 18禁裸男晨勃露j毛免费观看| 精品大片一区二区| 国产精品三区四区| 四虎在线精品| 91精品国产91久久久久久久久| 高清av在线| 日韩欧美激情一区| 成人免费一区二区三区| 国产精品久久久久天堂| 精品无码人妻一区| 国产精品一区二区在线观看不卡| 国产日韩一区二区在线观看| 一本到12不卡视频在线dvd| 欧美日韩亚洲一区二区三区在线观看 | www.xxx亚洲| 日韩一区电影| 欧美亚州在线观看| 理论片一区二区在线| 亚洲精品日韩激情在线电影| 欧美激情护士| 欧美极品欧美精品欧美视频 | 色综合www| 91在线精品播放| 成人国产二区| 97免费视频在线播放| 男女视频在线| 欧美大成色www永久网站婷| 第三区美女视频在线| 日韩精品在线免费| 国产刺激高潮av| 欧美一级免费大片| 国产又粗又黄又爽| 欧美综合一区二区| 国产午夜精品无码| 一区二区三区欧美在线观看| 波多野结衣在线网址| 国产精品久久久久aaaa樱花| av男人的天堂av| 久久天堂av综合合色蜜桃网| 中文字幕 日本| 成人av第一页| 中文字幕三级电影| 成人h精品动漫一区二区三区| 中文字幕永久免费| 国产成人欧美日韩在线电影| 九九九九九国产| 久久99精品久久久久久| 亚洲一区二区福利视频| 激情文学综合丁香| 日韩av片免费观看| 国产在线精品一区二区不卡了 | 久久久免费高清视频| 天天综合色天天| 国产 日韩 欧美 在线| 午夜伊人狠狠久久| 日韩毛片在线播放| 精品日本高清在线播放| 欧美精品二区三区| 一本久久精品一区二区| 99久久久无码国产精品免费蜜柚| 日韩欧美国产高清91| 免费一级a毛片| 欧美区视频在线观看| 国产精品视频一区二区三区,| 91精品国产日韩91久久久久久| 国产视频一区二区三| 日韩精品中文字幕在线一区| 人妻与黑人一区二区三区| 亚洲精品中文字幕有码专区| 久久久资源网| 亚洲精选在线观看| 亚洲av成人无码网天堂| 亚洲第一天堂av| 加勒比一区二区三区在线| 国产一区二区三区欧美| 尤物视频在线免费观看| 欧美理论电影在线播放| 少妇淫片在线影院| 国产精品一区二区三区久久久| 国产精品久久久久久久久久辛辛 | 西野翔中文久久精品字幕| 久久综合狠狠综合久久综青草| 成人看的视频| 一区二区三区四区在线视频| 影音先锋中文字幕一区| 久久精品视频91| 国产精品99久久久久久有的能看| 中国极品少妇videossexhd| 国产精品每日更新| 国产精品成人国产乱| 欧美亚洲一区二区在线观看| 亚洲男人第一天堂| 一区二区三区四区视频| 日本在线视频网址| 国产精品极品美女在线观看免费| 嫩呦国产一区二区三区av | 国产精品99久久精品| 国产无限制自拍| 另类小说一区二区三区| 亚洲av人人澡人人爽人人夜夜| 国产亚洲精品7777| 久久久久久久久久99| 欧美综合一区二区三区| 人妻精品一区二区三区| 日韩视频欧美视频| free性护士videos欧美| 91免费国产网站| 妖精视频一区二区三区| 成人在线观看毛片| 三级欧美在线一区| 一级黄色免费毛片| 亚洲国产精品t66y| 欧美成人aaaaⅴ片在线看| 欧美性高清videossexo| 爽爽视频在线观看| 欧美日本高清视频| 只有精品亚洲| 一区二区三区久久网| 老司机精品导航| 亚洲免费成人在线视频| 久久久www免费人成精品| 福利一区二区三区四区| 欧美一级搡bbbb搡bbbb| 亚洲 美腿 欧美 偷拍| 久久久久国产精品一区| 韩国三级大全久久网站| 一区二区冒白浆视频| 视频一区免费在线观看| 国产精品jizz| 亚洲一本大道在线| www.av导航| 中文精品99久久国产香蕉| 在线观看涩涩| 精品国产一区二区三区麻豆小说| 亚洲成av人电影| 最新av免费在线观看| 综合久久综合久久| 国产99免费视频| 亚洲天堂色网站| 视频在线日韩| 亚洲精品女av网站| 香蕉久久网站| 亚洲午夜精品一区| 综合久久国产九一剧情麻豆| 在线免费观看av片| 久久精品国产亚洲| 一区二区三区无毛| 熟女视频一区二区三区| 韩国成人精品a∨在线观看| 三级黄色在线观看| 欧美亚洲一区二区三区四区| 日韩美女网站| 亚洲a∨日韩av高清在线观看| 911久久香蕉国产线看观看| 日本特黄a级片| 日韩一区在线看| 一级黄色大片免费| 自拍偷拍亚洲一区| 黄色日韩网站| 一区二区三区四区在线视频 | 日本黄色录像片| 欧美性猛xxx| 欧美色综合一区二区三区| 国产精品999999| 久久国产综合| 天天综合成人网| 夜夜夜精品看看| 丝袜视频国产在线播放| 国产精品久久久久一区二区| 欧美r级电影| 一二三区视频在线观看| 精品国产成人在线| av午夜在线| 亚洲japanese制服美女| 精品二区久久| 亚洲自拍偷拍图| 这里只有精品免费| 波多野结衣视频一区二区| 日韩欧美一区二区视频在线播放 | 在线亚洲+欧美+日本专区| 国产色在线 com| 91免费视频网站| 亚洲日本视频| 艳妇乳肉亭妇荡乳av| 欧美唯美清纯偷拍| 手机av在线播放| 鲁鲁视频www一区二区| 久久成人免费日本黄色| 欧美日韩午夜视频| 欧美日韩国产首页| 成人ssswww在线播放| 亚洲一区二区三区午夜| 成人一区二区在线观看| 中文字幕福利视频| 欧美黄色www| 色男人天堂综合再现| 亚洲啪av永久无码精品放毛片| 91久久香蕉国产日韩欧美9色| yellow91字幕网在线| 欧美精品123| 国产jizzjizz一区二区| 无码人妻aⅴ一区二区三区有奶水|