classMyCustomChain(Chain): def__init__(self): # 定义 Prompt 模板 self.prompt_template = PromptTemplate(template="What is the capital of {country}?") def_call(self, inputs): # 获取输入国家名 country = inputs.get("country") # 使用 Prompt 生成问题 prompt = self.prompt_template.render(country=country) # 这里可以连接到实际的语言模型,例如 OpenAI API # result = openai.ChatCompletion.create(prompt=prompt) result = f"The capital of {country} is Placeholder."# 模拟的结果 return {"answer": result}
# 使用自定义链 my_chain = MyCustomChain() result = my_chain({"country": "France"}) print(result)
3.2 连接到语言模型
在自定义链中,您可以通过 API 调用连接到具体的语言模型。在上面的示例中,我们使用了一个伪代码示例来模拟 API 的结果,实际应用中您可以使用 OpenAI 或其他提供商的API。
classCustomTemplate: def__init__(self): # 定义自己的 Prompt 模板 self.template = PromptTemplate(template="In {language}, how would you say '{phrase}'?") defrender(self, language, phrase): returnself.template.render(language=language, phrase=phrase)
# 示例使用 custom_template = CustomTemplate() rendered_prompt = custom_template.render(language="Spanish", phrase="Hello") print(rendered_prompt) # 输出: In Spanish, how would you say 'Hello'?