LangChain 教程——LangChain 基本使用
LangChain
LangChain 是一個用於開發由大型語言模型 (LLM) 驅動的應用程序的框架,幫助開發者使用大型語言模型(LLMs)和聊天模型構建端到端的應用程序。
LangChain 庫主要由以下幾個不同的包組成:
-
langchain-core:基礎抽象和 LangChain 表達語言;
-
langchain-community:第三方集成,主要包括 langchain 集成的第三方組件;
-
langchain:主要包括鏈(chain)、代理(agent)和檢索策略;
LangChain 的核心組件:
-
模型(Models):包含各大語言模型的 LangChain 接口和調用細節,以及輸出解析機制;
-
提示模板(Prompts):使提示工程流線化,進一步激發大語言模型的潛力;
-
數據檢索(Indexes):構建並操作文檔的方法,接受用戶的查詢並返回最相關的文檔,輕鬆搭建本地知識庫;
-
記憶(Memory):通過短時記憶和長時記憶,在對話過程中存儲和檢索數據,讓 CahtBot 記住你。
-
鏈(Chains):LangChain 中的核心機制,以特定方式封裝各種功能,並通過一系列的組合,自動而靈活地完成任務;
-
代理(Agents):另一個 LangChain 中核心的機制,通過 “代理” 讓大模型自主調用外部工具和內部工具,使智能 Agent 成爲可能。
好了,這裏就不過多介紹 LangChain 了,大家可以去 LangChain 官網瞭解。
安裝 LangChain
在開始編寫 LangChain 程序前,首先執行如下代碼安裝 openai 和 langchain:
pip install openai
pip install langchain-openai
pip install langchain
安裝完畢後,接下來我們使用 OpenAI、智譜 AI、LMStudio 的 openai 服務三種方式來編寫 LangChain 程序。
個人比較推薦使用 LMStudio 的 openai 服務。
OpenAI
注意:OpenAI 需要科學上網才能使用,不使用科學上網可以跳過這一方式。
進入 OpenAI 官網,根據圖中順序,創建 API keys 並複製密鑰:
接下來編寫 LangChain 程序,示例代碼如下:
from langchain_openai import ChatOpenAI # 導入ChatOpenAI
openai_api_key=剛剛複製的OpenAIAPI密鑰
llm=ChatOpenAI(openai_api_key=openai_api_key)
print(llm.invoke('中國的首都是哪裏?不需要介紹'))
運行結果爲:
北京
注意:如果沒有 OpenAI 的 API 使用次數,會報錯:
openai.RateLimitError: Error code: 429 - {'error': {'message': 'You exceeded your current quota, please check your plan and billing details. For more information on this error
大家可以根據需求購買。
如果不想每次都設置 OpenAI 的 API 密鑰,可以在系統的環境變量中添加密鑰,如下圖所示:
代碼修改爲:
from langchain_openai import ChatOpenAI
import os
openai_api_key=os.getenv('OPEN_API_KEY') # 在系統環境變量中獲取openAI的API密鑰
llm=ChatOpenAI(openai_api_key= openai_api_key)
llm.invoke('中國的首都是哪裏?不需要介紹')
智譜 AI
由於 OpenAI 需要科學上網才能使用,所以我們可以使用智譜 AI,其新用戶免費送 2000 萬次請求,創建 API Key 並複製密鑰如下圖所示:
執行如下代碼安裝智譜 AI:
pip install zhipuai
示例代碼如下:
from zhipuai import ZhipuAI
client=ZhipuAI(api_key='智譜AI密鑰')
response = client.chat.completions.create(
# 使用的模型
model='glm-4',
# 會話內容
messages=[
{"role": "user", "content": "你好"},
{"role": "assistant", "content": "我是人工智能助手"},
{"role": "user", "content": "如何學好LangChain"}
],
# 流式輸出
stream=True
)
for chunk in response:
print(chunk.choices[0].delta.content,end="")
運行結果如下:
LMStudio 的 openai 服務
大家可以根據這篇文章安裝 LMStudio。
安裝完畢後,如下圖所示,加載模型:
完成以上步驟後,編寫如下代碼:
from langchain_openai import ChatOpenAI
openai_api_key="google/gemma-3-12b" # 可以不設
openai_api_base="http://127.0.0.1:1234/v1"
chat =ChatOpenAI(
openai_api_key=openai_api_key, # 密鑰
openai_api_base=openai_api_base, # openai接口
)
print(chat.invoke("當前使用的大模型版本是多少"))
運行結果如下:
好了,LangChain 教程——LangChain 基本使用就講到這裏了,下一篇我們學習 LangChain 教程——提示詞模板。
公衆號:白巧克力 LIN
本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源:https://mp.weixin.qq.com/s/mq_3fsXAVrv4GdPEDoJ_cA