2025,AI Agents技术栈解读出炉!

AgentStack – 开发者快速构建AI代理的开源项目 AgentStack是一个开源工具,旨在帮助开发者快速构建AI代理项目。基于提供一个预配置的模板和集成流行的代理框架及大型语言模型(LLM)提供商,简化从零开始创建AI代理的过程。AgentStack支持macOS、Windows和Linux系统,无需额外配置,让开发者专注于编写代码。AgentStack提供交互式测试运行器、实时开发服务器、生产构建脚本和与AgentOps的集成,实现AI代理的可观察性。 阅读详情

2025新年伊始,今年将是“Agentic系统之年”,“2025将会出现真正Agent”,时不我待,请签收属于你的AI Agents技术栈综述。

理解AI Agents生态

尽管我们看到了大量关于Agent栈和市场的分类图,但我们往往不同意它们的分类方式,发现它们很少反映开发者实际使用的。在过去几个月中,随着在内存、工具使用、安全执行和部署方面的进步,Agent软件生态系统有了显著的发展,因此,能够真正落地的“Agent技术栈(agent stack)”应该是怎样尼?

AI Agents技术栈,被组织成三个关键层:Agent托管/服务、Agent框架,以及LLM模型和存储。

图片

从LLM到LLM Agent

在2022年和2023年,我们看到了LLM框架和SDK的兴起,比如LangChain(2022年10月发布)和LlamaIndex(2022年11月发布)。同时,我们也看到了几个“标准”平台的建立,这些平台通过API消费LLMs以及自部署LLM推理(vLLM和Ollama)。

在2024年,我们看到了对AI“Agent”的兴趣急剧转变,更广泛地说,是对复合系统的兴趣。尽管“Agent”这个术语在AI中已经存在了几十年(特别是在强化学习中),但在后ChatGPT时代,“Agent”已经成为一个松散定义的术语,通常指的是被赋予输出动作(工具调用)并在自治设置中运行的LLM。从LLM到Agent所需的工具使用、自治执行和内存的结合,促使一个新的Agent栈发展。

Agent技术栈的独特之处

与基本的LLM聊天机器人相比,Agent是一个更复杂的工程挑战,因为它们需要状态管理(保留消息/事件历史记录,存储长期记忆,执行多个LLM调用在一个Agent循环中)和工具执行(安全执行LLM输出的动作并返回结果)。

因此,AI Agent栈与标准的LLM栈看起来非常不同。让我们从模型服务层开始,分解今天的AI Agent栈:

模型服务

图片

AI Agent的核心是LLM。要使用LLM,模型需要通过推理引擎提供服务,通常运行在付费API服务后面。

OpenAI和Anthropic在基于封闭API的模型推理提供商中领先,拥有私有前沿模型。Together.AI、Fireworks和Groq是提供开放权重模型(例如Llama 3)背后的付费API的流行选项。在本地模型推理提供商中,我们最常见到vLLM领先于生产级GPU基础服务负载。SGLang是一个新兴项目,拥有类似的开发者受众。在业余爱好者(“AI爱好者”)中,Ollama和LM Studio是两个流行的选项,用于在您自己的计算机上运行模型(例如M系列Apple Macbooks)。

存储

图片

存储是定义为有状态的Agent的基本构建块——Agent由持久状态定义,如他们的对话历史记录、记忆和外部数据源,他们用于RAG。像Chroma、Weaviate、Pinecone、Qdrant和Milvus这样的向量数据库很受欢迎,用于存储Agent的“外部记忆”,允许Agent利用数据源和对话历史记录,这些数据太大,无法放入上下文窗口。Postgres是一个自80年代以来就存在的传统数据库,现在也通过pgvector扩展支持向量搜索。基于Postgres的公司如Neon(无服务器Postgres)和Supabase也为Agent提供基于嵌入的搜索和存储。

工具和库

图片

标准AI聊天机器人和AI Agent之间的一个主要区别是Agent调用“工具”(或“功能”)的能力。在大多数情况下,这种动作的机制是LLM生成结构化输出(例如JSON对象),指定要调用的函数和提供的参数。Agent工具执行的一个常见混淆点是,工具执行_不是_由LLM提供商本身完成的——LLM只选择要调用的工具和提供的参数。支持任意工具或任意参数输入工具的Agent服务必须使用沙箱(例如Modal、E2B)以确保安全执行。

Agent通过OpenAI定义的JSON模式调用工具——这意味着Agent和工具实际上可以跨不同框架兼容。Letta Agent可以调用LangChain、CrewAI和Composio工具,因为它们都是由相同的模式定义的。因此,对于常见工具,有一个不断增长的工具提供商生态系统。Composio是一个流行的通用工具库,还管理授权。Browserbase是一个专门用于网页浏览的专用工具的例子,Exa提供了一个专门用于搜索网络的专用工具。随着越来越多的Agent被构建,我们预计工具生态系统将增长,并提供现有新功能,如Agent的身份验证和访问控制。

Agent框架

图片

Agent框架协调LLM调用并管理Agent状态。不同的框架将为以下方面有不同的设计:

  • 管理Agent的状态:大多数框架引入了一些“序列化”状态的概念,允许Agent通过将序列化状态(例如JSON、字节)保存到文件中,在稍后的时间加载回相同的脚本——这包括状态如对话历史记录、Agent记忆和执行阶段。在Letta中,所有状态都由数据库支持(例如消息表、Agent状态表、内存块表),没有“序列化”的概念,因为Agent状态始终被持久化。这允许轻松查询Agent状态(例如,按日期查找过去的信息)。状态的表示和管理方式决定了Agent应用程序将如何随着更长的对话历史记录或更多的Agent数量进行扩展,以及如何灵活地访问或修改状态。

  • Agent的上下文窗口结构:每次调用LLM时,框架将“编译”Agent的状态到上下文窗口。不同的框架将以不同的方式将数据放入上下文窗口(例如指令、消息缓冲区等),这可能会改变性能。我们建议选择一个使上下文窗口透明的框架,因为这最终是您可以控制您的Agent行为的方式。

  • 跨Agent通信(即多Agent):Llama Index通过消息队列让Agent通信,而CrewAI和AutoGen有明确的抽象器用于多Agent。Letta和LangGraph都支持Agent直接相互调用,这允许集中式(通过监督Agent)和跨Agent的分布式通信。大多数框架现在支持多Agent和单Agent,因为一个设计良好的单Agent系统应该使跨Agent协作易于实现。

  • 内存方法:LLM的基本限制是它们有限的上下文窗口,这就需要管理随时间的记忆。一些框架内置了内存管理,而其他框架则期望开发者自己管理内存。CrewAI和AutoGen完全依赖基于RAG的内存,而phidata和Letta使用额外的技术,如自我编辑内存(来自MemGPT)和递归总结。Letta Agent自动配备了一套内存管理工具,允许Agent通过文本或数据搜索先前的消息,编写记忆,并编辑Agent自己的上下文窗口(您可以在这里阅读更多)。

  • 支持开放模型:模型提供商实际上做了很多幕后技巧,让LLM以正确的格式生成文本(例如用于工具调用)——例如,当它们没有生成适当的工具参数时,重新采样LLM输出,或在提示中添加提示(例如“请输出JSON”)。支持开放模型需要框架处理这些挑战,所以一些框架限制对主要模型提供商的支持。

在今天构建Agent时,正确的框架选择取决于您的应用程序,例如您是否正在构建会话Agent或工作流程,您是否希望在笔记本或作为服务运行Agent,以及您对开放权重模型支持的要求。

我们预计框架之间的主要区别将出现在它们的部署工作流程中,状态/内存管理和工具执行的设计选择变得更加重要。

Agent托管和Agent服务

图片

今天的大多数Agent框架都是为那些不存在于它们编写的Python脚本或Jupyter笔记本之外的Agent设计的。我们相信Agent的未来是将Agent视为一个_服务_,该服务被部署到本地或云基础设施上,可以通过REST API访问。就像OpenAI的ChatCompletion API成为与LLM服务交互的行业标准一样,我们预计最终会有一个赢家为Agent API。但还没有一个……。

部署Agent作为服务比部署LLM作为服务要复杂得多,因为状态管理和安全工具执行的问题。工具及其所需的依赖项和环境需求需要明确存储在数据库中,因为运行它们的环境需要由服务重新创建(这不是一个问题,当您的工具和Agent在同一个脚本中运行时)。应用程序可能需要运行数百万Agent,每个Agent都累积了越来越多的对话历史记录。当从原型转移到生产时,Agent状态不可避免地必须经历一个数据规范化过程,Agent交互必须由REST API定义。今天,这个过程通常是通过开发者编写自己的FastAPI和数据库代码来完成的,但我们预计随着Agent的成熟,这个功能将更多地嵌入到框架中。

结论

Agent技术栈仍然非常早期,我们对生态系统如何扩展和演变感到兴奋。对未来Agent技术栈发展你还有什么补充吗?

https://www.letta.com/blog/ai-agents-stack
2025,AI Agents技术栈解读出炉 管理Agent的状态:大多数框架引入了一些“序列化”状态的概念,允许Agent通过将序列化状态(例如JSON、字节)保存到文件中,在稍后的时间加载回相同的脚本——这包括状态如对话历史记录、Agent记忆和执行阶段。内存方法:LLM的基本限制是它们有限的上下文窗口,这就需要管理随时间的记忆。与基本的LLM聊天机器人相比,Agent是一个更复杂的工程挑战,因为它们需要状态管理(保留消息/事件历史记录,存储长期记忆,执行多个LLM调用在一个Agent循环中)和工具执行(安全执行LLM输出的动作并返回结果)。 阅读详情

相关推荐

一篇文章读懂AI Agent

当大模型还在回答问题时,新一代AI Agent已经能自主订机票、管理股票组合、运营跨境电商店铺——这不是科幻电影,而是正在发生的技术革命。本文将深入解析AI Agent的技术本质与商业应用。

jane_xing的博客 1307

2024年 AI Agents 技术栈全面解析

AI大模型作为人工智能领域的重要技术突破,正成为推动各行各业创新和转型的关键力量。抓住AI大模型的风口,掌握AI大模型的知识和技能将变得越来越重要。学习AI大模型是一个系统的过程,需要从基础开始,逐步深入到更高级的技术。这里给大家精心整理了一份全面的AI大模型学习资源,包括:AI大模型全套学习路线图(从入门到实战)、精品AI大模型学习书籍手册、视频教程、实战学习、面试题等,资料免费分享!

老皮的博客 2896

LLM vs AI Agent

Agent:拥有一个原生的认知架构,该架构使用诸如CoT, ReAct等推理框架,或者像LangChain这样的预构建框架,帮助Agent规划和执行任务。2. 从反应式到主动式:LLM 的核心特性是被动响应用户查询,而 Agent 是主动的,可执行任务、规划步骤,甚至在动态环境中进行自主调整。- 普通模型:没有原生的逻辑层,用户需要构建复杂的提示词,可能结合某些推理框架(如CoT, ReAct等)来指导模型生成预期的结果。这意味着,一旦模型被训练完成,它就不会再学习新的信息,除非重新训练。

qq_42161009的博客 1955

深度丨AI Agents 技术栈图谱与分析

Letta(由之前爆火的 MemGPT 更名)最近做了一个关于 AI Agents Stack 的研究报告。尽管我们看到了很多 Agent 技术栈地图和 Agent 市场地图,但我们往往不同意它们的分类方式,并且发现它们很少反映我们观察到的开发者实际使用的情况。在过去几个月里,Agent 软件生态系统随着记忆、工具使用、安全执行和部署方面的进展而有了显著发展,所以,我们决定根据自己在开源人工智能领域一年多的工作经验以及 7 年多的人工智能研究成果,分享我们自己的“Agent 技术栈图谱”。。

xx_nm98的博客 1551

AI技术栈与传统工程的对比

引言 随着科技的飞速发展,人工智能(AI)技术已经成为现代工程领域的重要驱动力。AI技术不仅改变了传统的数据处理方式,还为各个行业带来了前所未有的创新机遇。本篇文章将以《AI技术栈与传统工程的对比》为主题,深入探讨AI技术栈与传统工程之间的差异与联系,帮助读者更好地理解和掌握这一前沿技术。 首先,我们需要明确什么是AI技术栈。AI技术栈是指一组

AI天才研究院 1145

LLM 驱动的 AI Agent:核心原理与技术栈详解

背景介绍 问题描述 随着人工智能技术的快速发展,特别是大规模语言模型(Large Language Model,简称LLM)的崛起,AI领域正经历着前所未有的变革。LLM驱动的AI Agent作为一种新型的智能体,逐渐成为学术界和工业界研究的热点。这些智能体不仅在自然语言处理、机器翻译、问答系统等方面取得了显著成果,

AI天才研究院 648

大模型(LLM)和智能体(Agent)有什么区别?

大模型(LLM)和智能体(Agent)各有侧重,LLMs专注于语言理解和生成,而智能体则更广泛地应用于需要感知、决策和行动的任务中。两者在某些应用场景中有交集,例如智能客服系统既可以利用LLMs的语言处理能力,也可以作为智能体的一部分来执行更复杂的任务。随着大模型的持续爆火,各行各业都在开发搭建属于自己企业的私有化大模型,那么势必会需要大量大模型人才,同时也会带来大批量的岗位?雷军曾说过:站在风口,猪都能飞起来”可以说现在大模型就是当下风口,是一个可以改变自身的机会,就看我们能不能抓住了。

EnjoyEDU的博客 8633

RAG+AI工作流+Agent:LLM框架该如何选择,全面对比MaxKB、Dify、FastGPT、RagFlow、Anything-LLM,以及更多推荐

RAG+AI工作流+Agent:LLM框架该如何选择,全面对比MaxKB、Dify、FastGPT、RagFlow、Anything-LLM,以及更多推荐

丨汀、的博客 3万+

2025年AI Agent技术栈全解析:50+关键数据带你掌握智能系统开发a

AI Agent在2025年已成为企业核心工具,85%组织已将其集成到工作流程中。市场规模从2023年的37亿美元增长至2025年的73.8亿美元,预计2032年将达1036亿美元。AI Agent技术栈包含四个层面:开发者层(提升126%编码效率)、知识工作者层(58%用于文档总结)、工作流层(64%用于业务自动化)和控制层(71%用户倾向人工监督)。人机协同模式成为主流,企业正通过多工具组合实现AI Agent的高效管理与应用。

m0_59162559的博客 1341

74HC165级联踩坑实录:STM32读取32路开关状态,时序调试与常见问题排查

本文详细介绍了74HC165级联在STM32读取32路开关状态时的时序调试与常见问题排查。从硬件设计的PCB布局优化、电源噪声控制,到软件时序的精确调校和数据采集策略,提供了完整的解决方案。通过逻辑分析仪和示波器的高效使用,解决了信号延迟和干扰问题,最终实现了稳定可靠的32路信号读取。

weixin_34046298的博客 313

图解说明JLink驱动与目标板电源匹配的关键细节

深入讲解JLink驱动安装及使用过程中,如何正确匹配目标板电源,避免常见通信故障。通过图解方式清晰展示关键连接细节,确保调试稳定可靠,是嵌入式开发中不可或缺的实战经验分享。

weixin_42173218的博客 431

一文带你掌握AI agent智能体技术栈梳理

AI Agent技术栈梳理模型服务存储工具与库智能体框架智能体托管与服务在人工智能领域持续演进的当下,AI 智能体技术栈正逐渐崭露头角。智能体软件生态系统在内存管理、工具使用、安全执行和部署等方面都取得了显著进展。

longxiaotian718的博客 1927

Vivado ChipScope Debugging: Overcoming Common DRC Errors in FPGA Design

本文深入解析Vivado ChipScope调试中常见的DRC错误,特别是AVAL-244和AVAL-245等时钟相关问题,提供实用的Tcl命令解决方案和最佳实践。通过将DRC错误降级为警告的技巧,帮助FPGA设计者高效完成调试流程,同时强调何时应保留DRC检查以确保设计可靠性。

weixin_30335575的博客 416

MySQL连接异常:Communications link failure 解决方案

困扰一晚上的问题终于解决了。

weixin_44704776的博客 1086

国产安全芯片在密码算法国密体系下的性能适配策略

国密体系即国家商用密码体系,是保障信息安全的核心技术体系。自20世纪90年代末起步,国密体系经历了从无到有、从弱到强的发展历程。1999年,国家密码管理局成立,标志着国密体系的正式建立。2000年,国密SM1算法首次发布,开启了国密算法的标准化进程。此后,SM2、SM3、SM4等算法陆续推出,形成了完整的对称与非对称密码算法体系。:2010年,国密标准正式纳入国家标准体系,国密算法在金融、政务、通信等关键领域的应用得到明确规范。

qq_40552871的博客 1356

AI Agent框架混战:九大智能体框架谁将颠覆行业格局?2025开发者、创业团队必看的框架盘点,5步决策锁定你的crush框架

最后,框架选择没有绝对的对错,关键要看你的具体需求!选对框架只是第一步,会用只是基础,用得好才是关键。

2401_85373691的博客 2692

Synopsys SpyGlass 进行 RTL 功耗估计

通过上述脚本,您可以使用 Synopsys SpyGlass 对纯 RTL 代码和带有 FSDB 波形的 RTL 代码进行功耗估计,并支持将 SDC 文件转换为 SGDC 文件。

yumingqinglong的博客 2186

浅析智能体开发(第二部分):智能体设计模式和软件架构

大语言模型(LLM)驱动的智能体(AI Agent)展现出许多传统软件所不具备的特征。不仅与传统软件的设计理念、方法、工具和技术栈有显著的差异,AI原生(AI Native)的智能体还融入了多种新概念和技术。我们从多个维度对AI Native智能体与传统软件进行了比较和分析,涉及开发语言、软件架构、设计模式和编程模式等多个方面。图:本文梳理的智能体软件设计模式和发展脉络本文梳理智能体软件设计模式和...

vastgrassland的博客 5098

详解FreeRTOS:FreeRTOSConfig.h系统配置文件(拓展篇—1)

FreeRTOS的系统配置文件为FreeRTOSConfig.h,在配置文件中可以完成FreeRTOS的裁剪和配置,这是非常重要的一个文件,本篇博文就来讲解这个文件。

不脱发的程序猿 1546

【数据集】中国2003年至2022年全天空每日气温数据集

中国2003年至2022年全天空每日气温数据集

WW、forever的博客 603

Agent智能体之:2025 一文掌握 AI Agent全部技术栈。

2025 一文掌握 AI Agent最全技术栈

商务合作 | 面试培训 | 职场规划 ==>主页扫码 2463

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

大模型 AI Agent 与 LLMs + RAG 的本质区别

大模型(LLMs)的突破RAG(检索增强生成)的兴起AI Agent 的崛起(2024“代理年”)大模型(LLMs)RAGAI Agent目标导向行为状态跟踪与记忆管理环境交互与工具调用持续学习与泛化能力核心应用场景并行函数调用逻辑 多函数调用方法当前挑战未来方向

qq_43588095的博客 1341

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

6 款电商 AI 图片生成软件实测|国内 + 跨境卖家工具清单

电商 AI 作图工具已经从 "能不能用" 进入了 "好不好用" 的阶段。对于绝大多数卖家而言,现在的 AI 工具已经可以覆盖 60%-80% 的基础商品图需求,显著降低拍摄和设计成本。选择工具的核心逻辑不是 "哪款最强",而是 "哪款最适配你的品类、平台规模和团队能力"。垂直电商工具胜在工作流效率,通用生图工具强在创意上限,模板类工具赢在上手速度。建议根据自身业务阶段,搭配 1-2 款主力工具 + 1 款辅助工具,形成适合自己的视觉生产流程。

Mardi_Ladin的博客 379

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

视频隐私脱敏工程化:CSRT/KCF追踪算法在本地推理中的实现与边界

在短视频内容合规审查中,动态遮挡(Dynamic Masking)是高频且高耗时的环节。传统手动关键帧打码不仅效率低下,且在目标快速移动或遮挡时极易出现遮罩漂移。本文从计算机视觉工程角度,解析基于CSRT与KCF算法的目标追踪方案在视频隐私处理中的技术路径、性能权衡及落地实践。

Mysssone的博客 212
上一篇: 评价deepseek v3:又一个相信自己比英伟达懂GPU计算并做到了的团队
下一篇: 当大模型预训练数据不再像以前增长,OpenAI o1应对机制的探索和理解
AIBigModel
博客等级 码龄2年 5358粉丝 706原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值