【AI应用开发手记2】智普GLM如何接入langchain

2024/8/20 3:02:48

本文主要是介绍【AI应用开发手记2】智普GLM如何接入langchain,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

本文引用自个人AI应用开发学习资料笔记: https://1goto.ai  💯

中文最强LLM GLM4接入langchain使用教程。注意GLM4支持Agent调用。

相关依赖包安装:

#!pip install --upgrade httpx httpx-sse PyJWT

引入相关依赖包

from langchain_community.chat_models import ChatZhipuAI
from langchain_core.messages import AIMessage, HumanMessage, SystemMessage

一、首先需要注册智普的开发者账号:
https://open.bigmodel.cn/login?redirect=/usercenter/apikeys

https://img1.sycdn.imooc.com/66c2eff50001bd8417501920.jpg



网站引导还是比较清晰的,好评。现在注册送2500万的token,而且还有99元购买1000万token的活动!

输入你申请到的api key。

import os

os.environ["ZHIPUAI_API_KEY"] = "zhipuai_api_key"

直接使用最新的glm-4模型:

chat = ChatZhipuAI(
    model="glm-4",
    temperature=0.5,
)

二、基础使用:

messages = [
    AIMessage(content="Hi."),
    SystemMessage(content="你的角色是一个诗人."),
    HumanMessage(content="用七言绝句的形式写一首关于AI的诗."),
]

response = chat.invoke(messages)
print(response.content)  # Displays the AI-generated poem

https://img1.sycdn.imooc.com/66c2f3240001949510560426.jpg

在线代码:
https://replit.com/@tomieweb/FixedBigOpentracker#main.py
三、高级使用(流式输出)

from langchain_core.callbacks.manager import CallbackManager
from langchain_core.callbacks.streaming_stdout import StreamingStdOutCallbackHandler
messages = [
    AIMessage(content="Hi."),
    SystemMessage(content="你的角色是一个诗人."),
    HumanMessage(content="用七言绝句的形式写一首关于AI的诗."),
]

streaming_chat = ChatZhipuAI(
    model="glm-4",
    temperature=0.5,
    streaming=True,
    callback_manager=CallbackManager([StreamingStdOutCallbackHandler()]),
)

streaming_chat(messages)

高级使用(Agent调用)

from langchain_community.chat_models import ChatZhipuAI
import os

from langchain import hub
from langchain.agents import AgentExecutor, create_react_agent
from langchain_community.tools.tavily_search import TavilySearchResults
os.environ["ZHIPUAI_API_KEY"] = "9a0c9c555b4f4879d414daefcc1b1d05.EckazUfzHFLnUOdy"

llm = ChatZhipuAI(temperature=0.01, model="glm-4")
os.environ["TAVILY_API_KEY"] = "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"
tools = [TavilySearchResults(max_results=2)]
prompt = hub.pull("hwchase17/react")

# Choose the LLM to use
agent = create_react_agent(llm, tools, prompt)
agent_executor = AgentExecutor(agent=agent, tools=tools, verbose=True)
agent_executor.invoke({"input": "黄龙江一派全都带蓝牙是什么意思?"})

在线代码:
https://replit.com/@tomieweb/FixedBigOpentracker#agent.py

https://img1.sycdn.imooc.com/66c2f17c0001348d20000643.jpg

整体而言GLM4的能力还是比较强的,尤其在中文领域,更多的信息可以参考:

https://open.bigmodel.cn/dev/howuse/introduction

从上面的示例可以看到,将GLM接入到langchain使用,还是非常简单的,而且整个速度也比较快,如果是生产环境也完全不是问题。如果希望学习更多langchain和Agent开发的知识,可以参考《AI Agent智能应用从0到1定制开发》这门在线课程。






这篇关于【AI应用开发手记2】智普GLM如何接入langchain的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程