一.链式调用
from langchain import PromptTemplate, LLMChain
from langchain.chains import SequentialChain
from langchain.chat_models import ChatOpenAI
g1_prompt = PromptTemplate(input_variables=["year1", "team_name1", "team_name2"],
template="{year1}年的{team_name1}和{team_name2}哪个球队进球数最多,只说球队名称.")
g2_prompt = PromptTemplate(input_variables=["year2"], template="{year2}年的欧冠联赛的冠军是哪支球队,只说球队名称.")
g3_prompt = PromptTemplate(input_variables=["team1", "team2"], template="{team1}和{team2}哪只球队获得欧冠的次数多一些?")
llm = ChatOpenAI(temperature=0, model="gpt-3.5-turbo-0613")
chain1 = LLMChain(llm=llm, prompt=g1_prompt, output_key="team1")
chain2 = LLMChain(llm=llm, prompt=g2_prompt, output_key="team2")
chain3 = LLMChain(llm=llm, prompt=g3_prompt)
sequential_chain = SequentialChain(chains=[chain1, chain2, chain3],
input_variables=["year1", "year2", "team_name1", "team_name2"],
verbose=True)
answer = sequential_chain.run(year1=2000, year2=2010, team_name1="Manchester United", team_name2="FC Barcelona")
print(answer)