Langchain:什么是 Chain?
Langchain:什么是 Chain?
Chain翻译过来就是链子,按照字面意思来也就是我们可以把整个任务当作一条链子一样链接起来,以便于我们完成更复杂的任务。
为什么使用Chain?
你可能会觉得,我既然想使用大模型,我直接问ChatGPT不就好了,干嘛大费周章的使用Chain布置任务?
当然了,面对一些简单的任务我们可以直接调用LLM,但是面对更复杂的任务,直接调用会非常低效。
面对我们之前提到过的直接调用LLM会出现缺乏记忆、无法访问外部数据、无法执行复杂任务,以及难以集成其他工具的问题,Chain提供了一个框架,让我们可以系统的维护这些复杂的工作流。
以下我们提供一个典型的例子来解释一下:
from langchain_openai import ChatOpenAI
from langchain_core.prompts import ChatPromptTemplate
import os
import dotenv
from langchain_core.output_parsers import StrOutputParser
dotenv.load_dotenv()
k = os.environ.get('API_KEY')
llm = ChatOpenAI(
model='deepseek-chat',
base_url='https://api.deepseek.com/',
temperature=0,
api_key=k
)
p = ChatPromptTemplate.from_template('翻译成英文:{text}')
c = p | llm | StrOutputParser()
r = c.invoke({"text":'你好世界'})
print(r) #输出:Hello world
想达到翻译的目的,我们可以利用管道操作符,将我们的prompt传入llm中进行处理,然后将我们想要的内容使用 StrOutputParser()进行提纯,从而构成了一个chain

浙公网安备 33010602011771号