38 lines
1.0 KiB
Python
38 lines
1.0 KiB
Python
import json
|
|
from typing import Dict, Any
|
|
|
|
from langchain_core.messages import HumanMessage
|
|
|
|
from agent.health import tip_agent
|
|
|
|
memory_store: Dict[str, Any] = {
|
|
"articles": []
|
|
}
|
|
|
|
def generate_tip_agent():
|
|
try:
|
|
print("开始生成今日5篇健康科普文章")
|
|
resp = tip_agent.invoke({
|
|
"messages": [HumanMessage(content="请生成今日5篇健康科普文章")]
|
|
})
|
|
last_msg = resp["messages"][-1]
|
|
raw_text = last_msg.content.strip()
|
|
|
|
# 解析大模型返回的json字符串
|
|
articles = json.loads(raw_text)
|
|
# 写入内存缓存
|
|
memory_store["articles"] = articles
|
|
print("结束生成今日5篇健康科普文章")
|
|
return True
|
|
except json.JSONDecodeError as je:
|
|
print(f"[JSON解析错误] {str(je)}")
|
|
memory_store["articles"] = []
|
|
return False
|
|
|
|
except Exception as e:
|
|
print(f"\n[错误]: {str(e)}")
|
|
memory_store["articles"] = []
|
|
return False
|
|
|
|
def get_latest_tip():
|
|
return memory_store["articles"] |