Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Gradio APP

Gradio 是一个用于快速构建网页应用的 Python 包。只需要很少的代码,就可以开发应用。

本人用 Gradio 开发了一个 智能体应用,效果如下\(`Δ’)/

gradio-app

它支持联网搜索、绘制图表、执行代码、多步规划、长上下文自动压缩 ...

用过 Gradio 的都知道,它的前端并不好调。调成这样虽算不上完美,但已经是一个极简且堪用的壳儿了。后端没有新鲜事,主要使用本指南介绍过的各种技术,比如工具、MCP、中间件、多智能体、上下文工程等。唯一让我感觉踩坑的地方是 Agent 的流式输出和增量渲染。为了理解 LangChain 对异步事件流的处理方式,花了不少时间做单测。好在一切都是值得的,最终成品令我满意。当然最开心的是让朋友们都用上这个应用 ✧\(>o<)ノ✧

一、功能展示

下面截取了一些案例,来看看 Agent 是怎么回答的吧!

1)角色扮演

测试用例女神说她闹肚子了,怎么安慰她
调用工具role-play(功能:生成多种人设的回复话术)
结果自评⭐⭐⭐ 「用了 AI 就不是真物了」
role-play

2)代码执行

测试用例3D 接雨水
调用工具code-execution(功能:执行 Python 代码)
结果自评⭐⭐⭐⭐⭐ 「一遍 AC,顺便超越了 88% 的用户」
role-play

3)高德地图

测试用例从北京邮电大学到北京师范大学需要几步
调用工具amap-maps(功能:获取高德地图出行数据)
结果自评⭐⭐⭐⭐ 「答案是三步:报考北京师范大学、参加考试、拿到录取通知书」
role-play

想解锁更多有趣案例?快来部署这个 APP,尝试更多问题吧!

二、如何部署

GitHub 链接 👇

1)下载代码

将仓库克隆到本地:

git clone https://github.com/luochang212/dive-into-langgraph.git

进入项目目录:

cd dive-into-langgraph/app

2)配置环境变量

首先创建 .env 文件:

cp .env.example .env

然后注册 阿里云百炼 账号,获取 API_KEY 并配置到 .env 文件。

3)启动智能体应用

在开始之前,请确保你的 Python ≥ 3.10

python -V

本 Web APP 提供三种启动方式,总有一款适合你。

💻 Python 启动

1. 安装依赖包

pip install -r requirements.txt

2. 启动应用

python app.py
🚀 UV 启动

如果你想用 pyproject.toml 中锁定的包版本,可以使用 uv 启动。

1. 安装 uv

pip install uv -U

2. 使用 uv 同步虚拟环境

uv sync

3. 启动应用

uv run python app.py
📦 Docker Compose 启动

使用以下命令启动 Docker 容器:

docker compose up -d

初始化完成后,可以在浏览器访问:http://localhost:7860/

三、后日谈

在《阿里发布新版 Quick BI,聊聊 ChatBI 的底层架构、交互设计和云计算生态》一文中,我写了一段关于智能体的思考:

只要是基于 Agent 技术开发的产品,都难以跳出现阶段 Agent 科技的限制。

有哪些限制?我举几个例子:

  1. 长期记忆:精炼有用对话,遗忘无用对话,跨对话提升问答效果

  2. 验证能力:光有记忆没用,还要学会判断,也就是 Verification 的能力

  3. 知识体系:有验证能力之后,还要运用验证能力将记忆加工成知识

长期记忆、验证能力、知识体系 ... 小半年过去了,这些东西的进展依然有限。但我还挺乐观,觉得它们在工程上一定是有解的,只不过是解到最后泛化到什么程度的问题。

放到十年前,你能想象今天的 LLM 吗?其实我们已经获得了传说级别的技术,正以前所未有的加速度接近人类智能的真相。只是这波技术最终能否通往 AGI 还是未知数。身处其中的我们就像被强化学习驱动的小人,必须亲身翻越高山深谷,才能获得一点关于前进方向的信号。

我觉得短期内 AGI 的概率很小,因为人类智能没那么容易被 hack。只要 AI 的泛化性不如人类,人类技能就会自发向尚未泛化的地方转移。好消息是,工作依然需要我们;坏消息是,我们依然需要工作。

心向往之,素履之往。期待我们在不需要工作的世界,再次相遇 ૮₍˶˘~˘˶₎ა

— 2026-01-14 · 夜宿北京