微信扫码
添加专属顾问
我要投稿
Google开源了全栈智能研究助手Gemini Fullstack LangGraph,实现自动生成搜索词、检索信息、识别知识盲区,输出权威引用答案。核心内容:1. Gemini Fullstack LangGraph项目介绍及集成组件2. LangGraph智能体的“反思—补全—再反思”循环机制3. LangGraph工具的基本使用和核心概念
本以为Google只是简单放个Demo,哪想到”开源版的Perplexity“
Google最近开源了一个名叫Gemini Fullstack LangGraph的全栈项目。
这个项目集成了 Google Gemini 2.5 大模型和 LangGraph 框架的全栈智能研究助手。
前端React ,后 FastAPI 与 LangGraph,实现“研究增强型”对话式 AI。
提出问题后自动生成搜索词,调用 Google Search API 检索信息,用大模型反思结果、识别知识盲区、不断补全,最终输出带有权威引用的答案。
整个架构的核心是“LangGraph 智能体”。
它不仅能根据用户输入自动生成多组搜索词,还能分析每轮检索结果,判断是否存在知识盲区。
如果信息不够充分,智能体会自动生成下一轮更精准的搜索词,直到收集到足够支撑答案的资料为止。
形成了一种“反思—补全—再反思”的循环,比常规的只会爬取和粗略总结的所谓代理要强很多。
项目支持 Docker 和 docker-compose 一键部署。
对于想做类似深度思考的个人或者企业完全必要从头开始了,改一下就可以直接投入运营。
项目仓库的根目录中有一个docker-compose.yml,可以一键拉起整个项目:
GEMINI_API_KEY=<your_gemini_api_key> LANGSMITH_API_KEY=<your_langsmith_api_key> docker-compose up
运行完成后
以“Grok 3.5 什么时候发布?” 为任务来进行全网的搜索。
执行过程对于每个查询,它使用Gemini模型和Google Search API来查找相关的网页。
按官方说法, 如果发现差距或信息不足,它会生成后续查询并重复网络研究和反思步骤,最多达到配置的最大循环次数。
一旦研究被认为足够,代理会将收集的信息合成为连贯的答案,包括来自网络来源的引用,使用Gemini模型。
测试结果,时间准确而且引用内容还比较的权威可靠,不会乱答一气。
上次字节开源的DeepSearch也是用的langgraph,两个大厂同时采用这个技术必有其过人之处,下面简单演示一下langgraph的基本使用。
LangGraph 是 LangChain 团队推出的一个工具,专门用来编排AI工作流,简单来讲就是用代码画流程图,让多个 AI 模型、工具、逻辑步骤按顺序或条件执行,完成复杂任务。
比如:
-先让 GPT-4 分析用户问题,
-然后根据结果调用搜索引擎查资料,
-最后用 Claude 3 总结答案。
要实现上面的逻辑用普通代码写,可能会又臭又长。
而 LangGraph像搭积木一样,把这些步骤连起来,还能处理循环、分支、并行等复杂逻辑。
核心概念:
节点添加过程,就和界面连线一样,串联数据和函数:
graph.add_node("analyze", analyze_user_input) # 节点1:分析用户输入
graph.add_node("search", call_search_api) # 节点2:搜索
graph.add_edge("analyze", "search") # 箭头:分析完就搜索
完整概念版本
from langgraph.graph import StateGraph, START, END
from typing import TypedDict
# 定义状态 - 共享数据结构
class State(TypedDict):
messages: list[str]
# 定义节点 - 处理函数
def say_hello(state: State):
print("Hello World!")
return {"messages": state["messages"] + ["Hello"]}
def say_goodbye(state: State):
print("Goodbye World!")
return {"messages": state["messages"] + ["Goodbye"]}
# 构建图
graph = StateGraph(State)
graph.add_node("hello", say_hello)
graph.add_node("goodbye", say_goodbye)
# 添加边 - 定义流程
graph.add_edge(START, "hello")
graph.add_edge("hello", "goodbye")
graph.add_edge("goodbye", END)
# 编译并执行
app = graph.compile()
result = app.invoke({"messages": []})
print(result) # {'messages': ['Hello', 'Goodbye']}
用 LangGraph就非常简单构建了AI 工作流。
先是定义数据State,然后再定义处理这个数据的节点,也就是处理函数,接着通过构建图把各种节点进行连接,最后在这条流水线上拼接出结果。
实现起来非常的优雅和高效,很有代码版本的Coze的感觉。
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2025-07-21
AI操作网页:browser-use和AI大模型互动解析
2025-07-20
Agent智能体 | 深入解读阿里开源Web Agent新王者:WebSailor
2025-07-20
从PromptPico到ContextPico:我的心路
2025-07-19
AI 产品的大众点评,「观猹」今日上线
2025-07-18
MinerU | 高精度文档解析工具:从PDF到结构化数据的智能桥梁
2025-07-18
看了这个开源的可以操作手机电脑的Agent框架,感觉AI黑灯办公室也马上出现了。
2025-07-18
00 后天才团队,发布全球首个 A 股金融博弈智能体应用
2025-07-17
基于Dify动态解析异构银行流水:架构拆解→风控报告生成
2025-06-17
2025-06-17
2025-04-29
2025-07-14
2025-04-29
2025-04-29
2025-07-12
2025-05-29
2025-05-12
2025-05-14
2025-07-16
2025-07-15
2025-07-13
2025-07-08
2025-07-04
2025-07-03
2025-06-28
2025-06-25