利用AI大语言模型和Langchain开发智能车算法训练知识库(上篇)

news2024/9/21 0:24:41

今天小李哥将介绍亚马逊云科技的Jupyter Notebook机器学习托管服务Amazon SageMaker上,通过AI大语言模型、向量知识库和LangChain Agent,创建用于AI 智能车模型训练的RAG问答知识库。整个项目的架构图如下:

本系列共分为上下两篇。在上篇内容中,我将分享该知识库的GitHub项目开源代码,大家可以自行下载学习和测试使用。并带大家在亚马逊云科技平台的Jupyter Notebook里部署项目搭建该知识库。也欢迎大家继续关注本系列下篇,我们将利用AI生成训练和测试数据集,以及利用Stable Diffusion图像生成模型评估智能车模型性能。

方案所需基础知识

什么是Amazon SageMaker?

Amazon SageMaker 是亚马逊云科技提供的一项全托管机器学习服务,帮助开发者和数据科学家轻松构建、训练和部署机器学习模型。SageMaker 提供了全套的工具和基础设施支持,用户无需管理底层的服务器和环境,即可快速处理从数据准备到模型训练再到部署的完整机器学习流程。

SageMaker 提供了灵活的开发环境,支持多种常用的机器学习框架,如 TensorFlow、PyTorch 等,同时也支持用户自定义的算法和模型。无论是使用预训练模型还是从头开始训练,SageMaker 都能够提供高效的分布式训练能力,并通过自动调优(如超参数优化)提升模型的精度。

关于LangChain?

LangChain Agent 是围绕大语言模型(LLM)作为其核心引擎构建的 AI 系统,可实现超越文本生成的能力。Agent 将 LLM 的自然语言优势与规划、记忆和工具使用等附加组件相结合。规划允许 Agent 将复杂目标分解为可管理的子任务。记忆提供短期的上下文学习和长期知识存储,以便快速检索。工具使用使 Agent 能够通过调用 API、利用搜索引擎、执行代码等来收集信息和采取行动。

精心设计的提示通过编码角色、指令、权限和上下文来塑造 Agent 行为。这使开发人员能够为各种应用程序定制 Agent,如对话助手、工作流自动化、模拟和科学发现。LLM Agent 的主要优势包括自然语言理解、推理和自主任务完成。然而,在有限的上下文大小、不可靠的自然语言接口以及长期规划困难等方面仍然存在挑战。

推理和行动 (ReAct) Agent框架

本实验中使用的 Agent 使用一种称为 ReAct 的技术。ReAct(推理和行动)是一种新的范式,它结合了语言模型在推理和行动能力方面的进步,使它们能够解决复杂的语言推理和决策任务。使用 ReAct,语言模型可以生成推理跟踪来创建、维护和调整高级计划,并采取行动从外部源(如 API 和知识库)中获取额外信息。

ReAct 的主要优点是推理和行动之间的协同作用。推理允许模型推导和更新计划,而行动使收集额外信息以支持推理成为可能。这有助于解决仅推理方法中的幻觉和错误级联等问题。与仅推理和仅行动的基线相比,ReAct 已被证明在多跳问答、事实检查和交互式决策等任务上实现了更优越的性能。

本实践包括的内容

1. 创建运行Jupyter Notebook的计算资源服务器

2. 分享利用AI大语言模型和Langchain构建智能车算法训练知识库的GitHub源代码

3. 在Jupyter Notebook中运行代码创建向量数据库、LangChain Agent,并利用Bedrock上的大语言模型构建RAG知识库,用于智能车模型算法训练相关问题的查询

项目实操步骤

部署云资源

1. 首先我们登录亚马逊云科技控制台,进入Sagemaker服务主页

2. 在左侧菜单栏中点击Notebook, 点击Create Notebook Instances创建计算实例,用于运行Jupyter Notebook服务器

3. 为Instance命名为”DeepRacerLab“,选择实例类型为”ml.t2.medium“,将磁盘容量设置为64GB

4. 为Jupyter Instance分配必要IAM权限,并开启Root Access,这样用户在Jupyter服务器中运行命令时会以root用户权限运行。

 5. 同时我们可以在创建服务器时自动添加Github项目代码,我们如图添加项目url:”https://github.com/jeremypedersen/deepracer-genai“,该项目包括了利用Amazon Bedrock上的大模型和LangChain构建DeepRacer "智能 Agent" 的模型文件和 notebooks

6. 添加完全部参数后,点击”Create notebook instance“创建运行Jupyter Notebook的计算服务器

打开Jupyter Notebook控制台

7. 当刚创建的Notebook实例的状态变为”InService“后,在SageMaker Instance页面中点击“Open JupyterLab”:

 8. 打开后就会在网页中弹出Jupyter Notebook控制台界面

开始运行代码创建知识库

9. 在左侧文件列表中打开文件:”00_deepracer_model_evaluation.ipynb“

 10. 打开文件后,会提示选择运行代码的内核,我们选择 conda_python3

11.  最后按照Jupyter Notebook里的步骤依次运行就可以创建RAG知识库了!

以上就是利用亚马逊云科技AI大语言模型和Langchain开发智能车算法训练知识库上篇内容。欢迎大家关注小李哥的亚马逊云科技AI服务深入调研系列,关注小李哥未来不要错过更多国际前沿的AWS云开发/云架构方案。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2111793.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java中的强引用、软引用、弱引用和虚引用于JVM的垃圾回收机制

参考资料 https://juejin.cn/post/7123853933801373733 在 Java 中,引用类型分为四种:强引用(Strong Reference)、软引用(Soft Reference)、弱引用(Weak Reference)和虚引用&#xf…

5G移动网络运维实验(训)室解决方案

随着第五代移动通信技术(5G)的快速普及和工业互联网的迅猛发展,全球制造业正面临着前所未有的深刻变革。5G技术凭借其超高的传输速率、极低的延迟以及大规模的连接能力,为工业自动化、智能制造等领域带来了革命性的技术支持。为了…

【免费分享】GIS开发面试题(流程+自我介绍+基础篇+Openlayermapbox)

本篇文章针对GIS应届生就业方向及面试困惑问题进行了收集整理,并列出了关于GIS开发面试中常见的问题(含答案)。 “ 包括以下内容 前言 简介 面试之前 面试流程 自我介绍-AI 基础篇 1、GIS八股文基础篇 2、Openlayers图形绘制 3、倾…

2-1 opencv实战进阶系列 阈值编辑器

目录 一、不说废话,先上现象 二、前言 三、方法详解 四、贴出完整代码 一、不说废话,先上现象 二、前言 对图像的处理中,设置合适的掩膜、寻找多边形、颜色追踪等方法都需要预先设置好颜色的上阈值和下阈值,来从原图中分割出…

蔚来发布新财报,亏损收窄,营收同比增长98.9%!

KlipC报道:9月5日,蔚来发布2024年二季度财报,财报显示,营收174.5亿元,同比增长98.9%,环比增长76.1%;交付量5.74万台,同比增长143.9%,环比增长90.9%;营收和交付…

Yolov5实现目标检测——调用官方权重进行检测

本文为为🔗365天深度学习训练营内部文章 原作者:K同学啊 一 安装源码 开源网址:GitHub - ultralytics/yolov5: YOLOv5 🚀 in PyTorch > ONNX > CoreML > TFLite ​ 二 安装所需环境 安装环境依赖包,进入项目…

探索Mem0:下一代人工智能与机器学习内存管理基础设施(二)Mem0+Ollama 部署运行

探索Mem0:下一代人工智能与机器学习内存管理基础设施(二) Mem 0(发音为“mem-zero”)通过智能记忆层增强AI助手和代理,实现个性化的AI交互。Mem 0会记住用户偏好,适应个人需求,并随着时间的推移不断改进,使其成为客户支持聊天机器人,AI助手和自治系统的理想选择。 …

[Mdp] lc198. 打家劫舍(记忆化搜索+dp)

文章目录 1. 题目来源2. 题目解析 1. 题目来源 链接:198. 打家劫舍 前置: [每日一题] 146. 打家劫舍(数组、动态规划、巧妙解法) 2. 题目解析 记忆化搜索可以处理,是自顶向下进行枚举的,属于 递归。 动态规划,属于…

Nuxt3服务端渲染项目简单搭建

目录 1.准备阶段 2.创建项目 3.安装需要的模块 1)安装ArcoDesign/ElementPlus 2)安装tailwindcss 4.目录结构 5.网站TDK设置 本篇文章相关的官方网站: 1.nuxt3:Nuxt 中文站 - 直观的Web框架 Nuxt3文档 Nuxt 2.vue3&#xf…

fpga系列 HDL:Vivado 安装usb cable驱动

安装usb cable驱动 安装cable_drivers:在data\xicom\cable_drivers\nt64\dlc10_win7目录 安装digilent

数据分析-12-多个时间序列数据的时间戳对齐以及不同的方式补点

参考python时间序列数据的对齐和数据库的分批查询 1 问题场景与分析 1.1 场景 在医院的ICU里,须要持续观察病人的各项生命指标。这些指标的采集频率每每是不一样的(例如有些指标隔几秒采集一个,有些几个小时采集一个,有些一天采集一个),并且有些是按期的,有些是不按期的…

SpringMVC基于注解使用:上传下载

01-文件下载 基于servlet api的文件下载 注意一点content-disposition是以文件下载的方式打开意思是客户端地址栏不会改变, 如果注销了那句话就会跳转到下载图片的图片里面去,就在网页中显示了 基于spring ResponseEntity的文件下载 不支持缓冲区 一次…

使用 OpenCV 和 NumPy 进行图像处理:HSV 范围筛选实现PS抠图效果

使用 OpenCV 和 NumPy 进行图像处理:HSV 范围筛选实现PS抠图效果 在计算机视觉和图像处理领域,OpenCV 是一个非常强大的库,能够帮助我们执行各种图像操作。在这篇博客中,我们将通过一个简单的示例演示如何使用 OpenCV 和 NumPy 来…

时序预测|变分模态分解-双向时域卷积-双向门控单元-注意力机制多变量时间序列预测VMD-BiTCN-BiGRU-Attention

时序预测|变分模态分解-双向时域卷积-双向门控单元-注意力机制多变量时间序列预测VMD-BiTCN-BiGRU-Attention 文章目录 一、基本原理1. 变分模态分解(VMD)2. 双向时域卷积(BiTCN)3. 双向门控单元(BiGRU)4. …

基于sklearn的机器学习 — KNN

k-nearest neighbors(KNN)算法是监督机器学习中最简单但最常用的算法之一。 KNN通常被认为是一种惰性的学习算法,从技术上讲,它只是存储训练数据集,而不经历训练阶段。 KNN的原理是将新样本的特征与数据集中现有样本…

设计之道:ORM、DAO、Service与三层架构的规范探索

引言: 实际开发中,遵守一定的开发规范,不仅可以提高开发效率,还可以提高项目的后续维护性以及项目的扩展性;了解一下本博客的项目设计规范,对项目开发很有意义 一、ORM思想 ORM(Object-Relation…

小琳AI课堂:大模型的发展历程:从创新到挑战

大家好,这里是小琳AI课堂。今天我们来聊聊大模型的发展历程,这是一段充满创新与挑战的故事。🚀 让我们追溯到20世纪50年代,那时计算机科学和人工智能还处于萌芽阶段。 早期探索(1950s-1970s) 早期探索是大…

网络安全应急响应技术原理与应用

网络安全应急响应概述 概念 为应对网络安全事件,相关人员或组织机构对网络安全事件进行监测、预警、分析、响应和恢复等工作 网络安全应急响应组织建立与工作机制 网络安全应急响应预案内容与类型 常见网络安全应急事件场景与处理流程 应急演练:对假定…

iOS——APP启动流程

APP启动 APP启动主要分为两个阶段:pre-main和main之后,而APP的启动优化也主要是在这两个阶段进行的。 main之后的优化:1. 减少不必要的任务,2.必要的任务延迟执行,例如放在控制器界面等等。 APP启动的大致过程&#…

腾讯云 Spring Boot 安装 SSL 证书

linux和windows下,因为有ngxin,所以安装ssl证书都感觉比较容易,毕竟通过代理方式能够胜任大多数的https安全问题。 但是有些情况下,ngxin可能无法安装什么的,可能需要在spring boot下直接安装ssl,咋办&…