【AI】如何优雅而又装逼的使用LangChain?

MuleSoft+LangChain双引擎:企业AI落地的可信调度与智能推理架构 AI编排(AI Orchestration)是连接大模型能力与企业真实业务系统的中枢机制,其核心在于解耦‘数据流动’与‘认知推理’——前者需满足企业级连接性、安全合规与系统韧性,后者依赖语义化工作流、多步推理与动态工具调用。MuleSoft作为成熟的企业集成平台,天然承担可信数据管道角色,提供OAuth深度集成、细粒度字段脱敏、服务降级与全链路可观测性;LangChain则构建智能决策引擎,以可组合链式结构实现RAG、多轮记忆与AI驱动路由。二者协同,使销售挽留邮件、合规审计、供应链预警等场景得以在生产环境 阅读详情

介绍

LangChain的LangGraph Agents为制定智能工作流程提供了一个强大的平台,集成Retriever-Augmented Generator(RAG)模型将电子邮件通信的效率提升到一个新的水平。本文探讨了 RAG 如何专门用于回复客户电子邮件的 LangChain 代理。

座席目标在行动:

  1. 检索电子邮件:LangChain代理通过获取传入的客户电子邮件来启动。
  2. 电子邮件分类:利用预先训练的模型或基于规则的系统,代理将电子邮件分为“销售查询”、“自定义查询”、“偏离主题”或“客户投诉”等类别。这种分类是制定相关对策的基础。
  3. RAG搜索的问题表述:根据电子邮件类别和初始内容,代理为 RAG 模型生成特定问题。以下是每个类别的展开方式:

i) 销售咨询:

  • 问题可能针对产品详细信息、定价信息或在知识库中发现的类似过去查询中提出的常见销售异议。
  • 示例问题:“客户最常询问的产品 X 的功能是什么?”或“产品 Y 最有效的推销是什么?”

ii) 海关查询:

  • 在这里,问题更深入地了解客户的具体需求。
  • 示例包括:“对于与客户描述的问题类似的挑战,提供了哪些常见的解决方案?”或“是否有任何案例研究展示了此类场景的成功实施?

iii) 题外话:

  • 座席可能会提出问题,礼貌地将客户重定向到适当的渠道或资源。
  • 示例:“客户询问的最常见的支持主题是什么?

iv) 客户投诉:

  • 问题旨在确定潜在的解决方案或故障排除步骤。
  • 例如:“对于此类投诉,最常见的解决方案是什么?”或“是否有任何知识库文章可以解决与客户类似的问题?

4. 回复草稿生成:

  • LangChain 代理中的 LLM 利用从 RAG 中检索到的信息(产品详细信息、解决方案、故障排除步骤等)来创建初始草稿响应。
  • 此草案考虑了电子邮件类别、客户的特定查询以及检索到的知识库信息。

5. RAG验证和回复细化:

  • 将答复草稿与原始 RAG 答复进行比较,以确保准确纳入检索到的信息。
  • 如果出现不一致,代理会优化草稿以与检索到的知识保持一致。

6. 最终回复输出:

  • LangChain代理向客户提供最终的、精炼的电子邮件回复。这种回答是针对他们的具体询问量身定制的,利用知识库中的相关知识,并保持专业和信息丰富的语气。

在这里插入图片描述

资料来源:Sam-Witteveen-course

什么是RAG?

RAG 是一种基于神经检索的抽象摘要方法。它由两个组件组成:猎犬和发电机。检索器从知识库中检索相关段落以响应查询。然后,生成器使用检索到的段落来生成一个既有信息又有抽象性的摘要,这意味着它不仅仅是简单地从源文本中复制句子。

将RAG与LangChain的LangGraph代理集成的好处

将RAG与LangChain的LangGraph Agents集成,为电子邮件起草提供了几个优势:

  • 改进了上下文理解:RAG 可以利用外部知识库来了解初始电子邮件的上下文。这允许LangChain代理生成更相关和信息量更大的草稿响应。
  • 增强的问答:RAG检索相关信息的能力可用于识别电子邮件草稿中需要解决的关键问题。这可以简化电子邮件写作过程,并确保涵盖所有要点。
  • 更自然的语言生成:通过整合从知识库中检索到的信息,RAG 可以帮助 LLM 生成更自然、更连贯的电子邮件草稿。

在这里插入图片描述

资料来源:LangGraph-Llama3

代码实现

以下是将 RAG 添加到 LangChain 的 LangGraph Agents 以进行电子邮件起草的代码实现的高级概述:

  1. 定义 LangGraph 代理:第一步涉及定义负责电子邮件起草的 LangGraph 代理。此代理将收到初始电子邮件作为输入。
  2. RAG 集成:在 LangGraph 代理中,集成 RAG 模型。RAG 模型将初始电子邮件作为查询,并从知识库中检索相关段落。
  3. 问答:使用检索到的段落来确定电子邮件草稿中需要解决的关键问题。这可以通过信息提取或问题生成等技术来实现。
  4. 电子邮件生成草稿:利用 LLM 生成草稿电子邮件内容。LLM应该考虑最初的电子邮件,从RAG中检索到的段落,以及确定的关键问题。
  5. 精炼和输出:生成的电子邮件草稿可以进行进一步的优化步骤,例如语法检查和情感分析。最后,LangGraph 代理输出最终的电子邮件草稿。

步骤一:安装库并下载数据

在这里插入图片描述

第二步:初始 HF 和 Groq API

在这里插入图片描述

第三步:构建 RAG

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

第四步:基本链

  1. 对电子邮件进行分类
  2. 研究路由器
  3. RAG 问题
  4. 撰写草稿电子邮件
  5. 重写路由器
  6. 电子邮件草稿分析
  7. 重写电子邮件
  8. RAG Chain — 在上面的 RAG 部分创建

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

步骤 V:LangGraph 状态
在这里插入图片描述
在这里插入图片描述

第六步:节点

  1. categorize_email
  2. research_info_search # 现在使用 RAG 完成
  3. draft_email_writer
  4. analyze_draft_email
  5. rewrite_email
  6. no_rewrite
  7. state_printer

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

步骤 VII:条件边

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

步骤 VIII:构建图形

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

结论

通过将RAG与LangChain的LangGraph代理集成,我们可以创建一个强大的系统来制作对客户的智能电子邮件回复。该系统可自动执行电子邮件分类、问题生成和知识检索等任务,从而简化沟通并使企业能够提供卓越的客户服务。效率的提高使座席能够专注于更复杂的问题,而上下文感知的回复草稿确保所有客户查询都得到全面解决。

此外,随着LangChain代理随着时间的推移收到用户反馈,它可以不断提高其性能,确保电子邮件回复变得更加自然和有用。RAG 和 LangChain 代理的这种集成代表了人工智能驱动的通信的重大飞跃,促进了更高效和积极的客户体验。

​

如何学习大模型

现在社会上大模型越来越普及了,已经有很多人都想往这里面扎,但是却找不到适合的方法去学习。

作为一名资深码农,初入大模型时也吃了很多亏,踩了无数坑。现在我想把我的经验和知识分享给你们,帮助你们学习AI大模型,能够解决你们学习中的困难。

我已将重要的AI大模型资料包括市面上AI大模型各大白皮书、AGI大模型系统学习路线、AI大模型视频教程、实战学习,等录播视频免费分享出来,需要的小伙伴可以扫取。

一、AGI大模型系统学习路线

很多人学习大模型的时候没有方向,东学一点西学一点,像只无头苍蝇乱撞,我下面分享的这个学习路线希望能够帮助到你们学习AI大模型。

在这里插入图片描述

二、AI大模型视频教程

在这里插入图片描述

三、AI大模型各大学习书籍

在这里插入图片描述

四、AI大模型各大场景实战案例

在这里插入图片描述

五、结束语

学习AI大模型是当前科技发展的趋势,它不仅能够为我们提供更多的机会和挑战,还能够让我们更好地理解和应用人工智能技术。通过学习AI大模型,我们可以深入了解深度学习、神经网络等核心概念,并将其应用于自然语言处理、计算机视觉、语音识别等领域。同时,掌握AI大模型还能够为我们的职业发展增添竞争力,成为未来技术领域的领导者。

再者,学习AI大模型也能为我们自己创造更多的价值,提供更多的岗位以及副业创收,让自己的生活更上一层楼。

因此,学习AI大模型是一项有前景且值得投入的时间和精力的重要选择。

AI编排实战:MuleSoft+LangChain构建企业级智能调度中枢 AI编排(AI Orchestration)是一种将大语言模型与企业现有系统安全、可靠、合规集成的技术范式,其核心在于解耦‘智能决策’与‘系统执行’,通过标准化数据契约、动态路由、多源聚合和防御性策略实现端到端可审计的自动化流程。它并非替代LLM,而是为其提供企业级连接能力、API治理、字段级权限控制与SLA保障——尤其在Salesforce、SAP、Oracle等强流程系统集成中,MuleSoft凭借300+认证连接器和原生合规引擎成为当前最务实的AI调度底座,而LangChain则专注语义理解与RAG增 阅读详情

相关推荐

优雅谈大模型:LangChain Vs. LlamaIndex

LlamaIndex和LangChain的对比其实是一个很复杂的话题,若需要用一句话来总结,LlamaIndex是数据之王,而LangChain是LLM应用程序开发的多面手。

鲁班模锤 1444

【LangChain】LangChain 与 LangGraph 介绍

💬 hello!各位铁子们大家好哇。今日更新了LangChain相关内容简单提示词(Prompt)得到的答案经常出现幻觉?提示词结构是否可以统一规范?如何实现开发过程中大模型的轻松、灵活切换?大模型输出是非结构化的,怎样与要求结构化数据的程序接口交互?如何克服预训练模型知识陈旧的问题,引入实时更新?如何连接模型与外部工具或系统,执行具体任务?...

qinjh_的博客 2272

从零构建AI Agent:基于LangChain的智能体开发实战指南

在实际 AI 应用开发中,很多开发者都听说过 AI Agent 的概念,但往往停留在“知道它能自主完成任务”的层面,对于如何从零开始构建一个具备实际能力的 Agent 感到无从下手。LangChain 作为当前构建大模型应用最流行的框架之一,其核心价值正是为开发者提供了将大语言模型(LLM)与工具、记忆、逻辑流组合成智能体的标准化“积木”。本文将深入解析 LangChain 的核心工作机制,并带领你从环境搭建开始,一步步动手构建一个能理解指令、使用工具、并记住上下文的 AI Agent。无论你是希望将 AI

weixin_30920853的博客 426

使用Azure AI加载Microsoft Office文档:从DOCX到LangChain的优雅转换

Azure AI Document Intelligence(原名Azure Form Recognizer)是一个基于机器学习的服务,专用于从数字或扫描的PDF、图像、Office和HTML文件中提取文本、表格、文档结构和键值对。它支持多种文件格式,包括DOCX、XLSX和PPTX。通过Azure AI Document Intelligence,我们可以有效地加载和处理Microsoft Office文档。了解如何在自己的项目中集成此功能将大大提高文档处理工作的效率和准确性。

qq_29929123的博客 419

MuleSoft+LangChain企业级AI编排实战指南

AI编排(AI Orchestration)是大模型落地企业核心系统的枢纽能力,本质是解决数据孤岛与智能服务之间的调度、治理与协同问题。其技术原理在于构建可编排的数据管道与AI管道,在安全合规前提下实现跨系统数据拉取、语义理解、多步推理与结构化交付。该能力直接支撑销售智能助手、客户流失预警、自动化合规报告等高价值场景。本文聚焦MuleSoft与LangChain的生产级组合实践,详解如何用MuleSoft保障企业集成韧性(如SAP RFC深度连接、OAuth2.0联邦认证、运行时脱敏),同时借LangCha

weixin_34168880的博客 565

Spring AI与LangChain4j在Java AI工程化中的分层协作

AI工程化正从胶水代码走向标准化架构,Java生态通过接口抽象(如ChatClient)、工作流编排(如Tool机制)和本地推理(如DJL)构建起生产级AI能力。Spring AI作为统一AI能力契约层,类比JDBC提供跨模型兼容性;LangChain4j则聚焦RAG、Agent等高级语义编排,深度集成Spring事务与安全体系。二者协同解决了大模型落地中最关键的稳定性、可观测性与合规审计难题,在智能客服、金融投顾、航空OCR等场景中实现高并发、低延迟、可回滚的AI服务。本文基于Spring AI 2.0动

java2000.net 394

LangChain.dart LCEL 表达式语言实战:用管道符优雅编排 AI 组件的完整指南

LangChain.dart 为 Dart/Flutter 开发者带来了强大的 **LCEL 表达式语言**(LangChain Expression Language),让你可以用一行管道符 `|` 或 `.pipe()` 方法,把提示模板、大模型、输出解析器等 AI 组件像流水线一样优雅串联起来。本指南面向新手和普通用户,带你从零理解 LCEL 的核心概念,并通过 Prompt + 模型 +

gitblog_00487的博客 666

《iOS之一起进大厂》系列-秒杀面试官的RunLoop底层原理面试题

Runloop是iOS面试中的必考题,不管大厂小厂都会问到。 这里包括了Runloop几乎所有的面试题,还有中肯完整的答案解释。

空杯子 1153

【AI应用开发】LangChain 与 LangGraph 介绍

LangChain 与 LangGraph 介绍

2203_76003626的博客 1367

11n、11ac、11ax和11be MCS表(全网最全)

1、无线协商速率介绍及计算 2、附11n、11ac、11ax 完整MCS速率表

weixin_41500064的博客 2万+

STC51单片机串口多字节数据接收的优化策略

本文深入探讨了STC51单片机串口多字节数据接收的优化策略。针对数据丢包、粘包等常见痛点,核心思路是采用“缓冲队列+定时器超时”模式,将实时处理转变为“先收纳,后处理”。文章详细讲解了硬件初始化、中断服务程序优化(快速入队与激活超时裁判)以及主循环的非阻塞设计,并进阶介绍了环形缓冲区实现与错误处理,旨在构建稳定可靠的串口通信系统。

weixin_29264201的博客 374

AI - 使用LangChain构建简单LLM应用程序

LangChain是一个强大的框架,旨在简化与大型语言模型(LLM)的交互。这一框架为开发人员提供了结构化的方式来调用和操作语言模型,从而增加开发效率和应用程序的可维护性。在本文中,我们使用LangChain和JavaScript创建了一个简单的单词翻译应用程序,通过配置Groq API并使用LangChain框架,我们能够轻松构建出功能强大的语言模型应用程序。在这个基础上,您可以扩展该应用程序,以支持更多的功能和更复杂的应用场景。希望本文对您有所帮助!

2404_88048702的博客 1186

告别迷茫!手把手教你用Synopsys VC USB VIP搭建验证平台(附UVM分层序列实战解析)

本文详细介绍了如何使用Synopsys VC USB VIP搭建验证平台,并深入解析UVM分层序列的实战应用。通过Step-by-Step的操作指南和关键配置示例,帮助验证工程师高效集成USB VIP,掌握从环境搭建到测试用例开发的全套技能,特别适合处理复杂协议验证的挑战。

weixin_42520573的博客 554

LangChain实战教程(三):HumanMessage/AIMessage/SystemMessage,LangChain消息封装,让AI对话更优雅

本文介绍了LangChain中HumanMessage、AIMessage和SystemMessage的作用,它们分别对应原生API中的user、assistant和system角色。通过对比原生API和LangChain版本的代码示例,展示了后者在可读性上的优势:使用封装的消息类型能更清晰地区分对话角色和内容。文章指出,虽然当前功能简单,但LangChain的封装在记忆管理和RAG等复杂场景中更具优势,建议开发者逐步掌握这些概念。作者邀请读者一起学习AI应用开发,并提供交流方式。

qq_36805309的博客 446

pycharm添加Anaconda解释器显示不出来

因为我之前下载的是pycharm最新版本2024.1的,所以我抱着试一试的心态卸载重装了2021.3.3的,创建新文件的时候立刻就自己识别好了conda环境。就是图中画圈的地方,之前一直显示为python的图标,但是再Python Interpreter后面跟的路径确实是我下载anaconda的地方。另外一种方法就是使用Virtualenv Environment方式配置,但是我的pycharm还是没有识别出conda的图标。首先是这位的方法,先添加系统解释器,再重启,但是我的图标还是python。

2202_75803271的博客 4006

Visual SLAM算法笔记

最近在学习SLAM算法,这里作为阅读笔记记录和总结一下。对经典的单目SLAM/VO算法做了摘要和总结,比如Nister VO、MonoSLAM、PTAM、ORB-SLAM、LSD-SLAM、SVO、DSO等,对几个单目和IMU的融合算法也做了简单总结,比如MSCKF、OKVIS、IMU-Preintegration等。

MulinB的技术博客 3万+

“返回个啥玩意儿?”用LangChain4j优雅格式化LLM结果!

终于来到最强的部分!你可以让 LangChain4j 把模型返回的结构化数据,自动映射到你定义的 Java 类上。比如我们定义一个 POJO:然后定义服务接口:LangChain4j 会使用 Jackson 或者 Gson(具体视你依赖而定)来解析 JSON,并自动转为 Java 对象!只要模型能返回类似这样的结构化数据:你就能直接拿到一个 Java 对象,无需手动解析。

python1234_的博客 1150

深度学习之基于Pytorch手指静脉识别系统(

一、项目背景与目标手指静脉识别技术是一种新兴的生物特征识别技术,它依据人类手指中流动的血液可吸收特定波长的光线这一科学原理,利用手指内的静脉分布图像来进行身份识别。与传统的生物识别技术(如指纹识别)相比,手指静脉识别技术具有不易伪造、识别精度高、非接触性等特点,因此在安全性要求较高的场景(如金融、医疗、公安等)具有广阔的应用前景。本项目旨在利用PyTorch深度学习框架,构建一套高效、准确的手指静脉识别系统。

Q1744828575的博客 832

【LangChain】如何优雅的构造prompt

我们要想自定义一个prompt,习惯行写一个txt文档,里面放prompt_template构建prompt时,先定义变量,导入template之后,替换掉对应变量这样一类prompt就对应着一个template(txt文件),以及一个构造函数,文件一多就很烦。

m0_52942489的博客 1080

STC单片机 普通 I/O 口中断功能介绍和使用

STC32单片机 普通 I/O 口中断功能介绍和使用

perseverance51博客 3048

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

如何用LangChain构建企业级AI代理系统:5个关键策略

当企业开始探索大语言模型的应用时,常常面临一个核心困境:如何将先进的AI能力无缝集成到现有业务系统中?LangChain作为智能体工程平台,提供了从原型验证到生产部署的完整解决方案。本文将从企业架构师的视角,探讨LangChain在构建企业级AI代理系统中的关键策略。 ## 从单体应用到模块化架构的演进 企业AI应用的发展往往经历三个阶段:初期快速验证、中期能力扩展、后期系统集成。LangCh

gitblog_00424的博客 1124

深度学习工具包 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编排实战:MuleSoft+LangChain构建企业级AI调度中枢

AI编排(AI Orchestration)是一种面向企业生产环境的工程化方法论,旨在解决大模型落地中数据孤岛、能力碎片化与安全治理失控三大核心难题。其本质是将AI作为可编排、可审计、可治理的企业服务(AI-as-a-Service),而非黑盒函数。通过统一调度层实现跨系统数据整合、LLM调用标准化与全链路血缘追踪,显著提升AI输出的可靠性、合规性与业务可解释性。典型技术栈以MuleSoft为中枢神经,负责连接器管理、API生命周期控制与动态安全策略;LangChain/LlamaIndex为AI原生执行层

过客阵营 -- 简单的就要最简单 480

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

AI编排实战:MuleSoft+LangChain构建企业级AI流水线

AI编排(AI Orchestration)是连接大模型与企业核心系统的工程范式,其本质是解决LLM缺乏实时业务数据访问能力的关键瓶颈。它既非单纯API集成,也非模型微调,而是通过数据流与控制流的物理隔离,在生产环境中实现安全、稳定、可运维的AI能力交付。核心技术原理在于将企业系统连接、数据治理、权限管控等稳态能力交由MuleSoft等集成平台承担,而将Prompt链编排、多模型路由、结构化输出等智能逻辑交由LangChain等AI框架处理。这种双引擎架构显著提升了AI应用在CRM、ERP、计费系统等真实场

clhq71932的博客 655

被LangChain4j坑惨了!

最近在深度体验和使用 Spring AI 和 LangChain4j,从开始的满怀期待五五开,但最后极具痛苦的使用 LangChain4j,让我真正体验到了正规军和草台班子的区别。

磊哥聊Java 779
上一篇: 无限可能LangChain——开启大模型世界
下一篇: 【LangChain】(一)掌握向量数据库的CRUD操作与语义检索技巧 (1)
AI_小站
博客等级 码龄3年 6255粉丝 1152原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值