Skip to main content

从LangChainHub加载

本笔记本介绍了如何从LangChainHub加载链。

from langchain.chains import load_chain

chain = load_chain("lc://chains/llm-math/chain.json")

API参考:

chain.run("whats 2 raised to .12")
> 进入新的LLMMathChain链...
whats 2 raised to .12
答案:1.0791812460476249
> 完成链。
'答案:1.0791812460476249'

有时链可能需要额外的参数,这些参数没有与链一起序列化。例如,一个在向量数据库上进行问题回答的链将需要一个向量数据库。

from langchain.embeddings.openai import OpenAIEmbeddings
from langchain.vectorstores import Chroma
from langchain.text_splitter import CharacterTextSplitter
from langchain import OpenAI, VectorDBQA

API参考:

from langchain.document_loaders import TextLoader

loader = TextLoader("../../state_of_the_union.txt")
documents = loader.load()
text_splitter = CharacterTextSplitter(chunk_size=1000, chunk_overlap=0)
texts = text_splitter.split_documents(documents)

embeddings = OpenAIEmbeddings()
vectorstore = Chroma.from_documents(texts, embeddings)

API参考:

使用直接本地API运行Chroma。
使用DuckDB内存数据库。数据将是临时的。
chain = load_chain("lc://chains/vector-db-qa/stuff/chain.json", vectorstore=vectorstore)
query = "What did the president say about Ketanji Brown Jackson"
chain.run(query)
"总统说Ketanji Brown Jackson是一位巡回上诉法院法官,是全国顶级法律专家之一,曾是私人执业的顶级诉讼律师,曾是联邦公共辩护人,得到了从警察协会到由民主党和共和党任命的前法官的广泛支持,并将继续Justice Breyer的卓越传统。"