- LangChain 如何使用? 8.1 LangChain 如何调用 LLMs 生成回复? Models:指各类训练好大语言模型(eg:chatgpt (未开源),chatglm,vicuna 等) #官方 11m 使用 OPENAI 接口 from langchain. 11ms import OpenAI 11m = OpenAI (model_name="text-davinci-003”) prompt = ”你好” response = 11m (prompt)
#你好,我是 chatGPT,很高兴能够和你聊天。有什么我可以帮助你的吗?
-我们用 chatglm 来演示该过程,封装一下即可 from transformers import AutoTokenizer, AutoModel class chatGLM ():
self. tokenizer = AutoTokenizer.from_pretrained (model_name, trust_remote_ code=True) self.model = AutoModel.from_pretrained (model_name, trust_remote_code=True).half (.cuda (.eval (
response,= self. model. chat (self. tokenizer ,prompt)# 这里演示未使用流式 接口.stream_chat (
return response
11m = chatGLM (model name="THUDM/chatglm-6b") prompt =”你好” response = 11m (prompt) print ("response:%s"%response)
response:你好!我是人工智能助手 ChatGLM-6B,很高兴见到你,欢迎问我任何问题。
8.2 LangChain 如何修改提示模板? langchain.PromptTemplate: langchain 中的提示模板类 根据不同的下游任务设计不同的 prompt 模板,然后填入内容,生成新的 prompt。目的其实就是为了通过设计更准 确的提示词,来引导大模型输出更合理的内容。
from langchain import PromptTemplate template = Explain the concept of { concept } in couple of lines
prompt = PromptTemplate (input_variables=["concept"],template=template) prompt = prompt.format (concept="regularization") print (“prompt=%s” %prompt) #”\nExplain the concept of regularization in couple of lines\n'