2024/08(二) 近期关于AI的阅读和理解[笔记]

server/2024/10/25 16:23:49/

## Multi Agent/Flow

最近团队在实验 flowise 的 Agentflows 设计,顺带看了现在市面多加解决方案,这两天偶尔看到蚂蚁CodeFuse团队开发的Mulit Agent框架开发思想, 所以将他们一起总结归纳下。

  • Agent Base:构建了四种基本的Agent类型BaseAgent、ReactAgent、ExecutorAgent、SelectorAgent,支撑各种场景的基础活动

  • Communication:通过Message和Parse Message 实体完成Agent间的信息传递,并与Memory Manager交互再Memory Pool完成记忆管理

  • Prompt Manager:通过Role Handler、Doc/Tool Handler、Session Handler、Customized Handler,来自动化组装Customized 的Agent Prompt

  • Memory Manager:用于支撑 chat history 的存储管理、信息压缩、记忆检索等管理,最后通过Memory Pool在数据库、本地、向量数据库中完成存储

  • Component:用于构建Agent的辅助生态组件,包括Retrieval、Tool、Action、Sandbox等

  • Customized Model:支持私有化的LLM和Embedding的接入

图片

from CodeFuse-muAgent

很早的 AutoGPT 也有相类似概念,再到 Langchain 据闻也搞自己的 Studio IDE,  其实总总的这些操作, 一个是补充LLM 不具备行业知识和现有业务流程的融入问题; 二是对齐也就是怕回答很妖的答案;由于现在LLM上下文窗口的问题, 做了很多补丁类似的事; 现有组织资产无非:数据(结构非结构)+ 流程(API); 现在市面上解决方案都无法达到比较能用(不知道是遗老派跟不上,还是这些产品方案太急,太糙,你瞅github代码能感受到),2024/08 近期关于AI的阅读和理解[笔记] 上次汇总中看到很多不错的思考方向, 但貌似部分是非开源的。

其实操作过 flowise, dify 都很容易联想到已存非常成熟的BPM 方式;是否有一种方案?Combining LLM flexibility and rule engine predictability?老牌的 JBPM 标准下的 Drool + 国内的新秀各种魔改的flow, 其实在和现有系统的融合上有不可言喻的优势。

亦或是新世界的解决方案要和遗老派彻底割裂,还是遗老派消化不良,跟不上节拍?

未来可能的情况现在的各种 ai?flow, 被大厂统一?或在LLM飞跃发展下,这些中间方案被边缘化和替代掉。 

嘿嘿, 所以决定挖个新坑, 有义务统一下,看下面 【新坑】

## 新坑

在不破坏大家的习惯情况下,如何让你飞快地拥有驾驭LLM能力?也就是 buz words LLMOps(涵盖了大型语言模型(如GPT系列)开发、部署、维护和优化的一整套实践和流程)。

在粗扫了7/8家解决方案后,得出结论这个思路是可行的(quarkus-drools-llm)。

SO 她得:

  1. 声明式的 DSL

  2. 简单易懂

  3. 静态扫描编译

  4. 设计和运行分离

  5. 可测,可追踪

  6. plugable

  7. 可以和现在业务系统无缝衔接

    1. context

    2. API

  8. 成本低 - 过程

  9. 得有UI? 必须得,先安排IDEA

  10. 本地能搞

  11. ....

这得控制到 byte 级别了吧? 嘚!暂给她起名:  

byteflowise =  byte + flow + wise

Sure 你值得拥有!!!

## Generative UI

为什么一直对 UI 耿耿于怀?你终端用户只对UI感兴趣哈, 最近迫于很多友商的压力,咱也被迫上了个“AI”产品, 你发现基本是挂个AI的客服系统, 有的基本IF/ELSE 都不判断, 直接就是接的产品搜索, 唯一流出路径就是产品详情页。所以 AI 不 AI 对用户没得关系, 她感觉像AI 就是AI, 感觉不是就不是,所以这个脸面非常重要。

在这一块先前看到  Claude3 artifact 在搞这个方向, 然后又看到 Vercel 其实早就玩这个, 包括他们的 v0.dev;大概意思从LLM 推导出 UI 然后用 react 服务器端渲染 SSR, 其实这个咱们不陌生, 百度早前框计算(应该这个名字?)就有这个, 现在你在百度搜索,日历,天气相关内容,都是可直接交互的了;

按理说这个是很难的,在无限通用的集合里,推导出这个UI;但是在有限集合里面这个解很容易, 一个企业业务流程中涉及表单有多少?可以数的过来,不用去大模型推导UI 组建了, 识别业务意图就可以, 参数一识别,直接一个 iframe 就搞定---正有此意。 

图片

## 3A

最近因为一个游戏大家集体高潮了;苟众其实没有资格参与。

3A游戏通常指:

  1. A lot of money(大量的金钱)

  2. A lot of resources(大量的资源)

  3. A lot of time(大量的时间)

SO, 你3A了吗?May be 3+? 

A lot of confidence & determination... 

## Refer

  1. https://vercel.com/blog/ai-sdk-3-generative-ui

  2. https://v0.dev/ 

  3. https://github.com/codefuse-ai/CodeFuse-muAgent/blob/main/README_zh.md

  4. https://github.com/Significant-Gravitas/AutoGPT

  5. https://dify.ai/

  6. https://flowiseai.com/

  7. https://github.com/langchain-ai/langgraph-studio

  8. https://github.com/mariofusco/quarkus-drools-llm

  9. https://docs.dify.ai/v/zh-hans/learn-more/extended-reading/what-is-llmops


http://www.ppmy.cn/server/104503.html

相关文章

AutoGPT开源项目解读

AutoGPT开源项目解读 (qq.com) AutoGPT旨在创建一个自动化的自我改进系统,能够自主执行和学习各种任务 项目基本信息 首先阅读项目的README.md,下述代理和智能体两个名词可互换 项目简介:一个创建和运行智能体的工具,这些智能体…

C# 二维数组和嵌套数组

文章目录 1.二维数组2.嵌套数组 1.二维数组 数组必须等长 int[,] a new int[2, 4] { 1, 2, 3, 4,5, 6, 7, 8, } ; Console.WriteLine(a[0, 0]); // 12.嵌套数组 数组无须等长 int[][] b new int[][] {new int { 1, 2, 3, 4 },new int { 5, 6 } } Console.WriteLine(b[0]…

Python实战:如何使用K-means算法进行餐馆满意度NLP情感分析

🍊作者:计算机毕设匠心工作室 🍊简介:毕业后就一直专业从事计算机软件程序开发,至今也有8年工作经验。擅长Java、Python、微信小程序、安卓、大数据、PHP、.NET|C#、Golang等。 擅长:按照需求定制化开发项目…

初识Linux · yum和vim

目录 前言: 1 yum 1.1 yum是什么? 1.2 Centos的生态和yum的本地配置 1.3 yum的相关操作 2 vim 前言: 我们学习Linux的时候,是有编程语言的基础的,那么呢,我们学习Linux的时候最迫切的就是希望能打印…

第6天:常用的Python库和框架——Flask:Web开发框架简介

引言: Flask 是一个简单而灵活的 Python Web 开发框架。它被设计成易于使用,并且能够快速开发 Web 应用程序。Flask 提供了一个简洁的核心,并以扩展的方式提供了许多功能。作为一个微型框架,Flask 提供了最基本的功能&#xff0c…

设计模式六大原则(六)--迪米特法则

1. 简介 1.1. 概述 迪米特法则(Law of Demeter),也被称为最少知识原则(Principle of Least Knowledge),是面向对象设计中非常重要的一条原则。它主要强调的是一个对象应该对其他对象有最少的了解,即一个对象应该只与其他对象的接口发生关系,而不应该依赖于这些对象的…

SpringBoot集成kafka-生产者发送消息

springboot集成kafka发送消息 1、kafkaTemplate.send()方法1.1、springboot集成kafka发送消息Message对象消息1.2、springboot集成kafka发送ProducerRecord对象消息1.3、springboot集成kafka发送指定分区消息 2、kafkaTemplate.sendDefault()方法3、kafkaTemplate.send(...)和k…

未设置辅助手机的谷歌账号停用,申诉回来后登录需要手机验证,验证两次后成功恢复。

谷歌账号被停用后怎么办?果断申诉,申诉方法和模板等见我前面的文章或视频。 通常申诉以后1-2天会反馈结果,而且大部分(80%以上)会第一次就被审批通过,如下图所示: 当收到上面这样的邮件&#x…