基于 OpenAI ChatGPT 3.5 的 LangGraph 对话机器人示例:
- # 安装依赖(如果未安装)
- # pip install langgraph langchain-openai
- import os
- from langchain_openai import ChatOpenAI
- from langgraph.graph import StateGraph, END
- from typing import TypedDict, List, Dict
- # ===== 1. 配置 OpenAI =====
- os.environ["OPENAI_API_KEY"] = "sk-your-key-here" # 替换为你的 API 密钥
- model = ChatOpenAI(model="gpt-3.5-turbo") # 指定模型
- # ===== 2. 定义对话状态 =====
- # TypedDict 的作用 这是 Python 3.8+ 引入的类型注解功能,用于定义字典的固定结构。此处 ChatState 表示一个类型化的字典,强制要求包含特定键和值类型。
- # 类比理解:将 ChatState 视为一个数据容器模板:模板规则:容器必须有一个名为 history 的抽屉。抽屉内容:这个抽屉里只能放文件夹(字典),每个文件夹上必须贴有 user 或 assistant 的标签(键),标签对应的内容是字符串。
- class ChatState(TypedDict):
- history: List[Dict[str, str]] # 格式示例:[{"user": "你好"}, {"assistant": "你好!"}]
- # ===== 3. 定义核心节点 =====
- # `ai_reply` 方法生成 AI 的回复
- def ai_reply(state: ChatState):
- """生成 AI 回复"""
- # 提取用户最后一条消息
- last_user_msg = [msg["user"] for msg in state["history"
复制代码 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |