首页 » PHP教程 » langmessagephp技巧_用LangGraph实现聊天机械人的方法

langmessagephp技巧_用LangGraph实现聊天机械人的方法

访客 2024-12-19 0

扫一扫用手机浏览

文章目录 [+]

LangGraph 是一个开源框架,专为创建和管理 AI 智能体及多智能体运用程序而设计。
它供应了一套工具,用于处理状态管理、智能体交互和缺点处理等繁芜任务。
利用 LangGraph,开拓者可以构建能够高效利用大措辞模型(LLM)的运用程序。

LangGraph 的核心架构基于三个关键组件:

langmessagephp技巧_用LangGraph实现聊天机械人的方法

节点(Node):代表运用程序中的打算步骤或函数。
状态(State):指在打算过程中掩护的高下文或内存。
边(Edge):连接节点,定义打算流程的路径。
3 利用 LangGraph 的大略谈天机器人

在开始编码之前,请确保您已安装必要的软件环境。
您将须要 Python 及其干系库。
我将利用 Jupyter Notebooks 来展示我们的代码。

langmessagephp技巧_用LangGraph实现聊天机械人的方法
(图片来自网络侵删)

接下来,我将辅导您利用 LangGraph 创建一个大略的谈天机器人。
此谈天机器人将直接响运用户的。
我们将首先定义一个 StateGraph 工具,它将谈天机器人的构造定义为一个状态机。

首先,利用以下命令安装 LangGraph 及其依赖库:

!pip install langgraph langsmith!pip install langchain langchain_groq langchain_community

接下来,为您操持利用的任何大措辞模型(LLM)做事设置 API 密钥。
这将许可您访问 AI 运用程序所需的模型。

import os# 设置环境变量以启用 LangChain 的追踪功能os.environ['LANGCHAIN_TRACING_V2'] = 'true'# 设置您的 LangChain API 密钥os.environ['LANGCHAIN_API_KEY'] = '您的LangChain API密钥'# 指定项目名称os.environ['LANGCHAIN_PROJECT'] = 'LiveLanggraph'

现在,让我们开始利用 ChatGroq 谈天模型:

from langchain_groq import ChatGroq# 更换为您的实际 Groq API 密钥groq_api_key = "您的Groq API密钥"llm = ChatGroq(groq_api_key=groq_api_key, model_name='Gemma2-9b-It')4 创建状态图

在本节中,我们将创建一个状态图,这是构建谈天机器人的关键步骤。

from typing import Annotatedfrom typing_extensions import TypedDictfrom langgraph.graph import StateGraph, START, ENDfrom langgraph.graph.message import add_messages

首先,我们定义状态的数据构造,个中包含列表。

class State(TypedDict): messages:Annotated[list, add_messages]# 创建状态图构建器graph_builder = StateGraph(State)

接下来,定义谈天机器人的行为函数。

def chatbot(state: State): # 利用 LLM 模型处理并返回 return {"messages": llm.invoke(state['messages'])}

将谈天机器人函数添加到状态图中。

graph_builder.add_node("chatbot", chatbot)

定义状态图的流程,从开始节点到谈天机器人节点,再到结束节点。

graph_builder.add_edge(START, "chatbot")graph_builder.add_edge("chatbot", END)

编译状态图,准备运行。

graph = graph_builder.compile()

末了,我们考试测验可视化状态图。

from IPython.display import Image, displaytry: display(Image(graph.get_graph().draw_mermaid_png()))except Exception as e: print("无法显示状态图:", e)

5 利用状态图

现在,我们已经创建了谈天机器人的状态图,可以开始利用它了。

while True: user_input = input("User: ") if user_input.lower() in ["quit", "q"]: print("Good Bye") break for event in graph.stream({'messages': ("user", user_input)}): print(event.values()) for value in event.values(): print(value['messages']) print("Assistant:", value["messages"].content)

这段代码将许可用户与谈天机器人进行交互,直到用户输入 "quit" 或 "q" 为止。
每次用户输入后,谈天机器人都会相应。

6 结论

LangGraph 供应了一个强大而灵巧的框架,用于构建 AI 智能体和谈天机器人。
通过节制其核心组件——节点、状态和边,您可以开拓出能够高效利用大型措辞模型(LLM)的繁芜运用程序。
无论您是在创建根本的谈天机器人还是繁芜的多智能体系统,LangGraph 都供应了一套完全的工具,以支持 AI 办理方案的有效开拓和管理。
通过本教程,您该当能够理解 LangGraph 的基本观点,并开始构建自己的 AI 运用程序。
随着您对 LangGraph 的进一步探索,您将能够解锁更多的可能性,并为您的项目带来创新的办理方案。

记住,AI 的天下充满了无限的可能性,而 LangGraph 正是您探索这些可能性的有力工具。

相关文章