LangChain 入门,从构建第一个智能体开始

LangChain入门指南 LangChain是一个强大的框架,旨在帮助开发人员使用语言模型构建端到端的应用程序。它提供了一套工具、组件和接口,可简化创建由大型语言模型 (LLM) 和聊天模型提供支持的应用程序的过程。LangChain 可以轻松管理与语言模型的交互,将多个组件链接在一起,并集成额外的资源,例如 API 和数据库。官方文档:https://python.langchain.com/en/latest/ 阅读详情

LangChain是一个用于构建智能体的开源框架,可以集成任何模型或者工具。

它由大语言模型驱动,只需要不到10行代码,就可以连接OpenAI、Anthropic、谷歌等世界最先进的模型为你工作。

准备工作

首先,LangChain支持Python和Typescript,在本系列文章中,主要使用python进行演示

安装LangChain

pip install -U langchain # Python版本要求在3.10以上

集成大模型

LangChain支持了目前主流的各大AI平台,如OpenAI、谷歌、Anthropic、DeepSeek等等

你可以到下面这个地址,看到所有支持的模型

https://docs.langchain.com/oss/python/integrations/providers/overview

# 安装openai相关支持 pip install -U langchain-openai # 安装DeepSeek相关支持 pip install -U langchain-deepseek

当然也支持本地部署的大模型,如Ollama、vLLM、SGLang等本地

在开始使用LangChain写我们的第一行代码之前,我们首先需要准备一个大模型的API,通常来说有两种途径

    1. 你可以在OpenAI,DeepSeek等官方网站上去申请一个账号,获取一个api-key
    1. 使用本地的服务器、电脑来部署一个本地的大模型(使用Ollama、vLLM、SGLang等)

快速开始

从调用一个DeepSeek开始

from langchain_core.messages import HumanMessage  from langchain_deepseek import ChatDeepSeek  # api_base可以用于特定的代理地址或本地地址,不填则默认使用DeepSeek官方# api_key来自DeepSeek官方申请得到model = ChatDeepSeek(model="deepseek-chat",                       # api_base="http://localhost:8000/v1",                       api_key="sk-xxxxx")    result = model.invoke("你好 DeepSeek!")   print(result.content)

运行可以看到输出代码如下,我们就成功调用了 DeepSeek 。

可以看到,使用 LangChain ,从创建项目到成功调用大模型,大概只需要几分钟时间,是非常简单的。

LangChain 让我们可以节省出更多的时间来专注业务的构建,不用再去重复造轮子了。

如果你的电脑或服务器还不错,也可以使用本地的 ollama 运行一个 Qwen3 来进行测试

model = ChatOllama(model="qwen3")  result = model.invoke("你好 Qwen3! \\no_think")  print(result.content)

在基础模型之上构建智能体

我们使用 LangChain ,主要是需要构建一个专属领域的智能体,比如

    1. 在一个 IDE 里创建一个 AI 编程助手
    1. 在医生看诊时的一个写病历、下诊断助手
    1. 公司内部的一个停车场查询助手等等

假设我们实际的业务中有一个接口

# 停车场车位信息  def get_parkinglot_info() -> str:      """获取停车场车位信息"""      # 我们可以假设系统中有 3 个停车场,分别用 mock 的数据模拟      # 实际业务中可以通过接口查询      return ("停车场车位信息如下:\n1号车位已满"              "\n2号停车场剩余 20 个车位"              "\n3号停车场剩余 30 个车位")

我们基于上述 DeepSeek 模型创建一个Agent,让其可以帮我们在接口里自动查询出哪个停车场车位充足。

from langchain.agents import create_agent  from langchain_core.messages import HumanMessage, AIMessage  from langchain_deepseek import ChatDeepSeek    # 调用一个DeepSeek  model = ChatDeepSeek(model="deepseek-chat",                       # 可以使用搭建的DeepSeek,不填写则可以使用DeepSeek的公开API                       api_base="http://localhost:8000/v1",                       api_key="1")  # 停车场车位信息  def get_parkinglot_info() -> str:      """获取停车场车位信息"""      # 我们可以假设系统中有 3 个停车场,分别用 mock 的数据模拟      # 实际业务中可以通过接口查询    return ("停车场车位信息如下:\n1号车位已满"              "\n2号停车场剩余 20 个车位"              "\n3号停车场剩余 30 个车位")    agent = create_agent(model,                       system_prompt="你是一个停车场车位查询助手",                       tools=[get_parkinglot_info]                       )    result = agent.invoke({"messages": [HumanMessage(content="哪个停车场还有车位?")]})    for message in result.get('messages', []):      if isinstance(message, AIMessage):          print(message.content)

查询结果如下

为了更有效地对接系统,让 AI 可以帮我们将非结构化的数据整理成结构化的数据方便进行处理

再比如:让 AI 帮我们找到车位最多的停车场,并结构化成我们希望的样式

class ParkinglotInfo(BaseModel):      name: str = Field(description="停车场名称")      num: int = Field(description="剩余车位数量")structured_agent = create_agent(model,                              system_prompt="你是一个停车场车位查询助手。请调用工具获取停车场信息,然后按照用户要求的格式组织数据。",                              tools=[get_parkinglot_info],                              response_format=ToolStrategy(ParkinglotInfo))structure_result = structured_agent.invoke({"messages": [HumanMessage("请告诉我哪个停车场的车位最多?并按照 {name:停车场名称,num:数量} 的格式进行组织")]})  print(f"===========================")  print(f"结构化输出结果:{structure_result['structured_response']}")# 输出结果# ===========================# 结构化输出结果:name='3号停车场' num=30

Tip

值得注意的是,在最后输出结构化时,很可能出现报错,如果排除了网不通/代码写错等等问题后依然出现,那么通常有两种可能性

    1. 小规模模型的指令跟随能力、文档总结能力、结构化能力有缺陷
    1. 即使是最先进的模型(如 DeepSeek-V3.2),也会因为提供厂商的工程能力(官方和第三方)差异导致输出结果不符合预期1。

在初学时,极容易遇到这个问题卡主,解决方案如下:

    1. 财力够,建议尽量使用官方提供的模型,如 DeepSeek 官方、OpenAI 官方等等,避免使用第三方。
    1. 资金有限,尽量使用 Qwen3系列 这种指令跟随能力较强的小模型,会减少很多因为模型能力不足导致的问题

结语

本篇文章中,我们了解到了在 AI 应用开发中,如何使用 LangChain 快速连接一个大语言模型,构建一个简单的 Agent,使用大语言模型进行工具调用以及结构化输出。

参考文献

1. https://docs.langchain.com/oss/python/langchain/overview

附注

1. DeepSeek-v3.2 指令跟随缺陷导致的 Agent 输出不符合预期

如果你在使用 DeepSeek-V3.2 这种旗舰模型时,出现了类似下面的问题,那么恭喜你,通常这是一个本地部署/第三方提供的 DeepSeek 缺陷导致的问题

解决方法
    1. 使用官方提供的 DeepSeek 接口
    1. 将你部署的 SGLang 版本升级到 0.5.7(写稿时暂未发布)以上版本来解决这个问题

2. 有没有比较价廉物美小模型测试方案?

这里我推荐使用 qwen3:4b-instruct-2507-fp16 这个模型,你可以直接使用 ollama run qwen3:4b-instruct-2507-fp16 来运行这个模型,即使性能较差的电脑也可以顺利运行。

如果你的电脑还不错,那么qwen3:30b-instruct这个模型也可以尝试一下,性能会好很多。

qwen3 系列模型,包括语音、图像、视频等多模态模型,在应对LangChain学习的任务上应该都可以胜任

那么本篇文章就到这里啦,感谢你的阅读,我们一起加油!

想入门 AI 大模型却找不到清晰方向?备考大厂 AI 岗还在四处搜集零散资料?别再浪费时间啦!2025 年 AI 大模型全套学习资料已整理完毕,从学习路线到面试真题,从工具教程到行业报告,一站式覆盖你的所有需求,现在全部免费分享!

👇👇扫码免费领取全部内容👇👇

​

一、学习必备:100+本大模型电子书+26 份行业报告 + 600+ 套技术PPT,帮你看透 AI 趋势

想了解大模型的行业动态、商业落地案例?大模型电子书?这份资料帮你站在 “行业高度” 学 AI:

1. 100+本大模型方向电子书

在这里插入图片描述

2. 26 份行业研究报告:覆盖多领域实践与趋势

报告包含阿里、DeepSeek 等权威机构发布的核心内容,涵盖:

  • 职业趋势:《AI + 职业趋势报告》《中国 AI 人才粮仓模型解析》;
  • 商业落地:《生成式 AI 商业落地白皮书》《AI Agent 应用落地技术白皮书》;
  • 领域细分:《AGI 在金融领域的应用报告》《AI GC 实践案例集》;
  • 行业监测:《2024 年中国大模型季度监测报告》《2025 年中国技术市场发展趋势》。

3. 600+套技术大会 PPT:听行业大咖讲实战

PPT 整理自 2024-2025 年热门技术大会,包含百度、腾讯、字节等企业的一线实践:

在这里插入图片描述

  • 安全方向:《端侧大模型的安全建设》《大模型驱动安全升级(腾讯代码安全实践)》;
  • 产品与创新:《大模型产品如何创新与创收》《AI 时代的新范式:构建 AI 产品》;
  • 多模态与 Agent:《Step-Video 开源模型(视频生成进展)》《Agentic RAG 的现在与未来》;
  • 工程落地:《从原型到生产:AgentOps 加速字节 AI 应用落地》《智能代码助手 CodeFuse 的架构设计》。

二、求职必看:大厂 AI 岗面试 “弹药库”,300 + 真题 + 107 道面经直接抱走

想冲字节、腾讯、阿里、蔚来等大厂 AI 岗?这份面试资料帮你提前 “押题”,拒绝临场慌!

1. 107 道大厂面经:覆盖 Prompt、RAG、大模型应用工程师等热门岗位

面经整理自 2021-2025 年真实面试场景,包含 TPlink、字节、腾讯、蔚来、虾皮、中兴、科大讯飞、京东等企业的高频考题,每道题都附带思路解析:

2. 102 道 AI 大模型真题:直击大模型核心考点

针对大模型专属考题,从概念到实践全面覆盖,帮你理清底层逻辑:

3. 97 道 LLMs 真题:聚焦大型语言模型高频问题

专门拆解 LLMs 的核心痛点与解决方案,比如让很多人头疼的 “复读机问题”:


三、路线必明: AI 大模型学习路线图,1 张图理清核心内容

刚接触 AI 大模型,不知道该从哪学起?这份「AI大模型 学习路线图」直接帮你划重点,不用再盲目摸索!

在这里插入图片描述

路线图涵盖 5 大核心板块,从基础到进阶层层递进:一步步带你从入门到进阶,从理论到实战。

img

L1阶段:启航篇丨极速破界AI新时代

L1阶段:了解大模型的基础知识,以及大模型在各个行业的应用和分析,学习理解大模型的核心原理、关键技术以及大模型应用场景。

img

L2阶段:攻坚篇丨RAG开发实战工坊

L2阶段:AI大模型RAG应用开发工程,主要学习RAG检索增强生成:包括Naive RAG、Advanced-RAG以及RAG性能评估,还有GraphRAG在内的多个RAG热门项目的分析。

img

L3阶段:跃迁篇丨Agent智能体架构设计

L3阶段:大模型Agent应用架构进阶实现,主要学习LangChain、 LIamaIndex框架,也会学习到AutoGPT、 MetaGPT等多Agent系统,打造Agent智能体。

img

L4阶段:精进篇丨模型微调与私有化部署

L4阶段:大模型的微调和私有化部署,更加深入的探讨Transformer架构,学习大模型的微调技术,利用DeepSpeed、Lamam Factory等工具快速进行模型微调,并通过Ollama、vLLM等推理部署框架,实现模型的快速部署。

img

L5阶段:专题集丨特训篇 【录播课】

img
四、资料领取:全套内容免费抱走,学 AI 不用再找第二份

不管你是 0 基础想入门 AI 大模型,还是有基础想冲刺大厂、了解行业趋势,这份资料都能满足你!
现在只需按照提示操作,就能免费领取:

👇👇扫码免费领取全部内容👇👇

​

2025 年想抓住 AI 大模型的风口?别犹豫,这份免费资料就是你的 “起跑线”!

使用 LangChain 和 DeepSeek 构建文案助手智能体 LangChain 是一个高度灵活的框架,允许开发者将大语言模型(如 GPT)与各种外部工具结合使用,构建功能丰富的智能体。LangChain 的核心原理是将多个功能组合成一个智能体,以便在复杂的任务中实现自动化。 阅读详情

相关推荐

【pprof】简要学习教程

基本介绍 pprof 是在做性能优化前的性能分析工具。 安装: go get -u github.com/google/pprof 分析工具 go tool pprof 是命令行指令,用于分析 Profiling 数据,源数据可以是 http 地址,也可以是已经 dump 下当 profile 文件;查看模式可以命令行交互模式,也可以是浏览器模式(-http 参数)。 两种应用 服务型应用 _ "net/http/pprof" 包,专用于采集 web 服务 运行数据的分析。即在运行的服务中通过 API .

码农印象 884

最全面又最浅显易懂的Langchain快速上手教程(下)

根据上述的理解,对LangChain核心模块的总结如下所示LCEL(LangChain Expression Language)是一种构建复杂链的简便方法,语法是使用或运算符自动创建Chain后,即可完成链式操作。这在背后的原理是python的__ror__魔术函数,比如就相当于。下面看一个简单的LCEL代码,按照传统的方式创建,然后再使用或运算符创建了一个Chain,它自动把这3个组件链接在了一起,这都是在底层实现的,对应用层十分友好!

2401_85373691的博客 1265

从FedAvg到实战:手把手教你用PyTorch复现联邦学习经典论文实验(MNIST/CIFAR-10)

本文详细介绍了如何使用PyTorch复现联邦学习经典算法FedAvg在MNIST和CIFAR-10数据集上的实验。从环境搭建、数据非IID划分到模型实现和参数聚合,手把手教你掌握联邦学习的核心技术与实战技巧,帮助开发者和研究人员快速实现隐私保护的分布式机器学习方案。

weixin_29053695的博客 253

LangChain Python 入门教程(简明版)

是一个帮助你构建 LLM 应用的 Python 框架。你可以用它实现:智能客服RAG 知识库问答Agent 智能工具执行复杂任务流程多模型协作记忆、上下文管理支持 LLM:OpenAI / DeepSeek / 阿里通义 Qwen / 玲珑 / 本地模型 / Ollama …

lianyinghhh的博客 883

CORS(跨域资源共享)漏洞解决方法

最近,测试环境上的项目被360测试人员检测出来有一个CORS漏洞,以下记录下漏洞问题与解决方法。 一、低危漏洞:CORS漏洞问题 测试人员访问某个url,将请求头中的Origin字段修改为任意值,结果仍然能获得正确的响应报文,就说明有CORS漏洞。 当CORS的设置不正确时,就会带来安全问题;当响应头中的Access-Control-Allow-Origin设置为null或*时,表示信任任何域,这时候就可能引入安全问题。 修复方法是合理配置CORS,判断Origin是否合法;具体说就是不让在nginx或t

BHSZZY的博客 3万+

电源完整性之Cadence Sigrity Power SI_AC阻抗仿真

之前和大家分享过电源完整性之仿真设计原理链接: [link](https://blog.youkuaiyun.com/weixin_41808082/article/details/117065140?spm=1001.2014.3001.5501).今天接着上一篇文章总结一下电源AC阻抗的的仿真操作流程及一些simulation中的设置参数,用到的时候Cadence Sigrity 中的Power SI组件,下面开始享受仿真的快乐吧: 1.仿真模式选择与文件导入 选择Cadence Sigrity下的Power SI

刘小同学的博客 1万+

收藏必备】LangChain实战:从零开始构建DeepSeek大模型链(附完整代码)

收藏必备】LangChain实战:从零开始构建DeepSeek大模型链(附完整代码)

xxue345678的博客 1352

WOL唤醒配置(以太网、PHY、MAC)

MAC 就是以太网控制器,属于OSI的数字链路层。phy 属于OSI的物理层(Physical layer),所以叫phy。CPU Mac与phy通信通过MII接口,数据的传输通过MDIO数据线。通过配置phy的相关寄存器实现不同的功能。

qq_58264156的博客 8632

LangChain 快速开始

安装LangChain 包LangChain 提供了上百个LLM的集成以及上千个其他集成。这些包都是独立的。比如pipuv。

墨鱼第二大脑 494

TypeError: ‘<=‘not supported between instances of ‘float’and ‘str‘解决方案

本文主要介绍了TypeError: '

weixin_43178406的博客 28万+

化工设备设计软件:PVELITE二次开发_(12).数据导入导出与兼容性

在数据导入之前,需要定义数据在PVELITE中的结构。可以通过编程接口定义字段名称和数据类型。# 导入必要的库 import pvelite # 创建PVELITE实例 pve = pvelite . PVELITE() # 定义CSV数据结构 csv_structure = {

kkchenjj的博客 1212

LangChain 零基础入门:一步一步带你开发第一个智能体应用

近年来,随着计算能力的提升和算法的革新,LLM的规模和能力呈现爆发式增长。作为开发者,如何快速入门并构建自己的AI应用?本文将带您从零开始,了解大模型应用的基础概念,入门LangChain框架,并动手构建第一个智能体应用。

youmaob的博客 854

YOLOv11【第二章:核心模块进阶篇·第3节】LDConv线性可变形卷积改进YOLOv11!

🏆 本文收录于专栏 《YOLOv11实战:从入门到深度优化》。本专栏围绕 YOLOv11 的改进、训练、部署与工程优化 展开,系统梳理并复现当前主流的 YOLOv11 实战案例与优化方案,内容目前已覆盖 分类、检测、分割、追踪、关键点、OBB 检测 等多个方向。

**My Coding Family** 7440

LangChain入门,手把手带你构建第一个智能体应用!

近年来,随着计算能力的提升和算法的革新,LLM的规模和能力呈现爆发式增长。作为开发者,如何快速入门并构建自己的AI应用?本文将带您从零开始,了解大模型应用的基础概念,入门LangChain框架,并动手构建第一个智能体应用。

ytt0523_com的博客 2210

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

基于LangChain4j从0到1搭建自己的的AI智能体-1

本文介绍了Java版LangChain框架Langchain4j的开发应用。主要内容包括:1)快速接入阿里云通义千问大模型实现基础对话;2)进阶功能实现:通过AIService接口代理、聊天记忆存储与隔离、MongoDB持久化、提示词模板等功能增强交互体验;3)工具调用(Function Calling)实现数学运算等扩展能力;4)实战案例"小智医疗"项目,实现包含AI分诊、挂号预约/取消等功能的医疗智能体,通过系统提示词定义角色行为规范,并整合MyBatis-Plus实现预约数据持久化

EdenCcp的博客 733

深度学习工具包 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")

LangChain框架入门19: 构建你的第一个 AI 智能体

本文介绍了AI Agent(智能体)的概念及其核心能力,包括目标规划、工具调用和学习反思。通过LangChain的AgentExecutor构建了一个ReAct智能体,结合Google Serper搜索工具和高德地图IP定位工具,实现边推理边调用工具解决问题的流程。虽然AgentExecutor已不推荐使用,但作为经典实现仍适合学习。文章详细讲解了智能体工作原理、工具定义及实现步骤,为构建更复杂的智能体系统奠定基础。

weixin_42899466的博客 1075

小白必看,LangChain入门,手把手带你构建第一个智能体应用!

近年来,随着计算能力的提升和算法的革新,LLM的规模和能力呈现爆发式增长。作为开发者,如何快速入门并构建自己的AI应用?本文将带您从零开始,了解大模型应用的基础概念,入门LangChain框架,并动手构建第一个智能体应用。

qq_46094651的博客 1023

从零开始打造自己的Manus:学学如何使用 LangChain 快速构建 AI Agent

最近,随着Manus的强势出圈,「智能体(Agent)」这一概念一下子占据了人们的视野,成为AI领域最新的流量密码。那么,智能体到底是什么?我们又该如何快速入门打造自己的智能体应用呢?其实,作为大模型开发热门框架的LangChain,就能帮助我们轻松实现这一目标。今天,就让我们从零开始,一起看看如何用LangChain打造一个专属于自己的Agent智能系统吧!借用知乎用户邓炎。

AI生成曾小健3 1433

LangChain 入门实战:从零开始开发你的第一个智能体应用

LangChain 入门实战:从零开始开发你的第一个智能体应用

xxue345678的博客 1117

基于 LangChain 6步构建企业级 AI 智能体应用

AI 智能体应用在企业场景中落地越来越多了,本文通过从挑选企业业务场景开始,构建最小可行性产品(MVP),再到测试 AI 智能体应用的质量和安全性,最后到生产中的部署运维等全方位带你基于 LangChain 6步构建一个 AI 智能体应用。下文我们详细剖析之。今年很多公司都在谈论构建 AI 智能体,企业很容易想象 AI 智能体如何改变公司已有业务,但许多团队不确定从哪里开始、如何取得进展以及如何设定期望。本指南将带你从想法到实施落地的全过程:以构建电子邮件 AI 智能体的真实案例来说明。

h1453586413的博客 1260

构建第一个 AI Agent:LangChain 入门实战

今天我们使用 LangChain 快速构建了一个能联网查资料的 AI Agent,体验了最小 Agent 架构的魅力。

Q2024107的博客 1140

LangChain大模型应用开发:构建Agent智能体

在LangChain中,Agent智能体是一种能够根据输入的任务或问题,动态地决定使用哪些工具(如搜索引擎、数据库查询等)来解决问题的程序。它可以理解自然语言指令,并利用工具获取更多信息,最终生成解决方案。Agent智能体具备推理和决策能力,能够在不同的工具和操作之间进行选择,以达到最佳的问题解决效果。

老赵爱学习的博客 3519

LangChain 保姆级入门:10 行代码搭建你的第一个 AI 智能体应用

你有没有遇到过这样的时刻:花了两周时间研究提示词、调接口,终于让 AI 能回答问题了,可它一问三不知——因为模型根本"看不见"你手头的数据。你写的代码里,`openai.ChatCompletion.create()` 换一家厂商就得全部重写,更别提让它自己上网查资料、算个结果、再决定下一步做什么了。 别急着怀疑自己。这个困局几乎是所有 AI 应用开发者的第一道坎,而**LangChain**—

gitblog_00298的博客 741
上一篇: 以「电商客服」为例:如何构造领域LLM微调数据集?
下一篇: RAG检索总是搜不到?别卷Prompt了,手把手教你微调垂直领域Embedding模型(附源码)
AI_小站
博客等级 码龄3年 6255粉丝 1152原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值