有记忆,简单智能体
[code]from langchain_core.prompts import ChatPromptTemplate
from langchain_core.output_parsers import StrOutputParser
from langchain_openai import ChatOpenAI
from langchain_core.tools import tool
from langgraph.graph import StateGraph, END
from typing import TypedDict, List, Dict
import os
import json
import datetime
def load_memory() -> List[Dict]:
if os.path.exists(MEMORY_PATH):
with open(MEMORY_PATH, "r", encoding="utf-8") as f:
return json.load(f)return[]
def save_memory(task: str, result: str):
memory = load_memory()
memory.append({"time": datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"),
"task": task,
"result": result
})
with open(MEMORY_PATH, "w", encoding="utf-8") as f:
json.dump(memory, f, ensure_ascii=False, indent=2)
def get_memory_prompt() -> str:
memory = load_memory()if not memory:
return"无历史记录"
text ="\n".join([f"用户:{i['task']} 助手:{i['result']}"foriin memory[-5:]])return text