langchain & 智谱 快速入门
第一步:安装依赖包
pip install langchain
第二步:调用智谱AI
我们需要引入包
第三步 使用ChatOpenAI实例化一个模型
第四步 定义消息
第五步 执行
输出结果:
AIMessage(content='嗨', additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 3, 'prompt_tokens': 15, 'total_tokens': 18, 'completion_tokens_details': None, 'prompt_tokens_details': None}, 'model_name': 'glm-4-flash', 'system_fingerprint': None, 'finish_reason': 'stop', 'logprobs': None}, id='run-93f6c4c9-570a-4507-ba44-026c6b54b96f-0', usage_metadata={'input_tokens': 15, 'output_tokens': 3, 'total_tokens': 18, 'input_token_details': {}, 'output_token_details': {}})
消息类型解释
SystemMessage:表示系统消息。这告诉模型如何行动
HumanMessage:表示用户的消息。
AIMessage:表示模型的消息。
我们现在把完整的代码展示出来,下面的代码向我们展示了一个简单的利用langchain请求智谱AI进行翻译的功能
langchain 解析器
根据刚才我们实验所的到的结果,可以看到模型输出的是一个AIMessage,如下:
AIMessage(content='嗨', additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 3, 'prompt_tokens': 15, 'total_tokens': 18, 'completion_tokens_details': None, 'prompt_tokens_details': None}, 'model_name': 'glm-4-flash', 'system_fingerprint': None, 'finish_reason': 'stop', 'logprobs': None}, id='run-93f6c4c9-570a-4507-ba44-026c6b54b96f-0', usage_metadata={'input_tokens': 15, 'output_tokens': 3, 'total_tokens': 18, 'input_token_details': {}, 'output_token_details': {}})
但是通常我们只是想处理最终响应的content内容,这个时候我们可以使用 输出解析器 进行解析这个响应
引入解析器
实例化
一种比较简单的使用方式是将结果保存后,传递给解释器进行解析
通常 langchain已经给我们提供了一种链式调用,我们可以使用 | 符号进行连接后调用
提示词模板
langchain 给我们提供了一个提示词模板ChatPromptTemplate,它用来帮助我们去构建提示词。你可以先简单的理解为python的字符串拼接的模板
例如:我们出去旅游,想知道某个城市,最有特色的地方,我们可以这样写出我们的提示词
如果想知道上面的提示词模板帮我们生成的最终提示词,我们来使用下面的代码查看一下,生成的提示词
最后使用 | 将解析器联合起来调用
输出结果:
'北京作为中国的首都,拥有丰富的美食文化,以下是一些北京著名的小吃推荐:\n\n1. 炸酱面 - 北京的传统面食,以黄酱炸酱和面条为主,佐以黄瓜丝、豆芽等蔬菜。\n\n2. 豆汁儿 - 北京特有的饮品,有一种独特的酸味,通常搭配焦圈或豆腐脑食用。\n\n3. 炒肝 - 北京的传统早点,以猪肝、猪肠为主料,配以黄豆、蒜泥、醋等调味。\n\n4. 卤煮火烧 - 以猪肠、猪肺、豆腐为主料,加上特制的卤汁煮制而成。\n\n5. 糖葫芦 - 冰糖裹在山楂、草莓等水果上,酸甜可口,是北京街头常见的小吃。\n\n6. 驴打滚 - 用糯米粉制成的小糕点,外包黄豆粉,甜而不腻。\n\n7. 焦圈 - 一种炸制的小吃,外脆内软,与豆汁儿非常搭配。\n\n8. 羊蝎子 - 以羊脊骨为主料,炖煮入味,肉质鲜嫩。\n\n9. 烤鸭 - 当然不能错过北京烤鸭,外皮酥脆,内肉鲜嫩,通常搭配葱丝、黄瓜条和甜面酱食用。\n\n10. 京酱肉丝 - 以细丝般的猪肉为主料,裹上面糊油炸后,再浇上特制的京酱。\n\n这些小吃可以在北京的老字号餐馆或者街边小吃店中品尝到。如果你有机会到北京旅游,不妨去尝试这些地道的小吃,感受北京的饮食文化。'
所有评论(0)