Skip to content

Commit 66230e7

Browse files
committed
feat:《Ai Agent》第3-7节:动态实例化客户端API
1 parent 37b5d17 commit 66230e7

File tree

5 files changed

+31
-1
lines changed

5 files changed

+31
-1
lines changed

docs/.vuepress/config.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2275,6 +2275,7 @@ function getBarAiRagKnowledge() {
22752275
"agent/第3-4节:根据AiAgent案例,设计库表.md",
22762276
"agent/第3-5节:多数据源和Mapper配置.md",
22772277
"agent/第3-6节:数据加载模型设计.md",
2278+
"agent/第3-7节:动态实例化客户端API.md",
22782279
]
22792280
},
22802281
{
267 KB
Loading
214 KB
Loading
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
---
2+
title: 【更】第3-7节:动态实例化客户端API
3+
pay: https://t.zsxq.com/RdjkP
4+
---
5+
6+
# 《Ai Agent》第3-7节:动态实例化客户端API
7+
8+
作者:小傅哥
9+
<br/>博客:[https://bugstack.cn](https://bugstack.cn)
10+
<br/>视频:[https://t.zsxq.com/4r5r4](https://t.zsxq.com/4r5r4)
11+
12+
> 沉淀、分享、成长,让自己和他人都能有所收获!😄
13+
14+
## 一、本章诉求
15+
16+
完善数据加载操作,动态实例化`客户端API`(ai_client_api)并注册到 Spring 容器。
17+
18+
这是整个 armory 动态装配 Ai Agent 节点的第一步,涉及到了数据的获取,对象的创建和 Spring 容器的 Bean 对象注册。能看懂本节的操作,基本后续一直到整个 Ai Agent 构建也就都可以看懂了。
19+
20+
## 二、功能流程
21+
22+
如图,客户端API实例化过程设计;
23+
24+
<div align="center">
25+
<img src="https://bugstack.cn/images/article/project/ai-rag-knowledge/ai-rag-knowledge-3-7-01.png" width="650px">
26+
</div>
27+
28+
- 首先,整个 AI Agent 的实例化过程,就是各项组件的创建和组装的过程。为了让整体的实现代码更易于维护,我们把这样的创建过程,通过 规则树的方式 进行串联实现。这种设计模式的优势在于:模块化设计、易于扩展、代码复用度高。
29+
- 之后,从开始节点看,依次执行,数据构建节点、API构建节点。在 API 构建的过程中,会检查上下文中是否存在已经从数据库获取的数据,之后依次循环构建并注册到 Spring 容器。

docs/md/spring/develop-spring/2021-06-30-第10章:横刀跃马,关于Bean对象作用域以及FactoryBean的实现和使用.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -552,7 +552,7 @@ Process finished with exit code 0
552552
```
553553

554554
- 从测试结果来看,我们的代理类 ProxyBeanFactory 已经完美替换掉了 UserDao 的功能。
555-
- 虽然看上去这一点实现并不复杂,甚至有点简单。但就是这样一点点核心内容的设计了,解决了所有需要和 Spring 结合的其他框架交互链接问题。*如果对此类内容感兴趣,也可以阅读小傅哥[《中间件设计和开发》](https://bugstack.cn/itstack-ark-middleware/2021/03/31/SpringBoot-%E4%B8%AD%E9%97%B4%E4%BB%B6%E8%AE%BE%E8%AE%A1%E5%92%8C%E5%BC%80%E5%8F%91-%E4%B8%93%E6%A0%8F%E5%B0%8F%E5%86%8C%E4%B8%8A%E7%BA%BF%E5%95%A6.html)*
555+
- 虽然看上去这一点实现并不复杂,甚至有点简单。但就是这样一点点核心内容的设计了,解决了所有需要和 Spring 结合的其他框架交互链接问题。*如果对此类内容感兴趣,也可以阅读小傅哥[《中间件设计和开发》](https://bugstack.cn/md/assembly/middleware/2021-03-31-%E3%80%8ASpringBoot%20%E4%B8%AD%E9%97%B4%E4%BB%B6%E8%AE%BE%E8%AE%A1%E5%92%8C%E5%BC%80%E5%8F%91%E3%80%8B%E4%B8%93%E6%A0%8F%E5%B0%8F%E5%86%8C%E4%B8%8A%E7%BA%BF%E5%95%A6%EF%BC%81.html)*
556556

557557
## 六、总结
558558

0 commit comments

Comments
 (0)