大模型部署搭建:如何速成RAG+Agent框架大模型应用搭建

大模型训练部署利器--开源分布式计算框架Ray原理介绍 本文介绍了分布式计算框架Ray的原理。 阅读详情


本文侧重于能力总结和实操搭建部分,从大模型应用的多个原子能力实现出发,到最终串联搭建一个RAG+Agent架构的大模型应用。

一、概况

目前有关大模型的定义与算法介绍的文章已经很多,本文侧重于能力总结和实操搭建部分,从大模型应用的多个原子能力实现出发,到最终串联搭建一个RAG+Agent架构的大模型应用,让个人对于大模型应用如何落地更加具有体感。

二、大模型发展现状

目前大模型发展笼统的可以分为两个部分,自然语言处理大模型(Qwen语言系列等)和多模态大模型,同时多模态大模型又分为多模态理解(Qwen-VL、Qwen-Audio等)和多模态生成(万相、EMO等)。

自然语言处理

在自然语言处理领域,短短的2个月内,大家已经看到了价格的急剧下降,这是得益诸如OpenAI的ChatGPT系列、Llama、通义、GLM等标志性大模型的发布和应用,也代表着这个技术在算法和模型层面上的进入了成熟的新阶段。这些自然语言处理大模型凭借其庞大的参数量和在海量数据上的训练,展现出了令人惊叹的语言理解和生成能力,除了原始的文本生成、机器翻译、情感分析和自动问答等基础功能,还衍生出了以检索增强生成和Agent搭建为背景的特定领域功能,比如客服质检、风控辅助、智能投研等。它们不仅大幅提高了交互的自然度和效率,还促进了诸如智能客服、内容创作、教育辅助工具等多种产品的创新与升级,实现了技术和业务需求的融合。

多模态

相比之下,多模态技术,尤其涉及视觉、听觉与文本等多种感官信息融合的多模态大模型,在Sora推出之后收到了广泛的关注,并且已经应用在一些客服、座舱、营销等领域。在GPT-4o发出后,端到端的多模态理解与生成模型也成为了每个公司所希望打造的模型之一。目前大多数对于多模态的应用还集中于原子能力的使用,比如图像描述生成、视频内容理解和生成等,与业务紧密结合的最佳实践还没有形成完整的体系,如何落地端到端的自然语言处理和多模态应用仍然在尝试和共创的过程中。

本文主要介绍自然语言处理模型如何在业务场景中进行落地,将模型价值转化为生产力价值。

三、原子能力概括

目前基于百炼平台、灵积平台和dashscope sdk等功能,非算法工程师和技术人员也可以学习并构建自己的大模型应用。总结多个产品和功能后,排除百炼本身单个功能(比如模型测试、模型微调等)外,目前的原子能力可以分为以下几个部分:

1、RAG

目前RAG的实现方式有两种:

  • 第一种通过百炼白屏化的方式,通过一下步骤快速搭建一个RAG应用:1、数据管理-导入数据;2、数据应用-知识索引-创建知识库;3、模型应用-新建应用-开通知识检索增强。

然后可以通过调用应用API的方式将应用集成在工程项目中:

此外,也支持llama-index集成百炼进行搭建,参考链接为:

https://help.aliyun.com/zh/model-studio/developer-reference/build-rag-applications-based-on-llamaindex

相对于白屏化操作来说,这种方式的优点是,通过每个步骤对应一个函数的拆分,可以控制每个步骤之间的输入输出,用户可以自定义的编写对于中间数据的数据操作,或者是做一些安全检测、安全防控类的任务。

  • 第二种为本地Llama-index:如果有一些敏感信息,希望无论是对于模型还是文件,都全部以本地的形式搭建本地RAG平台,那么可以尝试使用llama-index框架,从文件导入开始,从0到1搭建RAG流程,在这里不做赘述,可以参考下面类似的优快云文章。

    https://blog.youkuaiyun.com/qq_23953717/article/details/136553084

  • 注意项:

  • 影响模型应用的好坏的重要标志是PE工程,大模型无法读取用户的思维。如果输出太长,请要求大模型简洁回复。如果输出太简单,请要求专家级的扩写。如果大模型输出不符合要求的格式,请给大模型演示自己希望看到的格式。模型需要猜测用户的意图越少,用户获得所需结果的可能性就越大。

  • prompt策略:在OpenAI的材料中,对于prompt的建议有以下几个部分 1)在查询中包含详细信息以获得更相关的答案;2)要求模型采用某种角色扮演;3)使用定界符清楚地指示输入的不同部分;4)指定完成任务所需的步骤;5)提供示例;6)指定输出的期望长度

  • 百炼prompt最佳实践:

    https://help.aliyun.com/zh/model-studio/use-cases/prompt-best-practices

2、Function call

Function call需要解决的问题就是将LLM的能力从单纯NLP类问答转化为一个个执行单元,将模型输出的语言对应到可以执行特定任务的函数或插件。

目前Function call功能在百炼产品文档中已经形成两个非常详细的最佳实践文档:

  • 基于Assistant API的旅游助手:

    https://help.aliyun.com/zh/model-studio/user-guide/assistant-api-based-travel-assistant

  • 本地Function call的使用:

    https://help.aliyun.com/zh/model-studio/user-guide/use-local-functions

相对于code_interpreter,search这种已经封装好的插件,对于用户自定义的任务来说,我们实现自己的Function call能力,主要分成三个步骤:

1)步骤一:tools中function的定义,目的是为了定义每个插件的作用,需要传入的参数的定义;

{`                `'type': 'function',`                `'function': {`                    `'name': '获取目的地建议',`                    `'description': '用于推荐最近热门的旅游目的地。',`                    `'parameters': {`                        `'type': 'object',`                        `'properties': {`                            `'query': {`                                `'type': 'str',`                                `'description': '可能需要的信息'`                            `},`                        `},`                        `'required': ['query']`                    `}`                `}`            `},

2)步骤二:function_mapper,定义每个function对应的调用函数名;

function_mapper = {`    `"天气查询": get_weather,`    `"路径规划": get_path_recommendation,`    `"获取目的地建议": get_destination_recommendation,`    `"获取景点推荐": get_attraction_recommendation,`    `"获取餐饮推荐": get_dining_recommendation,`    `"获取旅行提示": get_life_tips,`    `"获取当地风俗": get_local_customs,``}

3)步骤三:实现函数,保持输入参数和输出的正确性。

3、ASR+TTS

ASR(语音转文字)和TTS(文字转语音)本身已经是成熟的功能,在与大模型的结合中衍生出了新的产品和范式,比如通义听悟产品,在ASR的基础上增加了角色识别、文本翻译、章节提取、摘要生成等等功能,甚至是后面会做到的语音特征提取、情绪识别等新功能。ASR中的比较先进模型为paraformer,TTS中的先进模型举例为sambert(声音克隆功能),目前提供的代码链接如下:

Paraformer实时语音转文字:

https://help.aliyun.com/zh/dashscope/developer-reference/quick-start-7

听悟离线转文字:

https://help.aliyun.com/zh/tingwu/offline-transcribe-of-audio-and-video-files

实时部分目前有完整JavaSDK工程。

Sambert调用页面:https://dashscope.console.aliyun.com/model

请注意:

1、 paraformer 本身代码没有设置 stop 逻辑,所以需要设置一个时长,或者是通过 result.is_sentense_end() 来判断语句是否结束;

2、本身原子能力是成熟的,但是目前模型对于打断效果支持效果还不好,如果出现打断,输出text会断开并重新生成,准确度方面需要在上层进行工程优化。

4、意图识别

目前的多轮对话使用prompt来实现,在prompt中可以标注本应用是一个意图识别的AI应用,并且在定义中表明类别有几类,每一类的任务分别是什么。

如果类别比较少,可以像下面这么写:

# 角色``你是一个精准的意图识别系统,专门负责将接收到的指令归类为三大任务类型,并严格依据指令内容输出对应的任务标签数字(1, 2, 或 3)。``   ``## 技能``### 技能1: ****问答任务``- **任务定义**:```- **输出标签**:遇到此类指令,输出数字 `1`。```- **示例**:``   ``### 技能2: ****任务``- **任务定义**:```- **输出标签**:对此类指令,输出数字 `2`。```- **示例**:``   ``### 技能3: ****执行任务``- **任务定义**:```- **输出标签**:面对这类指令,输出数字 `3`。```- **示例**:

并且在限制中定义好输出的格式,比如定义如下输出格式:

## 限制``- 输出格式严格定义为: “意图标签:标签数字”的格式

则返回的结果为:

如果类别比较多,可以直接使用Key:Value的形式,形成一个意图文档,把文档当作prompt,每次输入为意图识别的要求+意图识别文档库,返回意图标签。

5、多轮对话能力

我们在白屏化页面上(比如百炼和通义官网)直接使用基模的原子能力时,是内置了多轮对话能力。但是在调用SDK时,因为代码默认一个用户创建一个线程(thread),而每一轮的用户输入query的时候,thread都会初始化一次然后存入当前的message。简而言之就是每次问答,大模型的消息队列中只包含新的message信息,而不包含过去的messages信息。

我们来看一下下面简单的多轮对话实现方式,可以看到多轮对话的理论就是将之前对话的role(usr、system)和message,append到长期维护的messages队列中,然后再把整个messages队列输入到大模型中:

因此在assistant实现多轮对话中,最简单的方法就是在创建线程并把信息输入给assistant之前,把每一轮的role和输出/输出保存成一个队列,然后再发送给assistant,以下代码供参考:

message_objs = []``for j in msgs['data']: #msgs为上一轮的output`   `role = j['role']`   `content = j['content'][0]['text']['value']`   `message_objs.append({`        `"role": role,`        `"content": content`            `})

最终出来的结果可以看到一下的截图,当我的第二个问题“我刚才让你干了什么?”输出的时候,队列中已经包含了之前第一轮input和output的信息:

四、搭建示例

我们以产品架构师角度,搭建一个支持语音输入输出,并且具有开通资源和回答技术文档能力的AI助手。通过对于功能的分析,并且对应到以上的原子能力,我们的大模型应用首先要解决两个事情:问答功能和开通资源的功能。

如何通过RAG实现面向架构师的技术问答助手呢?

步骤描述

此步骤较为简单,不做概述,大家可以看百炼的最佳实践,一般分为四个步骤:

1)知识库导入、解析和切分

2)prompt的书写,调优

3)知识库的挂载、插件挂载

4)根据测试问题开始进行调试

如何减少大模型幻觉

要注意,幻觉是不可避免的,有时候prompt的语料“打”不过模型本身的泛化能力,模型会自信的根据自己的能力自说自话。比如提出这样的一个问题“paimon是什么?”,由于paimon本身是一个比较新的湖格式,并且即使制定了大模型搜索大数据相关的知识,大模型有时候也没有链接到湖格式的逻辑思维,所以会出现以下的情况:

那么如何让回答变成我们所预想的专业的回复呢?在我的尝试中,比较简单的步骤分别为:1)尝试更大的模型;2)prompt调优;3)对应的文档挂载;

1)尝试更大的模型:

一般来说,如果发现一个模型在某项任务上失败了,并且有一个更强大的模型可用,那么值得尝试使用更强大的模型再次尝试。在这里由于我已经使用了max模型,所以在此处可以忽略。

2)prompt调优:

a)角色定义清晰:prompt中需要清晰的让大模型知道自己的定位和精通并专注的内容,比如在角色定义中写明:

# 角色``你作为阿里云高级解决方案架构师的智能助手,精通大数据、数据库、分布式计算等核心云计算领域,掌握apache、oracle等大型云计算IT公司的全部技术栈,以严谨专注的态度,辅以亲切的交流方式,结合知识库${documents}和夸克搜索等插件,提供给云计算架构师对于云计算和云产品的专业指导。

b)提供示例:对于一些复杂的问题,可以给大模型提供示例,并且让他有一定的思考时间。比如:“请在回答AC大小问题时,通过分析A大于B,B大于C的情况,得出最终结论。”

c)限制描述:在限制中明确回答问题的领域、回答的长短、回答中禁止出现的词汇、回答中的来源等信息,会非常快速的帮助大模型进行回答的调优,诸如以下示例:

i)但是请注意,这种限制性的描述对于特定的问题可能会产生非常精准的效果,但是有可能会影响到整个大模型应用的泛化性,所以还要多多尝试和调整,达成最终应用层面的precision-generalization tradeoff。

## 限制与风格``- 回答需严格限制在于云计算、数据库、大数据及分布式计算等计算机技术领域。``- 回答不要涉及任何游戏、娱乐等领域的词汇和课题,``- 当回答出现不清楚字样的时候,一定要使用夸克搜索插件,返回最相关的回复。``- 交流风格亲切友好,即使面对复杂技术问题也能以易于理解的方式解答。``- 确保所有检索内容均来源于可靠渠道,优先考虑阿里云等云厂商的官方资源,维护回答的准确性和时效性。

3)对应的文档挂载:

文档挂载这类外部信息辅助的问答,是最快最有效解决大模型对于一类特定领域或者名词进行“胡说八道“的问题,当我们将Paimon的产品文档链接以外部知识库的形式挂载时,大模型回答问题显而易见的精准了很多:

如何自己写一个开通ECS的Agent呢?

在实现Agent搭建的时候,function call是一个非常简单而且有用的方式,通过自定义的function,让大模型根据输入的query来匹配是否需要调用函数和调用哪个函数。当然,我们也可以让大模型自动生成开通ecs的代码,并且调用code_interpreter(代码解释器插件)来进行运行,甚至可以指定它来进行自主的调优,但是这就是一个具有多个step的复杂问题,其中有诸多挑战,比如:需要明确的规划好这些步骤的操作内容、操作顺序、环境配置才能让模型更容易遵循;中间结果也不一定可以人为的进行控制;并且AK、SK和ECS的各种参数匹配与输入又是另一个工程性问题,所以在此篇文章中我们不予考虑。下面将介绍如何使用function call构建一个非常简单的开通资源的Agent,分为五个步骤:

步骤描述
  • step1: 写好应用的description和instruction,目的是让大模型知道自己的定位和功能。并且由于要调用插件调用插件,需要制定当实现某些功能时,调用何种插件,比如:“请给我开通一台北京的ecs”这句话,属于“开通ecs”这个函数:
description='一个阿里云架构师AI助手,可以通过用户诉求,通过调用插件帮助用户创建ecs、vpc等云资源。',`        `instructions='一个阿里云架构师AI助手,可以通过调用插件解决开通资源等问题。插件例如,开通ecs,开通vpc,判断地域等等,当你无法回答问题时应当结合插件回复进行回答。请根据插件结果适当丰富回复内容。'`        `'当有需求开一台ecs的时候,请一定要调用开通ecs这个插件'`        `'当有需求开一个vpc的时候,请一定调用开通vpc插件',
  • step2: 定义tools中的function,我们以定义开通ecs的function来举例,此function作用是用来开通ecs,所以在description中必须写明该插件是用户开通ecs的插件:

**请注意:**最好写Default,比如若用户输入的query中不包含地域信息,那么请给出默认一个地域,防止参数为空导致的一系列报错问题,例如:“如果输入中没有地域,则默认region=cn-beijing”

{`            `'type': 'function',`            `'function': {`                `'name': '开通ecs',`                `'description': '用于开一台ecs的插件和函数,例如:请给我开一台北京的ecs,则region=cn-beijing;请给我开一台上海的ecs,则region=cn-shanghai。如果输入中没有地域,则默认region=cn-beijing',`                `'parameters': {`                    `--------`                    `},`                    `'required': ['']`                `}`            `}`        `},
  • Step3:定义function的参数,比如开通ecs之前,需要得知用户想要开通ecs的地域信息,并且把地域信息转换成代码能够识别的参数,例如:首先从“给我开一台北京的ecs”中解析出 “北京” 这个地域信息,然后根据description中的描述,大模型将“北京”转换为cn-beijing,最后的region_ecs为‘cn-beijing’。

请注意:

1、required 这个部分如果含有参数,那么region_ecs就不能为空,或者是region_ecs的参数必须符合自定义的参数类型。如果required=[‘’],则region_ecs为空也没事,只要后面的函数可以接受region_ecs为空;

2、参数名称(region_ecs)必须和后面调用函数的参数名一模一样。

'parameters': {`                    `'type': 'object',`                    `'properties': {`                         `'region_ecs': {`                                `'type': 'string',`                                `'description': 'ecs开通的地域,并且需要转化为‘cn’加上地域拼音的形式,比如北京对应cn-beijing,杭州对应cn-hangzhou'`                            `},`                    `},`                    `'required': ['region_ecs']
  • Step4: 将定义的function与大模型实际调用的函数匹配,function_mapper很好理解:
function_mapper = {`    `"开通vpc": create_vpc_function,`    `"判断地域": judge_region_exist,`    `"开通ecs": create_instance_action,``}
  • Step5: 调用create_instance_action函数,把region_ecs传进去,并且调通整条链路,示例如下,本部分可以参考ecs文档的开发sdk内容进行改写:

**请注意:**需要有返回值,返回值类型为string,最好返回的内容可以被大模型理解,这样大模型可以根据返回的信息进行润色。比如该例子中,返回:“success”这句话,大模型回复“已成功为您开通一台位于北京的ecs”。

def create_instance_action(region_ecs):`    `print("function调用测试成功,region-id为:",region_ecs)`    `IMAGE_ID, INSTANCE_TYPE, SECURITY_GROUP_ID, VSWITCH_ID = get_config(region_ecs)`    `instance_id = create_after_pay_instance(IMAGE_ID, INSTANCE_TYPE, SECURITY_GROUP_ID, VSWITCH_ID,region_ecs)`    `check_instance_running(instance_id,region_ecs)`    `return "success"
后续思考问题
  • 如何支持开多台ecs?新参数amount写入。

  • 如何支持多个region的ecs?工程问题,笨方法,对region_ecs做一个if else。

  • 如何操作一些更为复杂的函数,比如在已知查询价格接口的基础上,如何实现实时查询一Cascade CPU架构的n核nG ECS包年包月/按量付费的价格?

应用集成

在了解原子能力和一些功能搭建之后,面对一个复杂一些的场景,通常不仅仅是选取单个模型,或者仅仅完成部分功能,那么就需要根据业务情况以大小模型、RAG+Agent的方式构建一个多智能体应用。这里介绍两种集成方式:意图识别链接多个模型的方式和Aassistant API集成function和RAG。

1.意图识别

意图识别的本质是实现大小模型的结合,通过意图识别后的tag,分别调用不同的模型、APP和assistant,可以控制不同部分的模型的大小和实现的功能,让每条链路都更加精准化。比如我们可以将问题的分类分为以下几个部分,分别使用不同大小的模型,挂载不同的知识库来覆盖所有的功能:

拓展来说,我们甚至可以将意图树做的更深,如果场景足够的复杂,那么意图识别也可以是多层的,像一个树一样,每个分支都定义更加精细化的意图知识库。

2.Assistant-API集成

目前,基于dashscope搭建的assistant已经可以将rag和function call等插件集成到一个模型中:

  • 首先,最重要的步骤是在toos中定义一个名字叫做“rag”的“type”,并且将百炼平台的知识库id写入到YOUR_PIPELINE_ID中。

  • 其次,类似我们实现function call的功能,我们需要在description中指明,回答何种问题需要使用名叫“rag”的插件。这样在匹配到类似的问题的时候,assistant可以调用“rag”插件,在文档${document1}中做搜索倒排之后,返回TopN信息,然后输入大模型进行整合:

tools=[`        `{`            `"type": "fucntion"{`                        `}`        `},`        `{`            `"type": "rag",`            `"prompt_ra": {`                `"pipeline_id": "YOUR_PIPELINE_ID",`                `"parameters": {`                    `"type": "object",`                    `"properties": {`                        `"query_word": {`                            `"type": "str",`                            `"value": "${document1}"`                        `}``   `                    `}`                `}`            `}`        `}]

最终使用多个原子能力构建整个完整的端到端链路。

五、后记

目前大模型的原子能力和API、SDK的更新非常的频繁,也越来越完善,通过一次或者两次的动手搭建,可以让我们知道如何利用这些能力,像“积木”一样,结合自己本身业务或者功能的逻辑,搭建一个完整的大模型“城堡”。

RDS MySQL 迁移至 PolarDB MySQL

通过本方案,RDS MySQL的数据可在线实时同步到PolarDB MySQL版,并且升级切换后的PolarDB集群包含源RDS实例的账号信息、数据库、IP白名单和必要的参数。这样可实现不修改应用代码的情况下,将RDS MySQL数据库迁移升级至PolarDB MySQL版。

如何系统的去学习大模型LLM ?

大模型时代,火爆出圈的LLM大模型让程序员们开始重新评估自己的本领。 “AI会取代那些行业?”“谁的饭碗又将不保了?”等问题热议不断。

事实上,抢你饭碗的不是AI,而是会利用AI的人。

继科大讯飞、阿里、华为等巨头公司发布AI产品后,很多中小企业也陆续进场!超高年薪,挖掘AI大模型人才! 如今大厂老板们,也更倾向于会AI的人,普通程序员,还有应对的机会吗?

与其焦虑……

不如成为「掌握AI工具的技术人」,毕竟AI时代,谁先尝试,谁就能占得先机!

但是LLM相关的内容很多,现在网上的老课程老教材关于LLM又太少。所以现在小白入门就只能靠自学,学习成本和门槛很高。

针对所有自学遇到困难的同学们,我帮大家系统梳理大模型学习脉络,将这份 LLM大模型资料 分享出来:包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

👉优快云大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击)👈

​

一、LLM大模型经典书籍

AI大模型已经成为了当今科技领域的一大热点,那以下这些大模型书籍就是非常不错的学习资源。

在这里插入图片描述

二、640套LLM大模型报告合集

这套包含640份报告的合集,涵盖了大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(几乎涵盖所有行业)

在这里插入图片描述

三、LLM大模型系列视频教程

在这里插入图片描述

四、LLM大模型开源教程(LLaLA/Meta/chatglm/chatgpt)

在这里插入图片描述

LLM大模型学习路线 ↓

阶段1:AI大模型时代的基础理解

  • 目标:了解AI大模型的基本概念、发展历程和核心原理。

  • 内容:

    • L1.1 人工智能简述与大模型起源
    • L1.2 大模型与通用人工智能
    • L1.3 GPT模型的发展历程
    • L1.4 模型工程
    • L1.4.1 知识大模型
    • L1.4.2 生产大模型
    • L1.4.3 模型工程方法论
    • L1.4.4 模型工程实践
    • L1.5 GPT应用案例

阶段2:AI大模型API应用开发工程

  • 目标:掌握AI大模型API的使用和开发,以及相关的编程技能。

  • 内容:

    • L2.1 API接口
    • L2.1.1 OpenAI API接口
    • L2.1.2 Python接口接入
    • L2.1.3 BOT工具类框架
    • L2.1.4 代码示例
    • L2.2 Prompt框架
    • L2.3 流水线工程
    • L2.4 总结与展望

阶段3:AI大模型应用架构实践

  • 目标:深入理解AI大模型的应用架构,并能够进行私有化部署。

  • 内容:

    • L3.1 Agent模型框架
    • L3.2 MetaGPT
    • L3.3 ChatGLM
    • L3.4 LLAMA
    • L3.5 其他大模型介绍

阶段4:AI大模型私有化部署

  • 目标:掌握多种AI大模型的私有化部署,包括多模态和特定领域模型。

  • 内容:

    • L4.1 模型私有化部署概述
    • L4.2 模型私有化部署的关键技术
    • L4.3 模型私有化部署的实施步骤
    • L4.4 模型私有化部署的应用场景

这份 LLM大模型资料 包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

👉优快云大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击)👈

​

大模型部署框架 FastLLM 简要解析 FastLLM支持X86/Arm/CUDA 3种架构的硬件,也就是说它的算子分别考虑了这几个架构的优化。此外,FastLLM除了支持FP32/FP16/BF16之外还支持INT8/INT4量化计算。所以FastLLM的优化就是在不同的平台上为不同的Bit数的数据实现Kernel,并且使用硬件特有的指令集来进行加速比如AVX2,Neon Instrics。在CUDA实现上,FastLLM并没有采用kernel fuse的方式进行进一步加速,这里的优化空间还是比较大的。 阅读详情

相关推荐

2026大模型工程师七周速成:从零掌握Agent、RAG到部署全栈技能

大语言模型作为人工智能的核心技术,基于Transformer架构实现自然语言理解与生成。其原理是通过预训练海量文本数据获得通用能力,再通过微调适配特定任务。在工程实践中,检索增强生成(RAG)技术通过结合外部知识库解决大模型幻觉问题,而智能体(Agent)框架则赋予模型工具使用和复杂推理能力。这些技术的价值在于将大模型从对话工具升级为可执行实际任务的AI系统,广泛应用于智能客服、知识管理、内容创作等场景。本文基于行业热词Agent开发和大模型微调,系统介绍零基础开发者如何通过七周学习掌握大模型应用开发全流程

weixin_29052717的博客 316

GraphRAG + Ollama 本地部署全攻略:避坑实战指南

1微软开源 GraphRAG 后,热度越来越高,目前 GraphRAG 只支持 OpenAI 的闭源大模型,导致部署后使用范围大大受限,本文通过 GraphRAG 源码的修改,来支持更广泛的 Embedding 模型和开源大模型,从而使得 GraphRAG 的更容易上手使用。2需要 Python 3.10-3.12 环境。安装完整后,需要创建一个文件夹,用来存储你的知识数据,目前 GraphRAG 只支持 txt 和 csv 格式。首先,我们需要运行以下命令来初始化。

bagell的博客 1675

大模型应用开发实战:RAG与Agent技术栈七日速成指南

检索增强生成(RAG)和智能体(Agent)是当前构建实用AI应用的两大核心技术。RAG通过将外部知识库与大型语言模型结合,有效解决了模型幻觉和知识更新问题,其原理涉及文档切分、向量化、相似度检索和提示词工程。Agent则基于ReAct等框架,赋予大模型规划、决策和工具调用的能力,实现复杂任务的自动化执行。这些技术为开发者提供了高效构建智能问答、自动化流程等应用的工程化方案。本文以一套热门教程为切入点,系统拆解了从环境搭建、工具链使用到RAG系统构建、Agent开发及低代码平台集成的完整学习路径,并提供了可

weixin_33866037的博客 586

汇总!7种大模型的部署方法!

选择部署框架的关键在于任务需求。只有根据实际需求来确定合适的框架,才能确保项目的顺利推进和成功实现。因此,在选择部署框架时,我们应该深入了解框架的特性、优缺点以及适用场景,综合考虑项目规模、技术栈、资源等因素,从而选择最适合的框架来支撑项目的实施。这样不仅可以提高开发效率,还能降低项目风险,确保项目的顺利推进和最终成功。

python1222_的博客 6855

快速构建RAG+Agent智能应用:从零到一的实战指南

检索增强生成(RAG)与智能体(Agent)是当前构建企业级AI应用的两大核心技术范式。RAG通过结合外部知识库检索与大语言模型生成,有效缓解了模型的“幻觉”问题,确保了回答的准确性与时效性。智能体则赋予模型自主规划与使用工具的能力,使其能够执行复杂任务。从技术原理上看,RAG的核心在于将非结构化文档通过文本分割、向量化嵌入,并利用向量数据库进行相似性检索;而智能体则基于ReAct等框架,实现推理与行动的循环。在工程实践中,开发者常面临检索精度、工具调用准确性和幻觉控制等挑战。本文聚焦于如何利用LangCh

weixin_30411819的博客 498

大模型应用开发实战:从RAG到Agent的工程化学习路径

大语言模型(LLM)作为人工智能的核心技术,通过API调用将通用能力转化为可编程接口,实现了从单次对话到系统化工具的转变。其技术原理基于Transformer架构,通过预训练与微调掌握语言规律,而工程价值在于将模型能力与业务需求结合,构建可靠、可控的智能应用。在应用场景上,检索增强生成(RAG)通过向量化检索解决领域知识缺失问题,智能体(Agent)则通过任务分解实现复杂流程自动化。本文聚焦大模型应用开发,针对开发者常遇到的RAG效果优化、Agent架构设计等工程实践难点,提供从知识体系构建到项目落地的系统

weixin_33901926的博客 383

如何速成RAG+Agent框架大模型应用搭建?看完这一篇你就会了!!!

本文侧重于能力总结和实操搭建部分,从大模型应用的多个原子能力实现出发,到最终串联搭建一个RAG+Agent架构的大模型应用。

Android23333的博客 678

AI大模型应用开发实战:从LangChain、RAG到Agent的完整指南

大语言模型作为人工智能的核心技术,通过深度学习实现自然语言的理解与生成。其原理基于Transformer架构,通过自注意力机制捕捉文本语义关系。在工程实践中,LangChain框架将大模型能力模块化,提供Chain、Agent等抽象简化开发流程。RAG技术通过检索增强生成机制,结合外部知识库提升回答准确性,特别适合企业知识库和文档问答场景。Agent技术则赋予大模型使用工具的能力,实现复杂任务自动化。这些技术的组合应用为智能客服、知识管理、自动化办公等场景提供了完整的解决方案,本文基于实际项目经验,提供从基

weixin_29081163的博客 358

大模型应用开发3个月速成指南:从入门到实战,掌握LangChain/RAG/Agent核心技能!

大模型应用开发成为AI时代高薪岗位,市场需求激增300%。本文提供3个月速成路线:第1月掌握基础开发技能,第2月深入学习RAG和Agent系统,第3月实战项目与面试准备。核心内容包括LangChain框架、向量数据库等技术栈,以及真实转型案例(薪资25K→45K)。学习资源涵盖官方文档、视频课程和开源社区。建议立即行动,通过每日编码和项目实践快速入行,抓住AI技术落地的黄金机遇。

2301_80239908的博客 1281

大模型工程师七周速成:从Prompt工程到RAG与Agent系统实战

大语言模型作为人工智能的核心技术,通过预训练海量数据获得通用语言理解能力。其工作原理基于Transformer架构,通过自注意力机制捕捉文本语义关系。在工程实践中,Prompt工程成为与大模型交互的关键技术,通过精心设计的提示词引导模型生成精准结果。RAG技术则解决了模型知识时效性和领域专精问题,通过检索增强生成提升回答准确性。这些技术的价值在于降低AI应用开发门槛,让开发者能够快速构建智能问答、文档分析等实用系统。应用场景涵盖企业知识管理、智能客服、技术文档助手等多个领域。本文基于Agent和RAG等热词

weixin_27064205的博客 307

大模型应用开发实战:从RAG到Agent的完整学习路径与环境搭建指南

大模型应用开发已成为当前人工智能领域的热点,其核心在于将大型语言模型与具体业务场景结合,实现智能化应用。从技术原理上看,这通常涉及检索增强生成和智能体两大关键技术范式。检索增强生成通过将用户查询与知识库进行语义匹配,为模型提供精准的上下文信息,从而提升回答的准确性和专业性;智能体则赋予模型规划和执行能力,使其能够调用工具完成复杂任务序列。这些技术的工程价值在于能够构建出具备领域知识、可执行多步骤任务的实用系统,广泛应用于智能客服、知识问答、自动化流程等场景。要掌握这些实战技能,需要系统学习从环境搭建、模型调

weixin_32487557的博客 341

大模型工程师七周速成:从RAG、Agent到微调部署实战

检索增强生成(RAG)和智能体(Agent)是当前大模型应用落地的两大核心技术。RAG通过检索外部知识库增强模型回答能力,解决了通用大模型无法访问私有数据的问题;而Agent则赋予大模型执行多步骤任务的能力,通过工具调用实现复杂业务流程自动化。这些技术让大模型从单纯的对话工具升级为可落地的生产力系统,在知识管理、智能客服、数据分析等场景展现巨大价值。本文基于七周学习路线,系统讲解如何从环境搭建开始,逐步掌握RAG系统构建、Agent任务编排、模型微调优化和部署上线的完整技能链,帮助开发者快速具备大模型工程化

weixin_29064103的博客 286

零基础转行AI大模型:从Python入门到RAG应用开发实战指南

机器学习作为人工智能的核心分支,其原理是通过算法让计算机从数据中学习规律,而深度学习则利用神经网络模拟人脑处理复杂模式。这一技术价值在于能够自动化解决分类、预测、生成等任务,显著提升效率与智能化水平。在应用场景上,机器学习已广泛应用于推荐系统、自然语言处理和计算机视觉等领域。随着大模型技术的突破,基于Transformer架构的模型展现出强大的理解和生成能力,使得构建智能应用的门槛降低。其中,提示词工程(Prompt Engineering)成为引导模型产出的关键技能,而检索增强生成(RAG)技术则通过结合

weixin_34146805的博客 440

2026大模型实战生存地图:RAG+Agent协同开发指南

大模型(LLM)已从理论研究迈入工程落地阶段,其核心能力依赖Transformer架构的底层支撑,并通过RAG增强知识时效性、通过Agent实现任务自动化。理解这四者间的协同关系——即Transformer为基座、LLM为载体、RAG为知识扩展、Agent为执行中枢——是构建可交付AI应用的关键。当前技术拐点在于推理服务化、Agentic RAG兴起与微调平民化,开发者需聚焦‘能动手→能讲清→能创新’三级能力跃迁。本文围绕RAG与Agent双栈实践,提供零依赖启动、原理穿透与生产部署的全链路方案,覆盖Oll

weixin_33761747的博客 289

【信息科学与工程学】【人工智能】【异构计算】大模型部署整体架构

大模型部署的整体架构是一个多层次、软硬件协同的系统工程,旨在解决模型规模庞大、计算资源密集、延迟敏感等挑战。

weixin_49199313的博客 1766

全桥LLC谐振变换器变频控制工作原理与仿真

全桥LLC谐振变换器以其效率高、全范围软开关、器件电应力小等优点,越来越多地应用于大功率场合。电力电子技术的发展日益追求高频化,所带来的问题是半导体开关器件高频运行时的开关损耗急剧增加。各种软开关电路随之出现。可以有效减小开关损耗,使进一步提高开关频率成为可能。谐振式开关因其可在电流自然过零点开通半导体器件,实现零电压开关,特别适合采用MOSFET作开关的装置。最简单的谐振电路有串联谐振(SRC)和并联谐振(PRC)。SRC只能工作于降压状态,应用受限;

晞子的技术札记 3074

大模型应用开发实战指南:从Agent、RAG到微调与部署

大语言模型(LLM)作为人工智能领域的核心技术,其工作原理基于海量数据预训练,通过Transformer架构捕捉复杂的语言模式。这项技术的核心价值在于能够理解和生成类人文本,极大地提升了人机交互的智能水平。在实际应用中,为了克服模型幻觉和知识局限,检索增强生成(RAG)技术应运而生,它通过结合外部知识库来提升回答的准确性和时效性。同时,为了让模型更好地适应特定垂直领域,参数高效微调技术(如LoRA)成为关键,它能在少量数据下高效调整模型行为。这些技术共同构成了构建企业级智能应用(如智能客服、知识库问答系统)

weixin_33402252的博客 395

Nordic开发者必备:SEGGER Embedded Studio免费许可证申请与配置全攻略

本文为Nordic芯片开发者提供了SEGGER Embedded Studio(SES)集成开发环境的详细配置指南。内容涵盖免费许可证的合规申请流程、项目创建、Nordic SDK集成,以及编辑器优化、构建调试配置、RTT日志输出等核心功能的高效设置,旨在帮助开发者构建深度优化的专业开发环境,显著提升嵌入式开发效率。

cheese的博客 353

20天速成 AI 应用开发工程师:从大模型 API 到 RAG、Agent、MCP 与生产部署

过去几年,如果你问一个程序员:AI 开发工程师主要做什么?很多人的第一反应可能还是:机器学习、深度学习、TensorFlow、PyTorch、模型训练、Transformer、CUDA……这些当然属于 AI。很多第一次接触这个方向的人会有一个疑问:AI应用开发工程师是不是就是调用一下ChatGPT API?不是。调用 API 只是整个体系最开始的一步。模型调用Prompt设计上下文管理多轮对话Streaming结构化输出知识库Embedding向量数据库RAG。

weixin_75169399的博客 176

串口调试神器诞生记:我是如何用Cursor+AI自动生成C#上位机的(含VSCode插件清单)

本文详细介绍了如何利用Cursor和AI技术快速开发C#上位机程序,实现高效的串口通讯调试。从开发环境搭建到代码自动生成,再到性能优化和功能增强,全面展示了AI辅助开发在串口调试中的实际应用和显著效率提升。

weixin_28340315的博客 301

RADIOML 2018.01A调制信号数据集介绍及处理

RadioML 2018.01A 由 DeepSig 发布,是专门针对自动调制识别(Automatic Modulation Recognition, AMR)和无线信号分类研究设计的基准数据集。它在原有 RadioML 2016.10a 的基础上,扩展并精细化了信道仿真模型,使得信号更接近真实无线环境下的表现。该数据集广泛用于机器学习模型的训练与评估,为各类深度学习算法提供了统一、可重复的实验条件。

weixin_56527269的博客 1895

小白程序员必看!收藏这份RAG+Agent大模型应用开发速成指南

文章指出2026年AI岗位激增12倍,AI应用开发需求增长60%以上,成为IT行业风口。核心抓手是RAG+Agent技术,已是大厂面试必考点。2026年的就业市场正在发生结构性分化:脉脉数据显示,AI岗位数量同比增长约12倍,在新经济岗位中的占比从2.29%跃升至26.23%。AI新发岗位平均月薪达到60,738元,比新经济行业平均高出约26%。但更值得关注的是岗位结构的变化:传统软件开发需求下降25%,AI应用开发需求却增长60%以上。算法训练岗需求增速放缓,竞争加剧。

weixin_59191169的博客 352

天地图下载带审图号(审图号: GS(2024)0650号)的 “行政区划” 数据(含shp文件下载地址)

在科研投稿论文过程中,多数期刊杂志要求我们制作涉及国界的图件,必须使用自然资源部地图技术审查中心发布的标准地图底图。如地理学报、地理科学等期刊的投稿指南中写到:非标准底图本刊不予发表!(如图1.1所示)如果一定要用,凡涉国界图件(国内部分地区、全国、世界部分地区、全球)必须使用自然资源部标准地图服务系统标准地图底图(http://bzdt.ch.mnr.gov.cn/)(如图1.1所示)或国家测绘局地理信息局标准地图底图(如图1.2所示),所用底图边界要完全无修改(包括南海诸岛位置)。

JData_Engineer的博客 2303
上一篇: 大模型论文:Llama-3-SynE 实现有效且高效的大语言模型持续预训练
下一篇: 大模型开发教程:Langchain 和 RAG
Llama-Turbo
博客等级 码龄4年 9901粉丝 2022原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值