1.导包
from langchain_openai import ChatOpenAI
from langchain.output_parsers import CommaSeparatedListOutputParser
from langchain.prompts import ChatPromptTemplate
2.设置提示
prompt = ChatPromptTemplate.from_messages([
("system", "{parser_instructions}"),
("human", "列出5个{subject}色系的十六进制颜色码。")
])
3.设置格式
output_parser = CommaSeparatedListOutputParser()
parser_instructions = output_parser.get_format_instructions()
model = ChatOpenAI(model="gpt-3.5-turbo",base_url="https://api.chatanywhere.tech/v1")
4.输入模型
model = ChatOpenAI(model="gpt-3.5-turbo",base_url="https://api.chatanywhere.tech/v1")
response = model.invoke(final_prompt)
print(response.content)
5.得到结果
result = output_parser.invoke(model.invoke(prompt.invoke({"subject": "莫兰迪", "parser_instructions": parser_instructions})))
result
输出:
[‘#FF6F61’, ‘#FFCC5C’, ‘#88D8B0’, ‘#4BE2C8’, ‘#A8ADD3’]
6.使用chain输出
chat_model_chain = prompt | model | output_parser
result = chat_model_chain.invoke({"subject": "莫兰迪", "parser_instructions": parser_instructions})
result
输出:
[‘#FF6F61’, ‘#FFCC5C’, ‘#FFE4B5’, ‘#778899’, ‘#ADD8E6’]