Oncall Agent项目

langchain

运用systemMessage/humanMessage统一了一个标准化的对话模式。

在langchain中实现ReAct设计模式,会一直是一个while循环,程序员看不见里面的运行。

用了LangGraph后,将think-act-observer变成了一个个结点。程序员更好观察。

ReAct

cline和LLM直接交流,使用的格式是json,也可以是xml。

思想是 - 三部曲 think act observe

将LLM给的复杂问题拆分一个个,一轮轮解决。

Plan-Exe

使用LangGraph,将plan,exe,replan的结点挂在langgraph上。

先制定总计划-执行一步-再查询计划

RAG

分块,embeding,存储到数据库中

  1. 先分块chunk,按行分的chunk。
  2. 调用 LangChain 的 Embeddings 模型,向量化。
  3. 然后将其存储到chorma中。

embeding,召回,重排

  1. 将查询文本向量化
  2. 再相似度查询召回top-5
  3. 再从5条中重排top-3
  4. 最后查询文本+重排后的top-3都成prompt

对话agent

多轮对话,工具调用,

用ReAct设计模式

运维Agent

点击一下右上角的AI Ops,我的这个项目会根据MCP Server中的【监控工具】,自动模拟出一个性能错误(如cpu_high)。然后agent查【知识库cpu_high_usage】,根据里面的步骤查MCP Server中日志工具,找到问题。

用的Plan-Execute-Replan设计模式。

因为运维会有一套自己固定的找根因的流程。

SSE技术,为什么不用websocket?

websocket适合s和c,双向实时交互,⽐如在线聊天

SSE会⼀段⼀段地向客户端推送数据

SSE怎么实现的?

将HTTP头部的Content-Type改成text/event-stream

MCP

原理:如果没有MCP,不同的大模型,工具适配非常麻烦。

引入了MCP(MCP SERVER,MCPhost),这些工具写在MCP中,方便。

这样回答面试官:MCP制定了一套协议,通过MCP host和MCP server使得不同的LLM和不同的tool间适配。

MCP Host-------------------------------MCP Server

  1. 在我们用户没用问问题前,就握手了。MCP Server把工具告诉MCP Host。
  2. 问问题后,MCP Host带着参数去找MCP Server。

什么机制可以保持上下文?

第一层,保留最近5轮对话的完整内容,这部分会直接放入prompt中,

第二层,摘要记忆,当对话轮数超过5轮时,会把第5轮之前的对话进行摘要压缩。5轮对话压缩成2-3句话。

在LangGraph框架中,1句话实现。

你的工具集有哪些Tool,分别有什么功能?

  1. 是知识库召回工具,从向量数据库中召回最相关的3份片段
  2. 监控工具
  3. 日志工具。
相关推荐
程序员夏洛2 小时前
谈谈你了解的最常见的几种设计模式,说说他们的应用场景
开发语言·python·模板方法模式
小灰灰搞电子2 小时前
Rust+Slint 实现侧滑菜单栏源码分享
开发语言·rust·抽屉式菜单栏
JavaEdge.2 小时前
scoped 样式与 data-v-* 属性选择器(写给 Javaer)
开发语言·vue
坐吃山猪2 小时前
JDK 8 到 JDK 21 新特性知识要点
java·开发语言·windows
坐吃山猪2 小时前
【多线程】FutureTask多线程底层实现
java·开发语言·数据库
XR1234567882 小时前
办公组网像“看病“:先问诊,再选型
开发语言·php
布莱克6052 小时前
strcpy 函数详解:作用、用法与安全缺陷
c语言·开发语言·c++·安全
软件黑马王子2 小时前
3.单例模式问题1:构造函数
开发语言·单例模式·c#
Freak嵌入式2 小时前
RP2040 PIO 编程模型与状态机原理:从硬件架构到工作逻辑全解析
java·大数据·开发语言·单片机·嵌入式硬件·硬件架构
Java小白笔记3 小时前
Java中大数据实时归集与指标汇总方案
java·大数据·开发语言