1.longchain
什么?什么?longchian怎么变成插件了,是这样的:
langchain是用于帮助开发者将第三方插件或资源与LLM集成,从而改进LLM的局限,扩展LLM的能力,构建端到端应用流程的开源编程框架/库。
1)langchain.prompts,langchain中对提示模板的封装,能方便生成用于chains或agents中的提示。
from langchain.prompts import PromptTemplate
from langchain.llms import HuggingFaceHub
# HuggingFace提供的API TOKEN,即开发者Secret Key
os.environ['HUGGINGFACEHUB_API_TOKEN'] = config['keys']['huggingfacehub_api_token']
# 创建Google T5的LLM
llm_flan_t5 = HuggingFaceHub(repo_id = 'google/flan-t5-xl', model_kwargs = {'temperature':1e-10})
# 创建自定义模板
template = """Question: {question}
Answer: """
# 通过模板,创建prompt
prompt = PromptTemplate(template = template, input_variables=['question'])
# 创建调用chain
llm_chain = LLMChain(prompt = prompt, llm = llm_flan_t5, verbose = True)
# FLAN-T5不支持中文
input_text = 'Who is current president of USA?'
print(input_text)
print(llm_chain.run(input_text))
2)langchain.chains: Chain由一系列组件(llm,prompt等)或子Chain组合形成,能完成特定任务。Chain可以看做是对预定义执行流程和流程执行组件的封装。多个Chain可以组合成更复杂的Chain,用来完成复杂任务。
llm = OpenAI(temperature = 0.9)
prompt = PromptTemplate(inpu