iT邦幫忙

2025 iThome 鐵人賽

DAY 10
0
生成式 AI

30 天打造你的 AI Agent:LangChain × n8n 實戰系列 第 10

第一次上手 LangChain:用 Gemini 打造智慧 Chain 與 PromptTemplate

  • 分享至 

  • xImage
  •  

昨天我們認識了 LangChain 的價值
它可以讓 LLM 變得更像「會思考與行動」的 Agent,而不只是單純的文字生成。

今天,我們要實際動手,體驗 LangChain 的核心功能:Chain 與 PromptTemplate


一、什麼是 Chain?

簡單來說,Chain 實際功能就是「流程串接器」
它可以把:

  1. 輸入(Input)
  2. 提示語(Prompt)
  3. 模型回應(LLM Output)
    整合成一個完整流程。

想像 Chain 是一個「黑盒」
你給它資料,它會幫你自動完成 prompt 填充、呼叫 LLM,然後回傳結果。


二、什麼是 PromptTemplate?

PromptTemplate 是 LangChain 幫你管理 prompt 的工具。
它可以:

  • 模板化提示語,避免硬編碼
  • 使用變數動態替換內容
  • 保持 prompt 一致性,提高維護性

範例:

from langchain.prompts import PromptTemplate

template = "請將以下英文翻譯成中文:{text}"
prompt = PromptTemplate(
    input_variables=["text"],
    template=template
)

之後就可以多次使用:

prompt.format(text="Hello world")

生成不同的 prompt,而不用每次重新寫文字。


三、實作範例:簡單翻譯 Chain(Gemini API)

1️⃣ 安裝套件

pip install langchain-google-genai langchain

2️⃣ 完整的 從初始化 LLM → 建立 Prompt → 建立 Chain → 到呼叫 Chain

import os
from langchain_google_genai import ChatGoogleGenerativeAI
from langchain.prompts import PromptTemplate
from langchain.chains import LLMChain

os.environ["GOOGLE_API_KEY"] = "你的_API_KEY"  #(前幾天的Gemini API Key)

# 初始化 Gemini LLM
llm = ChatGoogleGenerativeAI(model="gemini-1.5-flash", temperature=0)

# 建立 PromptTemplate
template = "請將以下英文翻譯成中文:{text}"
prompt = PromptTemplate(
    input_variables=["text"],
    template=template
)

# 建立 Chain
chain = LLMChain(llm=llm, prompt=prompt)

# 呼叫 Chain
result = chain.run("I love learning AI with LangChain.")
print(result)

可能輸出:
https://ithelp.ithome.com.tw/upload/images/20250919/20168458zGZEsqxuhl.png

我喜歡用 LangChain 學習人工智慧。

四、補充說明

  • Chain 可以串接多個步驟
    不只是單一步驟,也可以用 SequentialChainSimpleSequentialChain 將多個 Chain 串起來,實現更複雜流程。
    SimpleSequentialChain:多個 chain 串在一起,前一個的輸出會直接當成下一個的輸入。
    SequentialChain:比 Simple 更靈活,可以明確指定每個 chain 的輸入/出變數,適合複雜流程。

  • PromptTemplate 的好處
    減少硬編碼文字、避免重複錯誤,讓 prompt 更容易維護。


五、今日小結

今天你學會了:

  1. Chain 是什麼:輸入 → prompt → LLM → 輸出的流程工具
  2. PromptTemplate 的作用:管理模板化 prompt,支援變數替換
  3. 簡單實作:用 Gemini API 做一個英文翻中文的小工具

今日~目標達成啦!
妳各位太棒了!! 堅持了十天!! 繼續加油!!
你已經能用 Gemini + LangChain 寫出第一個小功能,
下一步,我們會學習如何把多個 Chain 串起來,打造更複雜的 AI 流程。 🚀


上一篇
認識 LangChain:為什麼開發 LLM Agent 要用它?
系列文
30 天打造你的 AI Agent:LangChain × n8n 實戰10
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言