codefuse-chatbot/sources/readme_docs/coagent/agent-flow.md

46 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## 注意
注意整体内容未完善后续还会完善flow和其它Agent的图例
## 核心Connector介绍
为了便于大家理解整个 CoAgent 的链路,我们采取 Flow 的形式来详细介绍如何通过配置构建
<div align=center>
<img src="/sources/docs_imgs/agent-flow.png" alt="图片">
</div>
<br>下面,我们先介绍相关的核心组件<br>
### Agent
在Agent设计层面我们提供了四种基本的Agent类型对这些Agent进行Role的基础设定可满足多种通用场景的交互和使用
1. BaseAgent提供基础问答、工具使用、代码执行的功能根据Prompt格式实现 输入 => 输出
<div align=center>
<img src="/sources/docs_imgs/BaseAgent.png" alt="图片" style="width: 500px; height:auto;">
</div>
2. ExecutorAgent对任务清单进行顺序执行根据 User 或 上一个Agent编排的计划完成相关任务
3. ReactAgent提供标准React的功能根据问题实现当前任务
4. SelectorAgent提供选择Agent的功能根据User 或 上一个 Agent的问题选择合适的Agent来进行回答.
输出后将 message push 到 memory pool 之中后续通过Memory Manager进行管理
### Chain
基础链路BaseChain串联agent的交互完成相关message和memory的管理
### Phase
基础场景BasePhase串联chain的交互完成相关message和memory的管理
### Prompt Manager
Mutli-Agent链路中每一个agent的prompt创建
- 通过对promtp_input_keys和promtp_output_keys对的简单设定可以沿用预设 Prompt Context 创建逻辑从而实现agent prompt快速配置
- 也可以对prompt manager模块进行新的 key-context 设计,实现个性化的 Agent Prompt
### Memory Manager
主要用于 chat history 的管理,暂未完成
- 将chat history在数据库进行读写管理包括user input、 llm output、doc retrieval、code retrieval、search retrieval
- 对 chat history 进行关键信息总结 summary context作为 prompt context
- 提供检索功能,检索 chat history 或者 summary context 中与问题相关信息,辅助问答