基于LangChain构建安全Agent应用实践(含代码)

AI基础入门(应用开发篇)——用LangChain实现一个Agent 本文介绍了基于LangChain框架实现的Agent系统。通过代码示例展示了如何定义工具函数(如计算和查询水果单价),并使用@tool装饰器将其转换为Agent可调用的工具。重点解析了ReAct Agent的提示词模板设计,其中包含工具信息、思考过程和执行步骤。最后说明了如何将模型、工具和提示词组装成可执行的Agent,并通过AgentExecutor实现循环执行机制。整个系统实现了问答过程中动态调用工具并逐步推理的功能。 阅读详情

概述:本文基于langchain和Cyber Security Breaches数据集构建Agent,并基于该Agent实现了数据分析、趋势图输出、预测攻击态势三个功能,最后给出Agent在安全领域应用的三点启示。

前提:

1、拥有openai API KEY;(需付费)

2、熟悉Google colab 环境;(T4显卡可免费使用12个小时)

3、下载好数据集。

一、选定数据集

数据集的选择是根据我们想要做的事情定的,基于我们的目标事件,去HG上寻找是否有相关数据集。这里笔者想要分析网络安全漏洞影响,所以选择了“Cyber Security Breaches”数据集。

在这里插入图片描述

&&网络安全漏洞库Cyber Security Breaches

Cyber Security Breaches数据集,该数据集包含了各种有关网络安全漏洞的信息,如受影响组织的名称、国家、受影响人数、数据泄露类型等。用户可以通过该页面查看数据集的详细信息,并使用Hugging Face库进行数据集的访问和处理。页面提供了数据集的统计信息、示例数据和数据集字段的详细描述,帮助用户更好地了解数据集内容。

数据集地址:https://huggingface.co/datasets/schooly/Cyber-Security-Breaches/viewer

上传数据集:下载好Cyber Security Breaches到本地计算机后运行上传代码,并打印前面10行进行有原数据进行比对并确认无错误。


from google.colab import files

def load_csv_file():
#  """Loads a CSV file into a Pandas dataframe."""

  uploaded_file = files.upload()
  file_path = next(iter(uploaded_file))
  document = pd.read_csv(file_path)
  return document

if __name__ == "__main__":
  document = load_csv_file()
  #print(document)

在这里插入图片描述

二、基于langchian搭建agent

通常来说,基于langchain搭建agent主要包含定义代理类型、配置工具和语言模型,并根据需要将代理部署在应用程序中等步骤:以下是一个基于 LangChain 搭建基本 agent 的示例流程:

2.1、安装依赖

确保安装了 LangChain 和其他必要的依赖。

在这里插入图片描述

2.2、导入模块

导入 LangChain 的核心模块,包括代理、工具和语言模型。

在这里插入图片描述

2.3、定义语言模型

设置 OpenAI 的语言模型,比如 ChatOpenAI 或 OpenAI,并调整温度等参数来控制模型响应的创造性。

在这里插入图片描述

2.4、配置工具

定义代理将使用的工具(Tool),这些工具可以包括搜索、数据库查询、文件读取等操作。
在这里插入图片描述

langchain常见工具举例,本文将使用到PandasDataFrame工具进行数据分析。

函数名称说明使用场景举例
SearchTool一个简单的搜索工具,允许通过查询访问网络信息。用户询问最新的科技新闻,代理使用搜索工具提供最新的信息。
Wikipedia从维基百科提取信息的工具,可以用于快速获取知识性内容。用户询问某个历史事件,代理调用维基百科工具提供相关信息。
PandasDataFrame处理和分析 Pandas DataFrame 的工具,支持数据操作。用户请求对某数据集进行统计分析,代理使用 Pandas 工具执行操作。
Calculator基本计算器工具,用于执行数学计算。用户询问复杂的数学问题,如积分或代数,代理调用计算器工具进行计算。
WebScraper网页抓取工具,用于从网页中提取数据。用户希望获取某个电商网站的产品价格信息,代理使用网页抓取工具提取数据。
FileReader读取文件内容的工具,如文本文件或 CSV 文件。用户上传文件并请求数据分析,代理使用文件读取工具加载数据。
ChatTool处理对话的工具,用于与用户进行交互。用户与代理进行问答,代理调用对话工具生成自然语言响应。
OpenAIFunctions调用 OpenAI API 的工具,进行自然语言处理和生成。用户请求生成一篇文章,代理调用 OpenAI 函数生成文本内容。

2.5、 初始化代理

使用 initialize_agent 函数创建代理,指定类型、工具和语言模型。

在这里插入图片描述

2.6、使用代理

一旦代理配置完成,便可以用自然语言向代理发送请求,并获取相应的响应。

在这里插入图片描述

常用代理类型

- Zero-Shot React:适用于直接响应的代理,主要用于简单的 Q&A。
- Self-Ask with Search:将复杂问题分解成简单问题,并使用搜索工具查找答案。
- React Docstore:适合访问和查询文档库数据的代理类型。

扩展功能
你可以根据需求添加更多工具,或使用特定的代理类型来处理特定任务,比如 Structured Chat 用于多输入工具或复杂聊天对话。

代理的应用场景
可以将构建的代理用于各种应用场景,包括智能客服、数据分析助手、文档检索工具等。

https://carta.blog.youkuaiyun.com/article/details/143366461?spm=1001.2014.3001.5502

三、 智能体应用

3.1、创建Agent

基于langchain框架导入模块并创建数据框agent,通过 create_pandas_dataframe_agent 函数,创建了一个 Pandas 数据框代理 sm_ds_OAI。该代理会与 OpenAI 的模型结合,能够接受自然语言的指令来分析和查询 document 中的数据,实现智能的数据处理和分析


# 导入模块
from langchain.agents.agent_types import AgentType  #导入 AgentType 枚举,用于指定代理类型。

from langchain_experimental.agents.agent_toolkits import create_pandas_dataframe_agent 
#从实验模块中导入 create_pandas_dataframe_agent 函数,这个函数允许我们创建一个 Pandas DataFrame 的智能代理。

from langchain_openai import ChatOpenAI
from langchain_openai import OpenAI

#创建数据框代理
sm_ds_OAI = create_pandas_dataframe_agent(
    OpenAI(temperature=0),
    document,
    verbose=True
)

3.2、实践一:分析总结

使用sm_ds_OAI.invok()进行数据分析,invok是Langchain中向智能体发送自然语言指令的方法,它允许agent根据这些指令执行相关任务并返回结果,具体功能包括任务调度、自然语言执行、支持多种工具调用和生成响应。

sm_ds_OAI.invoke("请分析此数据,并用大约 100 字的中文简要说明。请将分析过程的标记,如'Thought'和'Action'替换为'思考'和'执行'")

在 LangChain 中,有多个方法可以用于执行不同任务。下面是一些常见的方法,包括说明、使用场景和 Python 调用示例:

函数名称说明使用场景举例函数调用示例
invoke发送指令到代理,自动匹配工具或模型执行任务,并返回结果。进行数据分析、生成报告、回答问题等任务agent.invoke("Describe the dataset")
run类似于 invoke,但通常用于快速执行单步指令,适合简单任务。用户请求快速问题回答,如“今天的天气如何?”agent.run("What is the weather today?")
add_tool动态添加工具到代理中,使代理在调用时可以使用新工具。用户希望添加一个新的搜索工具,以增强代理的能力agent.add_tool(search_tool)
get_tools获取当前代理中的所有可用工具,便于了解代理的能力范围。用户希望查看代理具备哪些工具来完成特定任务agent.get_tools()
set_verbose设置代理的详细模式,显示执行过程的详细信息,有助于调试。在调试过程中查看代理调用的每个步骤和输出细节agent.set_verbose(True)
clear_memory清除代理的临时记忆,适用于多轮对话中重置上下文的情况。用户在会话中想从头开始交谈,以避免前面内容的干扰agent.clear_memory()
initialize_agent初始化代理,配置语言模型、工具等资源,用于设置代理环境。初始化代理的配置,如加载数据处理工具和模型initialize_agent(tools, llm)

运行上面的语言后,Agent开始运行,可以看到经过九步思考与执行后,agent给出了最终的分析结论。

> Finished chain.
{'input': "请分析此数据,并用大约 100 字的中文简要说明。请将分析过程的标记,如'Thought'和'Action'替换为'思考'和'执行'",
 'output': '根据对该数据的分析,可以发现该数据集包含1055条记录,涉及到不同州的医疗机构发生的违规事件。其中,受影响人数最多的州是加利福尼亚州,受影响人数最少的州是阿拉斯加州。同时,通过散点图可以发现,随着年份的增加,受影响人数也呈现增加的趋势。此外,还发现数据中存在大量缺失值,需要进一步处理。'}

在这里插入图片描述

Entering new AgentExecutor chain…一步Thought: 我需要使用pandas来分析这个数据Action: python_repl_astAction Input: import pandas as pdObservation:
两步Thought: 我需要将数据读取到一个pandas dataframe中Action: python_repl_astAction Input: df = pd.read_csv(‘data.csv’)Observation:
三步Thought: 我需要先将数据文件下载到本地Action: 下载数据文件Action Input: data.csvObservation:
四步Thought: 我需要使用pandas的head()函数来查看数据的前几行Action: python_repl_astAction Input: print(df.head())Observation:
五步Thought: 我需要对数据进行简单的描述性统计分析Action: python_repl_astAction Input: df.describe()Observation:
六步Thought: 我需要对数据进行更深入的分析,比如查看缺失值和数据类型Action: python_repl_astAction Input: df.info()
七步Thought: 我需要对数据进行可视化分析,比如绘制柱状图来查看不同州的数据数量 Action: python_repl_astAction Input: df[‘State’].value_counts().plot(kind=‘bar’)Observation: Axes(0.125,0.11;0.775x0.77)Observation: Axes(0.125,0.11;0.775x0.77)
八步Thought: 我需要对数据进行更深入的可视化分析,比如绘制散点图来查看受影响人数和年份的关系 Action: python_repl_ast Action Input: df.plot.scatter(x=‘year’, y=‘Individuals_Affected’) Observation: Axes(0.125,0.11;0.775x0.77)
九步Thought: 我现在知道了数据的大致情况,可以开始撰写分析报告了Final Answer: 根据对该数据的分析,可以发现该数据集包含1055条记录,涉及到不同州的医疗机构发生的违规事件。其中,受影响人数最多的州是加利福尼亚州,受影响人数最少的州是阿拉斯加州。同时,通过散点图可以发现,随着年份的增加,受影响人数也呈现增加的趋势。此外,还发现数据中存在大量缺失值,需要进一步处理。
Finished chain.{‘input’: “请分析此数据,并用大约 100 字的中文简要说明。请将分析过程的标记,如’Thought’和’Action’替换为’思考’和’执行’”,‘output’: ‘根据对该数据的分析,可以发现该数据集包含1055条记录,涉及到不同州的医疗机构发生的违规事件。其中,受影响人数最多的州是加利福尼亚州,受影响人数最少的州是阿拉斯加州。同时,通过散点图可以发现,随着年份的增加,受影响人数也呈现增加的趋势。此外,还发现数据中存在大量缺失值,需要进一步处理。’}

备注:因为Observation数据较多,为节省空间,前面几步的内容不再文章内呈现。

此处想到这个画面应该不过分吧img

在这里插入图片描述

在这里插入图片描述

图片来源:https://www.youtube.com/watch?v=zt9Oh_RZ5KU

3.3、实践二:趋势图输出

在讲langchain中的invoke方法时有提到,run方法通常用于快速执行单步指令,适合简单任务。实践二基于run()实现趋势图的绘制。

sm_ds_OAI.run(“画一条体现整体安全的趋势图”)

在这里插入图片描述

3.4、实践三:预测攻击态势

运行:

sm_ds_OAI.invoke("""选择一个预测模型来预测攻击态势。使用这种类型的模型来预测在加利福尼亚州未来3年的平均攻击次数和受影响的人数。output输出的内容翻译为中文。""")

输出结果:‘加利福尼亚州未来3年的平均攻击次数为536.27次,受影响的人数为41345.94人。’

在这里插入图片描述

四、安全应用启示

一、安全领域应用: 将 Cyber Security Breaches数据集替换为用户的网络安全攻击日志,那么基于智能体开展态势分析、威胁狩猎、攻击溯源、态势预测、数据统计等工作均成为可能。

二、 数据安全: SOTA大模型效果虽然相对好,但是调用API方式存在数据安全的问题,国内政府、金融、能源等行业难以落地,本地部署安全领域垂直模型是一种可行路径。

三、价格昂贵: 即使能接受数据外传,调用API方式的花费依然是个天文数字,笔者大概观测了下,上文实践一运行一次0.2元,实践三运行一次0.3元,而且是基于gpt-3.5-turbo,如果换位GPT4-O,实时流量检测场景下,一个用户平均一天1亿条HTTP日志,一条HTTP按照1000Token计算,每天的费用上亿美元,如此看来实时检测通过调用SOTA大模型API是天方夜谭,不过在安全分析场景(如态势分析)可以考虑。

​

如何学习大模型

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

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

下面这些都是我当初辛苦整理和花钱购买的资料,现在我已将重要的AI大模型资料包括市面上AI大模型各大白皮书、AGI大模型系统学习路线、AI大模型视频教程、实战学习,等录播视频免费分享出来,需要的小伙伴可以扫取。

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

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

在这里插入图片描述

二、AI大模型视频教程

在这里插入图片描述

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

在这里插入图片描述

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

在这里插入图片描述

五、结束语

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

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

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

【LangChain Agent 】详解,构建自主决策的 LLM 应用 LangChain是一个用于构建基于大语言模型(LLM)应用的强大开发框架,特别适合创建智能问答、聊天机器人、自动化助手等 AI 驱动的应用。🚀 核心功能链式组合(Chain)可以将多个模块(例如:Prompt、模型调用、解析器等)链接在一起,形成一条“处理链”。上下文记忆(Memory)能保存用户的对话历史,实现连续对话或任务跟踪。工具集成(Tools)集成搜索引擎、数据库、API 调用等外部工具,让语言模型更具执行力。Agent(智能体)支持。 阅读详情

相关推荐

【NLP笔记】LLM应用之AI Agent & LangChain实战

AI Agent & LangChain

weixin_36488653的博客 3036

langchain-Agent代理详解

Langchain Agent详解

weixin_45626120的博客 1万+

基于LangChain、LangGraph与LangSmith构建医疗问诊Agent实战指南

在大模型应用开发中,Agent(智能体)已成为处理复杂任务的核心架构,它通过整合工具调用、知识检索与状态管理,实现超越单一问答的自动化工作流。其原理在于将大语言模型(LLM)作为决策中枢,结合外部工具与数据源,通过ReAct等模式进行推理与行动。这种技术价值在于显著提升了AI系统在专业领域的可靠性与实用性。在应用场景上,Agent广泛适用于需要多步骤决策、动态交互的领域,例如智能客服、数据分析与自动化办公。本文聚焦于医疗健康这一典型场景,通过一个完整的医疗问诊Agent项目,详细演示了如何利用LangCha

weixin_33767813的博客 1863

基于LangChain快速实现Agent应用

▼最近直播超级多,预约保你有收获—1—Agent 应用适用场景Agent 是大语言模型(LLM)的主要应用形态,通过大语言模型的推理能力和使用工具的能力完成复杂的任务,如下图所示:如果你有以下的业务场景,Agent 应用架构是非常适合的:第一、需要多步执行、流程编排的复杂问题。第二、该问题可以被拆分成多个子模块,每个子模块都能清晰地定义输入、输出和功能,并能判断是否达成目标。第三、可能感觉有解决的...

musicml的博客 1334

LangChain入门:快速搭建AI Agent应用

LangChain入门:快速搭建AI Agent应用

layneyao的博客 1549

LangChain Agent与MCP协议实战:构建可扩展的AI工具调用架构

在AI应用开发中,如何让智能体(Agent)安全、灵活地调用外部工具(如API、数据库)是核心挑战。传统硬编码方式导致系统紧耦合、扩展性差。其技术原理在于通过标准化协议(如MCP)将工具实现与调用逻辑解耦,使Agent能动态发现和使用外部能力。这种架构的技术价值在于实现了AI能力的即插即用,大幅提升了开发效率和系统可维护性。典型的应用场景包括企业知识库查询、内部系统操作和实时数据获取等。本文以**LangChain Agent**和**MCP(Model Context Protocol)** 为核心,通过

weixin_33860553的博客 2296

LangChain实战:从Prompt工程到RAG与Agent的完整开发指南

大语言模型应用开发已成为AI领域的热门方向,其核心原理是通过Prompt工程引导模型生成符合预期的输出。在实际工程实践中,开发者需要掌握从基础Prompt模板设计到复杂任务规划的全流程技术。RAG技术通过检索增强生成的方式,将外部知识库与大模型能力结合,显著提升了问答系统的准确性和实用性。智能Agent则赋予模型工具调用和多步骤推理能力,使其能够完成更复杂的实际任务。这些技术在智能客服、企业知识库、数据分析等应用场景中发挥着重要作用。本文基于LangChain框架,通过代码实战演示如何快速构建包含Promp

weixin_34252686的博客 569

【AI大模型应用开发】【LangChain系列】5. 实战LangChain的智能体Agents模块

LangChain的智能体Agents模块实战,一步步拆解实现步骤。

同学小张的博客 5514

LangChain实战:20分钟掌握Prompt、RAG与Agent开发

Prompt工程是大模型应用开发的基础技术,通过精心设计输入提示来引导AI模型生成预期输出。其核心原理在于利用模板化结构和消息角色管理,将用户意图转化为模型可理解的指令格式。在技术价值层面,良好的Prompt设计能显著提升模型响应质量,降低幻觉现象。应用场景涵盖智能问答、内容生成、代码编程等多个领域。RAG(检索增强生成)技术通过结合检索系统和生成模型,为AI提供外部知识支持,有效解决模型知识截止问题。本文基于LangChain框架,通过代码示例详细演示Prompt模板设计、RAG知识库构建和Agent工具

weixin_34098209的博客 241

从服装打版到激光切割:二维异形件排版算法在实际生产中的避坑指南

本文深入探讨二维异形件排版算法在服装、家具等行业的实际应用,对比NFP和重叠移除两种核心策略的优缺点,并提供算法落地的五大实战陷阱与解决方案。通过案例分析和技术要点解析,帮助生产管理者提升材料利用率5%-15%,优化生产效率。

weixin_28717431的博客 416

Labview程序框架介绍

当掌握LabVIEW基础知识并达到,理解单个小型模块程序会相对轻松。而若想进一步探索大型程序,就必然需要了解程序框架相关内容。LabVIEW常用的程序架构包括等。在多年工作中,我接触过的众多高级工程师所开发的大型程序,基本都基于这些架构搭建。接下来,将为大家详细介绍这些框架。

Misterlhw的博客 4620

用langchain构建传统agent

各位可以选择去看里面的源码,但是我个人觉得作用不大,因为一环套一环,短时间内不太容易看懂(当然看懂以后收获还是很大的),我这里说一下AgentExcutor的缺点,第一个是它一次只能调用一个tool,第二个就是程序执行以后无法人为控制(因为缺少可能和人的交互,所以会大大限制agent的作用)而langgraph是用来构建比较重的单agent或者多agent的构建。create_tool_calling_agent是用来创建agent的,AgentExecutor是用来管理agent的。

weixin_44586881的博客 1465

【软件安装系列】Ubuntu+mysql5.7.27+Jira8.3.1+邮箱服务器配置+Confluence6.15.7安装经验和采坑总结

文章目录一、软件准备(百度云易被吞,就不放了)1.1 官网下载的新鲜的Jira和Confluence1.2 linux的jdk一份1.3 Jira和Confluence的破解程序或者破解包一份1.4 java的连接器一份二、安装过程1--java环境配置2.1 将下载下来的jdk包解压在/usr/local/java目录中2.2 写入环境变量三、安装过程2--mysql5.7.27环境配置3.1 ...

xiaosha_的博客 6892

LangChain Agent实践:构建智能推理和工具调用系统

本文介绍了如何使用LangChain构建智能Agent系统来实现推理和工具调用功能。主要内容包括:1) 环境配置与模型设置;2) 两种工具函数定义方法(StructuredTool和@tool装饰器);3) Agent的初始化和工作流程解析;4) 关键技术要点如Agent类型选择、工具注册和调试模式;5) 最佳实践建议如工具设计、错误处理和复杂查询;6) 实际应用场景和注意事项。文章通过代码示例详细展示了Agent从思考、行动到生成结果的完整过程,为开发者提供了构建智能系统的实用指南。

一次次探索代码无限可能的旅程,专注于前端、后端、服务器及AI大模型的分享和交流。与我一起踏上这段无尽的技术之旅吧! 3921

你需要这样一个Ros软路由—— 路由器+外网+一号通ip线路=动态ip的WiFi信号

功能强大 管理便捷—给您全新的路由体验 一键更换指定线路or批量更换所有IP/MAC/SSID 自定义走本地网络策略的分流功能 设备批发价、不限制拨号账号服务商 强大的单设备/多设备IP去重功能 批量导入、管理一号通线路 一键任意切换5G_WiFi(推荐)/2.4G_WiFi(建议不用) 设备支持PPTP/L2TP/SSTP/openVP.N等协议 独家支持openVPN,适用于网络受限用户 支持自行接入AP和交换机扩容 一键打开/关闭所有虚拟WiFi 一键隐藏/显示设备WiFi...

米粒儿 4253

斯坦福HumanPlus机器人核心技术解析:从HST强化学习框架到HIT模仿学习的实现路径

本文深入解析了斯坦福HumanPlus人形机器人的核心技术实现路径。其核心在于HST强化学习框架与HIT模仿学习架构的协同:HST作为“小脑”,通过rsl_rl框架在仿真中训练稳健的低级运动控制;HIT作为“大脑”,基于改进的Transformer架构学习高级任务规划。文章详细拆解了从算法原理、代码实现到硬件部署的全流程,为复现这一前沿机器人系统提供了实战指南。

weixin_29082143的博客 281

如何使用LangChain构建Agent

Agent(智能代理)是一种能够感知环境、自主决策并执行任务的实体(可以是软件、机器人或系统)。它的核心能力在于自动化、智能化和适应性,广泛应用于多个领域。以下是Agent能做的事情,按场景分类说明:

aolan123的博客 1555

STM32使用内部RC振荡器作为系统时钟开发项目--内晶振启动模板工程

STM32使用内部RC振荡器时,OSC32_IN,OSC32_OUT接法: 1)对于100脚或144脚的产品,OSC_IN应接地,OSC_OUT应悬空。 2)对于少于100脚的产品,有2种接法:    2.1)OSC_IN和OSC_OUT分别通过10K电阻接地。此方法可提高EMC性能。    2.2)分别重映射OSC_IN和OSC_OUT至PD0和PD1,再配置PD0和PD1为推挽输出

overflyme的博客 1万+

从零构建AI Agent:基于LangChain实现代码执行与工具调用的智能体开发实践

在实际 AI 开发项目中,我们常常面临一个困境:如何让一个 AI 模型不仅能理解我们的指令,还能像一位经验丰富的工程师一样,主动调用工具、执行代码、分析结果,并最终完成一个复杂的、多步骤的任务?这正是 AI Agent(智能体)技术试图解决的问题。它不再是简单的“一问一答”,而是赋予了 AI 自主规划、决策和执行的能力。 xbtlin/ai-berkshire 这个项目,以及围绕它的关键词如 Claude Code、Codex,为我们提供了一个观察和学习 AI Agent 开发实践的绝佳窗口。 本文将带你深

weixin_33875839的博客 429

RT-DERT安卓部署教程

这个文档中的代码案例,实现了拍照和选图识别,两个功能,可以看效果图。UI做了美化:显示类别机和数量。代码下载地址:通过网盘分享的文件:android_rtdert.zip链接: https://pan.baidu.com/s/1k6e-d_lov1OPgUmit5i_cA?pwd=hpfi 提取码: hpfi–来自百度网盘超级会员v8的分享。

AIOT魔法师 196

MVDR算法: 自适应波束形成在信号处理领域中扮演着重要的角色。本文将介绍MVDR(最小方差无失真响应)算法,并提供相应的Matlab源代码实现。

MVDR算法是一种用于抑制干扰信号并增强感兴趣信号的自适应波束形成算法。它的基本思想是通过对干扰信号进行空间滤波,使其在感兴趣信号方向上的输出功率最小化。这种方法可以提高信号的质量和可辨识度,特别是在存在多个干扰源的复杂环境中。本文将介绍MVDR(最小方差无失真响应)算法,并提供相应的Matlab源代码实现。使用MVDR算法,我们可以通过对观测信号进行波束形成来抑制干扰信号并增强感兴趣信号。以上是MVDR算法的Matlab实现。的每一列代表一个阵列元素的观测信号。表示期望的波束指向,即感兴趣信号的方向。

HackWhisper的博客 1245

掌握LangChain Agent:智能应用构建指南

随着各种开源大模型的发布,越来越多的人开始尝试接触和使用大模型。在感叹大模型带来的惊人表现的同时,也发现一些问题,比如没法查询到最新的信息,有时候问一些数学问题时候,会出现错误答案,还有一些专业领域类问题甚至编造回答等等。有没有什么办法能解决这些问题呢?答案就是LangChain。[LangChain]是一个开源的语言模型集成框架,旨在简化使用大型语言模型(LLM)创建应用程序的过程。

m0_63171455的博客 1325

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

上一篇: 2024年十大开源RAG框架
下一篇: 利用AI大模型,将任何文本语料转化为知识图谱,可本地运行!
AI程序猿人
博客等级 码龄3年 6517粉丝 561原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值