千帆起航:探索百度智能云千帆AppBuilder在AI原生应用开发中的革新之路
千帆起航:探索百度千帆AppBuilder在AI原生应用开发中的革新之路
1.揭开帷幕,大模型第二次战役
自从 ChatGPT 横空出世后,一石激起千层浪,人工智能也正在从感知理解走向生成创造,这是一个关键里程碑。生成式大模型完成了从0到1的飞跃,并且已成为未来发展趋势,推动AI迈向通用人工智能。过去半年,国内有超过 130 个大模型问世,从某种意义上说,大模型在第一阶段的较量,更多属于模型概念的普及、以及对标 ChatGPT 能力的追赶,而解决实际场景下的问题,大模型才能发挥真正的作用,这是大模型应用在中场竞争下关键性的角色所在。
作为新一代基础设施,大模型本身并不直接产生价值,智能时代的未来不会仅仅是大模型本身,而将是大模型生态体系。业内共识是,在大模型之上开发出来的 AI 原生应用,以重构的方式打破原有的产品范式,将大模型的能力释放至千行百业中,与实际场景面对面了解需求,聚焦 AI 能够具体做什么、带来哪些方面的提升,才是大模型第二次战役突围的关键。
作为AI开发者来说,就算我们能够随心所欲的使用这些大模型,但是缺少相应的Prompt工程,对应的基础组件(如向量数据库、对象存储等)和相应的训练文本数据处理工程(如长文总结、nl2sql等),想要完成一个AI原生应用还是需要相当漫长的开发过程。并不是我们跟着语言大模型聊一聊就可以把这个应用做出来。在开发AI原生应用的过程中,我们常面临一个关键问题:如何保证大模型输出的稳定性和可控性。即使我们精心编写了Prompt,输出的结果仍可能波动,难以复现。这不仅是关于编写合适Prompt的问题,更涉及到如何通过外部功能性动作与Prompt相结合,以达到更优的输出效果。
例如,当Prompt空间有限时,开发者需要运用策略对Prompt进行动态适配,挑选合适的信息输入,以便引导模型产生期望的输出。这些高级策略和技术操作对于构建高质量的AI原生应用至关重要,但它们的实现难度不容小觑。另一个关键的挑战是大模型的记忆管理。大多数大型模型依赖短期记忆,而在构建AI原生应用时,我们通常需要长期记忆能力。这意味着模型需要在较长时间内与用户或其他Agent交互,并记录下来关键信息。而这些信息需要被存储和在需要时调度出来,那么我们每一次对话提交的tokens都会附带上大量的成本且得到模型相应的时间都会更长,这也是为什么目前还没有真正爆发式的AI原生应用的原因。
2.框架与组件的融合:千帆AppBuilder的创新之道
10月17日,在百度世界大会上,百度智能云发布了AI原生应用开发工作台,重磅发布“千帆AI原生应用开发工作台”,加速企业AI原生应用落地;千帆AppBuilder将开发大模型应用的常见模式、工具、流程,沉淀成一个工作台,帮助开发者聚焦在自身业务,而无需为开发过程牵扯多余精力。具体来讲,千帆AI原生应用开发工作台主要由应用组件和应用框架两层服务构成。

举例来说,假定人们的饮食习惯从过去的西餐全面转向中餐,而仅有少数人懂得中餐的烹饪方式。这些“领导者”的厨房“工作台”凝聚了中餐的烹饪理念、经验技巧、菜系、菜品、食材等关键元素。花椒大料代表了“中餐特色组件”,鸡鸭鱼肉代表了“传统组件”;川鲁粤湘等菜系作为“框架”给定了菜肴的基本的组件搭配和开发思路;鱼香肉丝和麻婆豆腐预制菜则对应川菜框架下的“样板间”。有了这样一个资源高度集中“工作台”,人们就可大幅降低烹饪中式料理的门槛,分分钟做出可口佳肴。
具体来讲,千帆AppBuilder底层由百度智能云千帆大模型平台提供支持,核心包括应用组件、应用框架两层服务。同时,AppBuilder提供两种产品形态。第一,对于没有代码开发能力的用户,简单点选即可获取对话应用。第二,对于开发者、程序员可可使用代码编写较为复杂的应用,提供sdk、开发环境及调试工具。千帆AppBuilder的核心创新在于其独特的方式,将框架与组件融合,以提供一个全面而灵活的AI原生应用开发环境。它解决了开发者在利用大模型进行应用构建时面临的一系列挑战,特别是在应用原型的设计和开发流程的优化上。

创新框架:简化复杂的开发流程
千帆AppBuilder的核心创新之一在于其框架设计。这个框架不仅包含了传统的应用开发元素,如界面设计和逻辑构建,还整合了针对大模型特有的功能,例如高级数据处理和智能交互设计。这使得开发者能够在一个统一的环境中,无缝地将大模型的能力融入到他们的应用中。

组件生态:丰富多样的功能选择
除了强大的框架,千帆AppBuilder还提供了一个广泛的组件生态系统。这些组件涵盖了从文本处理到数据分析、从用户界面设计到后端服务的各个方面。开发者可以根据自己的需求选择合适的组件,快速构建出符合预期的应用。

双模态开发体验:代码态与低代码态
千帆AppBuilder独特的双模态设计,包括代码态和低代码态,为不同技能水平的开发者提供了便利。低代码态允许那些非专业的开发者通过可视化界面快速搭建应用:

而代码态则为有经验的开发者提供了更深层次的定制化和控制。
3.实战分享:利用千帆AppBuilder加速开发
在开发涉及复杂信息检索和生成的应用时,RAG成为了我不可或缺的工具。它通过结合检索和生成模型,使得应用能够在提供答案时参考大量的文档数据,从而大幅提升了回答的准确性和相关性。这一功能在构建如智能客服或知识问答系统时尤为重要。但是如果我们利用千帆AppBuilder来构建就相当容易了,下面我将一步步构建智能问答客服,首先进入百度智能云千帆-AppBuilder:

在应用中心中找到知识问答应用(RAG框架),点击在线使用就可以进入到控制台页面,十分简洁没有过多复杂参数调整过程,对AI应用构建者十分友好。我们可以通过应用配置设定名称,比如此时我想做一个智能考公选岗的QA机器人,在知识库检索上传自己的数据集:

也可以选择百度搜索辅助选择,可以体验文心4.0的强大模型解析能力:

设定完基础的配置之后我们就可以直接使用模型了:

除此之外千帆AppBuilder还提供了AgentBuilder应用,“Agent 应用” 在中文中可能意味着许多不同的事物,取决于上下文。一般而言,“Agent”这个词可以指代代理、代理人或代理软件。在计算机科学和软件工程领域,它通常指的是在网络环境中自动执行任务或某种程度上具有自主性的软件实体,也就是相当于能够独立思考的办公助手。而且使用千帆AppBuilder十分简单,甚至不需要根据对应业务构建是非复杂的代码,Agent应用自带Agent配置:


能够直接根据我们输入的需求自动生成代码,比如我想要获取:

这周图表的最大周量数据直接告诉需求就可以实现:

是不是相当的快捷简便!而且千帆AppBuilder配套专门的SDK调用说明,通过使用流程
- 步骤一:创建密钥
- 步骤二:开通组件服务
- 步骤三:安装SDK
- 步骤四:功能调用
即可完成功能部署,不仅加速了开发流程,还提高了应用的质量和性能。我鼓励所有对AI原生应用开发感兴趣的开发者体验千帆AppBuilder,探索其提供的无限可能。
4.结语:千帆AppBuilder开启AI原生应用开发的新纪元
我的个人经历也证明了千帆AppBuilder在加速开发流程和提高应用质量方面的能力。无论是RAG的复杂信息处理,Agent的交互设计,GBI的商业智能应用,还是文本框架的高效文本处理,千帆AppBuilder都显示出了其在AI原生应用开发中的关键作用。
量方面的能力。无论是RAG的复杂信息处理,Agent的交互设计,GBI的商业智能应用,还是文本框架的高效文本处理,千帆AppBuilder都显示出了其在AI原生应用开发中的关键作用。
最终,我们的目标不仅仅是构建应用,而是创造体验,启发创新,推动技术向前发展。千帆AppBuilder正是这一目标的有力工具,它为开发者打开了一个充满可能性的新世界。因此,我邀请每一位对AI原生应用开发感兴趣的人,一同探索千帆AppBuilder,共同开启这一激动人心的新时代。
相关文章:
千帆起航:探索百度智能云千帆AppBuilder在AI原生应用开发中的革新之路
千帆起航:探索百度千帆AppBuilder在AI原生应用开发中的革新之路 1.揭开帷幕,大模型第二次战役 自从 ChatGPT 横空出世后,一石激起千层浪,人工智能也正在从感知理解走向生成创造,这是一个关键里程碑。生成式大模型完成…...
RevIT™ AAV Enhancer, 提高AAV产量的又一利器!
腺相关病毒 (AAV) 是基因治疗中使用最广泛的传递机制。近年来,基于AAV病毒所开发的基因疗法的研发及临床试验注册数量也呈指数级增长。截止本文撰写之时,美国食品和药物管理局已批准五项AAV疗法,也是全球市场上最为昂贵的药物,其中…...
Kubectl 部署有状态应用(下)
接上文 《Kubectl 部署有状态应用(上)》创建完StatefulSet后,本文继续介绍StatefulSet 扩展、更新、删除等内容。 StatefulSet 中的 Pod 验证序数索引和稳定的网络身份 StatefulSet 中的 Pod 具有唯一的序数索引和稳定的网络身份。 查看 …...
Jmeter 性能 —— 监控服务器!
Jmeter监控Linux需要三个文件 JMeterPlugins-Extras.jar (包:JMeterPlugins-Extras-1.4.0.zip)JMeterPlugins-Standard.jar (包:JMeterPlugins-Standard-1.4.0.zip)ServerAgent-2.2.3.zip 1、Jemter 安装插件 在插件管理中心的搜索Servers Performan…...
离散型制造企业为什么要注重MES管理系统的实施
离散型制造企业经常面临三个核心问题:生产什么、生产多少以及如何生产。尽管许多企业都实施了ERP系统,但仍然绕不开MES管理系统的话题。本文将从三个方面详细解释为什么离散型企业需要实施MES管理系统。 一、生产线经常出现的问题 在离散型企业中&#…...
Linux系统中跟TCP相关的内核参数
1. TCP保活机制 参考 《Nginx(三) 配置文件详解 - 基础模块》3.18章节 net.ipv4.tcp_keepalive_intvl:设置两次相邻探活检测的间隔时间。默认是75秒,单位是秒。net.ipv4.tcp_keepalive_probes:设置探活最多检测次数。默认是9次,单…...
代理模式(Proxy)
代理模式(Proxy Pattern)是一种结构型设计模式,用于为另一个对象提供一个代替品或占位符以控制对这个对象的访问。这个模式主要用于延迟处理操作或者在进行实际操作前后进行其它处理。 代理模式的实现通常涉及以下角色: 抽象主题(Subject):定义了代理和真实对象的共用接…...
在MacOS上Qt配置OpenCV并进行测试
目录 一.Qt环境准备 二.在Qt项目中加载Opencv库并编写代码测试 1.使用Opencv加载图片 (1)在Qt中创建一个新项目 (2)在.pro文件中链接OpenCV库 (3)添加新资源文件 (4)在mainw…...
java数据结构与算法刷题-----LeetCode167:两数之和 II - 输入有序数组
java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article/details/123063846 思路 题目要求我们找到两个数相加的和,等于target指定的值。而…...
Linux:jumpserver V3的安装与升级(在线离线)(2)
官方文档写的非常详细,我这篇文章时间长了,会随着官方版本更新而落后 JumpServer - 开源堡垒机 - 官网https://www.jumpserver.org/安装和升级在官网也有详细的信息,我写本章是为了记录一下实验 我的系统是centos7.9 在线安装 在确定我们可…...
【GoLang】Go语言几种标准库介绍(一)
你见过哪些令你膛目结舌的代码技巧? 文章目录 你见过哪些令你膛目结舌的代码技巧?前言几种库bufio(带缓冲的 I/O 操作)特性示例 bytes (实现字节操作)特性示例 总结专栏集锦写在最后 前言 随着计算机科学的迅猛发展,编…...
短剧分销系统:月入百w的新模式
随着我国短剧的高速发展,越来越多的人进入到了短剧影视行业。本文旨在介绍短剧市场的发展前景以及短剧分销系统的设计和开发。 一、短剧发展背景 短剧具有时长短、剧情紧凑、节奏快、剧情新颖等特点,满足了国内观众的碎片化时间,在当下短视频…...
鞋服用户运营策略如何实现有效闭环?
实现长期价值和业务闭环是企业经营的关键。对于鞋服行业来说,如何基于客户旅程编排(Customer Journey Orchestration,简称 CJO)实现用户运营策略的有效闭环,提升长期价值呢? 本文围绕该主题,从鞋…...
简单工厂、工厂方法、抽象工厂和策略模式
摘要 本文简单介绍软件开发过程中面临的痛点和几个总体原则。详细介绍了简单工厂、工厂方法、抽象工厂和策略模式的实现,以及各种模式之间的相似、区别。 背景 开发面临哪些问题(痛点)? 相信做过大型软件开发的tx都遇到过以下类似…...
junit mocktio request打桩
Controller下request组装参数 HttpServletRequest request new MockHttpServletRequest(); ((MockHttpServletRequest) request).addHeader("router","login"); ((MockHttpServletRequest) request).addParameter("test","wwww"); …...
第十四节TypeScript 联合类型
1、简介 联合类型可以通过管道(|)将变量设置多种类型,赋值时可以根据设置的类型来赋值。 注意:只能赋值指定的类型,如果赋值其它类型就会报错的。 2、创建联合类型的语法格式: Type1|Type2|Type3 实例&a…...
[x86汇编语言]从实模式到保护模式第二版
下载汇编器:https://www.nasm.us/pub/nasm/releasebuilds/2.16.02rc6/win64/ mov ax, 0x3f add bx,ax add cx,ax 编译: C:\Users\HP>cd D:\BaiduNetdiskDownload\01b站\lizhong\myasm C:\Users\HP>D: D:\BaiduNetdiskDownload\01b站\lizhong…...
基本的逻辑门
前言 本篇文章介绍基本的逻辑门,然后给出C语言描述 逻辑门是在集成电路上的基本组件。简单的逻辑门可由晶体管组成。这些晶体管的组合可以使代表两种信号的高低电平在通过它们之后产生高电平或者低电平的信号。高、低电平可以分别代表逻辑上的“真”与“假”或二进…...
云原生系列3-Kubernetes
1、Kubernetes概述 k8s缩写是因为k和s之间有八个字符。k8s是基于容器技术的分布式架构方案。官网:https://kubernetes.io/zh-cn/ Google在 2014年开源了Kubernetes项目,Kubernetes是一个用于自动化部署、扩展和管理容器化应用程序的开源系统。同样类似的…...
R-列表、矩阵、数组转化为向量
目录 一、c()函数 二、unlist()函数 一、c()函数 c():对应的英文是combine. 当你使用c()函数时,它会将输入的对象连接成一个向量。因此,无论输入是矩阵、数组还是列表,c()函数都会将它们连接成一个简单的向量。因此ÿ…...
docker详细操作--未完待续
docker介绍 docker官网: Docker:加速容器应用程序开发 harbor官网:Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台,用于将应用程序及其依赖项(如库、运行时环…...
阿里云ACP云计算备考笔记 (5)——弹性伸缩
目录 第一章 概述 第二章 弹性伸缩简介 1、弹性伸缩 2、垂直伸缩 3、优势 4、应用场景 ① 无规律的业务量波动 ② 有规律的业务量波动 ③ 无明显业务量波动 ④ 混合型业务 ⑤ 消息通知 ⑥ 生命周期挂钩 ⑦ 自定义方式 ⑧ 滚的升级 5、使用限制 第三章 主要定义 …...
练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...
【第二十一章 SDIO接口(SDIO)】
第二十一章 SDIO接口 目录 第二十一章 SDIO接口(SDIO) 1 SDIO 主要功能 2 SDIO 总线拓扑 3 SDIO 功能描述 3.1 SDIO 适配器 3.2 SDIOAHB 接口 4 卡功能描述 4.1 卡识别模式 4.2 卡复位 4.3 操作电压范围确认 4.4 卡识别过程 4.5 写数据块 4.6 读数据块 4.7 数据流…...
学校招生小程序源码介绍
基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码,专为学校招生场景量身打造,功能实用且操作便捷。 从技术架构来看,ThinkPHP提供稳定可靠的后台服务,FastAdmin加速开发流程,UniApp则保障小程序在多端有良好的兼…...
力扣-35.搜索插入位置
题目描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 class Solution {public int searchInsert(int[] nums, …...
html css js网页制作成品——HTML+CSS榴莲商城网页设计(4页)附源码
目录 一、👨🎓网站题目 二、✍️网站描述 三、📚网站介绍 四、🌐网站效果 五、🪓 代码实现 🧱HTML 六、🥇 如何让学习不再盲目 七、🎁更多干货 一、👨…...
宇树科技,改名了!
提到国内具身智能和机器人领域的代表企业,那宇树科技(Unitree)必须名列其榜。 最近,宇树科技的一项新变动消息在业界引发了不少关注和讨论,即: 宇树向其合作伙伴发布了一封公司名称变更函称,因…...
安卓基础(Java 和 Gradle 版本)
1. 设置项目的 JDK 版本 方法1:通过 Project Structure File → Project Structure... (或按 CtrlAltShiftS) 左侧选择 SDK Location 在 Gradle Settings 部分,设置 Gradle JDK 方法2:通过 Settings File → Settings... (或 CtrlAltS)…...
qt+vs Generated File下的moc_和ui_文件丢失导致 error LNK2001
qt 5.9.7 vs2013 qt add-in 2.3.2 起因是添加一个新的控件类,直接把源文件拖进VS的项目里,然后VS卡住十秒,然后编译就报一堆 error LNK2001 一看项目的Generated Files下的moc_和ui_文件丢失了一部分,导致编译的时候找不到了。因…...
