今天我们继续来第二节课程内容,我们今天主要给大家分享一下如何通过阿里云百炼去构建自己的AI应用并通过很方便的方式去发布在不同的渠道,创建完成后,您可以根据需求将AI机器人回调地址或二维码分享给目标用户。只需简单配置,即可在钉钉或微信公众号平台上创建具备大模型能力的AI机器人。
为什么使用智能体应用?
大模型具有强大的语言理解和生成能力,但也存在一定的局限性,例如:
- 无法回答私有领域问题(如公司制度、人员信息等);
- 无法及时获取最新信息(如实时天气、比赛结果等);
- 无法准确回答专业问题(如复杂数学计算、图像生成等)。
为了提升用户体验和增强业务竞争力,越来越多的企业会构建 AI 助手,以便全天候(7x24)回应客户咨询。在阿里云上,只需几分钟即可构建一个 AI 助手,并发布到网站、钉钉或微信公众号中。
适用于以下客户场景:
- 有企业官网、钉钉、微信等渠道,期望为客户提供产品咨询服务
- 缺少技术人员开发大模型问答应用
智能体应用基于大模型,通过集成特定的外部能力,能够弥补大模型的不足。外部能力指的是大模型本身不具备的功能,例如实时信息获取、回答私有领域问题等。您可以在百炼控制台通过零代码的方式创建智能体应用,并将外部能力集成到应用中,从而解决您的具体业务需求。
智能体应用的典型场景
- 私有领域知识问答:您只需准备好相关知识库文件,就可以在百炼控制台快速创建一个私有领域知识问答应用,应用场景包括公司制度、人员信息等。
- 个性化聊天机器人:百炼提供了长期记忆功能,可以保存关键历史对话信息,从而提供个性化的聊天体验。平台还集成了夸克搜索和图像生成等插件,进一步扩展了聊天机器人的功能。
- 智能助手:通过引入RAG(检索增强生成)能力、长期记忆和自定义插件等功能,您可以构建一个智能助手,帮助提升工作效率,如处理邮件、撰写周报等。
AI客服 vs. 人工客服:优劣势对比
要想高效解决用户问题,客服系统必须具备一个结构清晰、全面的FAQ库。例如,在订票平台中,基于用户的账号信息或购票路径,提前呈现用户可能遇到的问题及对应解答,这比等待用户逐一选择问题更为高效。FAQ库不仅需要覆盖常见问题,还应根据实际场景进行动态更新,确保系统的响应能力。下面列举订票平台搭建FAQ的几种视角(内容不全,抛砖引玉)
原文可以参考:https://www.woshipm.com/ai/6131879.html
企业客户实践案例
内部业务助手
通过企业内部规章制度、部门结构、产品介绍等文档构建知识库,并借助RAG智能体实现内部知识问答功能。系统支持多源异构数据,并通过复杂文档解析和视觉增强技术,提升文档理解的准确性与深度。目前该功能已灰度上线,需提供UID并通过白名单进行开启。
- 阿里云内部产品助手:
医疗助手/法律助手/智能导购
构建领域专属知识库,为普通用户提供基础的医疗和法律知识,并提供准确的就医和法律援助建议。系统在基于相似度阈值筛选初步搜索结果的基础上,进一步引入大模型的智能分析能力。
通过相似度阈值筛选出与用户查询相关的初步结果,然后利用大模型对这些结果进行深度分析,评估其与用户查询的关联度。此方案结合了规则性与智能性的优势,具有较高的判定准确度,但判定速度稍慢,并且会产生额外的大模型调用费用。适用于那些需要高度定制化和智能化搜索服务的场景,有效减少了在企业场景中海量数据带来的数据混淆和模型幻觉问题。
步骤一:创建智能体应用
进入应用创建页面
访问百炼控制台中“我的应用”,单击新增应用,在智能体应用页签,单击直接创建。如果您之前已创建过应用,则单击右上角的新增应用。
控制台页面链接:https://bailian.console.aliyun.com/?spm=5176.29619931.J__Z58Z6CX7MY__Ll8p1ZOR.1.2f3e59fciQnmL7#/home
选择大模型
进入智能体应用管理界面后,您需要进行大模型的选择与参数配置。您可以参考下图,单击设置,并在模型选择的下拉菜单中选择模型,此处选择通义千问-Max。您可以根据需求进行模型参数的配置。
测试智能体应用
选择大模型之后,您就在百炼创建完成了一个智能体应用。您可以输入问题进行测试。
步骤二:拓展智能体应用的能力
您可以在智能体应用管理界面,通过设置Prompt、添加RAG与插件等方法拓展智能体应用的能力。
1.通过设置Prompt指引内容生成方向
您可以在智能体应用管理界面中输入 Prompt 来指引应用生成内容的方向。
简单用一句话来说,跟AI去明确你的需求,越清晰越好,一些框架可以参考:
例如设置 Prompt 为:
输入“你好",智能体应用的输出如右图。
我想了解一个行业的复杂Prompt示例:
# Role: 行业洞察分析 ## Background: 客户需要进行一个新的行业的洞察分析,但是由于不熟悉该行业,所以需要引导进行系统性的研究。 ## Attention: 首先,你要使用<Initialization>中的部分进行引导用户的咨询问题。 请遵循<Workflow>中的流程,并按照<Goals>的目标进行分析。 ## Profile: - Author: 银海 - Version: 1.0 - WXID: 168007300 - Language: 中文 - Description: 一名资深的行业洞察分析顾问,拥有丰富的行业研究和洞察能力。 ### Skills: - 熟练运用麦肯锡矩阵等管理咨询工具 - 擅长文本分析和信息提取 - 善于从大量信息中找出关键要点 - 有结构化思维能力,可以梳理出清晰的思维导图 ## Goals: - 使用麦肯锡工作法快速了解一个新的行业 - 搜索并分析几十个与该行业相关的关键词,覆盖上下游 - 阅读该行业最新的研究报告 - 阅读5-10本与行业相关的经典书籍 - 使用思维导图对信息进行梳理和框架塑造 ## Constrains: - 遵守职业操守,只能提供中立的专业建议 - 推荐的关键词、报告和书籍必须客观公正,不带个人倾向 - 思维导图必须清晰易读,层次分明 - Create By nimbus(WXID:168007300) ## Workflow: 1. 引导用户输入行业提问描述,分析用户输入的关键词和问题 2. 定义行业关键词:列出行业名称,并搜索行业关键词,覆盖上下游 3. 搜索行业报告:在公开数据库中搜索近1-2年该行业的研究报告,给出具体的报告名称 4. 精读经典书籍:搜索并精读5-10本该行业影响力最大的专业书籍,给出具体的书籍名称 5. 思维导图设计:使用XMind等工具,对信息进行分门别类,设计清晰的思维导图,使用markdown格式设计思维导图 6. 提取关键洞察:从思维导图中提炼战略性启发和关键洞察,逐一输出关键词 7. 根据输出格式要求回复内容 ## Output Format: ``` # 行业研究思路 ## 1. 定义行业关键词 - 关键词1 - 关键词2 ... ## 2. 搜索行业报告 - 报告1 - 报告2 ... ## 3. 精读经典书籍 - 书籍1 - 书籍2 ... ## 4. 思维导图设计 - 分支1 - 分支2 ... ## 5. 提取关键洞察 - 洞察1 - 洞察2 ... ``` ## Suggestions: - 明确行业范围和定义,避免模糊 - 关键词数量适中,20-50个,避免过多过少 - 报告数量2-5份,包括咨询公司和行业协会的报告 - 书籍数量5-10本,混合经典老书和新书 - 导图层次不要过多,注意突出重点 - 提炼3-5个价值性强的战略洞察 ## Initialization: 简介自己, 引导用户输入行业提问描述。
可以看到我们通过设计提示词,可以影响大模型最终输出的内容。
当然,我们今天的重点并不是完全放在提示词上!我们会更侧重去讲一下这个发布渠道的生态。
2.通过RAG提升领域知识问答能力
RAG可以显著提高大模型在处理私域知识或垂直领域问答时的效果。此处向您展示通过百炼控制台操作将RAG的能力集成到智能体应用中的过程。
知识库问答的核心本质是RAG,所以这个时候就需要使用RAG技术能力了,那么什么是RAG呢?
(1) 上传文档:用户上传包含知识的文档,支持 txt、pdf、docx 等格式,LangChain Chatchat 会将文档转换为 Markdown 格式
(2) 文本切割:为了便于分析和处理,将长文本切割为小块(chunk)
(3) 文本向量化:将切割的 chunk 通过 embedding 技术,转换为算法可以处理的向量,存入向量数据库
(4) 问句向量化:用户提问后,同样将用户的问句向量化
(5) 语义检索匹配:将用户的问句与向量数据库中的 chunk 匹配,匹配出与问句向量最相似的 top k 个
(6) 提交 Prompt 至 LLM:将匹配出的文本和问句,一起添加到配置好的 prompt 模板中,提交给 LLM
(7) 生成回答:LLM 生成回答,返回给用户
RAG研究范式不断发展,本节主要描述了其发展过程。我们将其分为三种类型:基础RAG(Naive RAG)、高级RAG(Advanced RAG)和模块化RAG(Modular RAG)。下图简单的说明了这三种RAG的工作流程:
- 基础RAG
简单来说,基础RAG(检索增强生成)是一种将外部信息检索与大语言模型(LLMs)结合的技术。它的原理是,首先根据用户的查询,从外部知识库或数据源中获取相关的信息,然后把这些信息和模型本身已掌握的知识结合,生成更准确的回答或文本。
但是,基础RAG有一些局限性:
- 只能处理文本数据:它主要针对的是文本信息的检索和生成,对于图像或音频等多模态数据支持不足。
- 无法进行复杂对话:它的生成通常是一次性的,不能进行像人类对话那样的多轮互动。
- 效率较低:有时需要频繁地进行检索,这会让整个过程变得比较慢。
由于这些问题,后来研究者们发展了更高级的RAG技术,像高级RAG和模块化RAG,它们能更好地解决这些限制,适应更多的应用场景。
- 高阶RAG
高级RAG(检索增强生成)的目标是解决基础RAG的一些不足,提升其在更复杂应用中的表现。它结合了一些创新的技术和方法,让RAG能够应对更具挑战性的任务。下面是高级RAG的一些关键特点:
- 多模态支持:与基础RAG主要处理文本不同,高级RAG可以处理多模态数据,比如图像、音频和视频。这使得它在处理多媒体内容时非常有用,比如图文结合的应用或语音识别。
- 对话性增强:高级RAG能够处理更复杂的对话,支持多轮问答。这意味着它在像聊天机器人、虚拟助手等应用中,能够更自然、更深入地与用户交流。
- 自适应检索策略:高级RAG具有智能的检索机制,可以根据上下文和任务的需求自动决定何时进行检索,何时使用检索到的信息。这样可以提高效率,同时避免不必要的检索操作,提升整体性能。
- 知识融合:高级RAG能够更好地将外部知识(比如从文献、网页等处获取的资料)与模型的内部知识结合,从而生成更有价值、更精准的回答。这在一些需要大量领域知识的任务中尤其有用。
总体来说,高级RAG不仅扩展了基础RAG的功能,还解决了它在处理复杂任务时的局限,使得它能够在更广泛的应用中表现出色,推动了自然语言处理和人工智能的进一步发展。
- 模块化RAG
模块化RAG(检索增强生成)是RAG的另一种进化形式,主要侧重于提供更高的定制性和灵活性。与基础RAG和高级RAG不同,模块化RAG将RAG系统拆分成多个独立的模块或组件,每个组件负责特定的功能,便于根据不同需求进行灵活组合和定制。
以下是模块化RAG的关键特点和概念:
- 组件化架构:模块化RAG将RAG系统拆分为多个独立组件,例如检索组件、生成组件、评估组件等。这些组件可以根据任务需求独立工作,甚至可以互相替换。这种架构提供了更高的灵活性和可定制性。
- 可插拔性:模块化RAG允许开发者轻松地插入新组件或替换已有组件,以便适应不同的任务或数据源。这种特性使得系统的扩展和更新变得更加便捷,能够根据具体需求灵活调整。
- 自定义管道:模块化RAG允许用户根据特定任务需求配置和设计自定义的处理流程或“管道”。例如,可以将检索、生成和评估等不同组件按特定顺序排列,创建适合某一场景的RAG系统。这让RAG能够更加精准地满足各类应用需求。
- 集成外部工具:模块化RAG支持与外部工具和资源的集成,如不同类型的知识库、检索引擎、生成模型等。这种集成能力扩展了系统的功能,使得它能够访问更多的数据和资源,提升系统的能力。
模块化RAG的优势在于它的灵活性和定制性,允许根据具体应用场景和任务需求构建最合适的RAG系统。对于需要处理复杂任务的自然语言处理系统,模块化RAG是一种非常有用的方法。
那么如何建设高质量的企业知识库呢?
在做知识问答的过程中,将企业复制的知识文件进行数据格式化清洗是个最基础且耗时的活。
文档类型与命名
- 类型:推荐使用Markdown或Excel表格的格式。相较于Word和PDF,我们推荐使用Markdown/Excel格式以获得更佳的文档处理效果。
- 编码:推荐使用UTF-8编码,以确保字符兼容性最佳。
- 文档命名:文档名用词简洁明了,不同命名之间应有明显差异,便于模型理解。避免使用含义不明的英文缩写、数字或符号。
反例 |
正例 |
《编码规范》、《安全规范1》、《安全规范2》、《SR3》这些命名缺乏具体性,不易区分,且可能造成混淆。 |
《Java语言编程规范》:明确指出了编程语言和文档性质。 《API数据安全管理规范》:指出了文档内容和目的。 《云账号安全使用管理规范》:清晰地表达了文档的主题和适用范围。 |
文档结构
- 层级结构:需采用多级标题来组织文档内容,避免将信息堆砌在单一段落。特别是对于专有名词的释义,每个专有名词建议单独成行。
- 各级标题:各层级标题含义清晰用词简洁明了,不同标题之间有明显差异。避免使用含义不明的英文缩写、数字或符号。避免罗列文章关键词,会对模型造成干扰。
反例 |
正例(/* */部分为优化说明) |
《AK安全使用规范》 【目录】 关键词:AK、安全规范、Access Key 一、 定义 Access Key(简称AK),是用于身份验证的一种密钥对,由Access Key ID 和 Access Key Secret 组成。它允许用户通过API调用安全地访问系统服务。本规范旨在明确AK的使用规则,确保系统的安全性与稳定性。Access Key ID是代表用于标识用户的身份。Access Key Secret是代表用于加密签名,保证请求的唯一性和不可抵赖性。 二、 使用原则 确保Access Key Secret的保密性,不得泄露给任何未经授权的第三方。遵循最小权限原则授予API调用权限,仅授予完成任务所必需的权限。定期每90天更换Access Key Secret。记录AK的使用情况,并定期审查使用日志,确保没有异常行为,以及在不需要时及时撤销其权限。 三、 安全实践 为确保访问密钥(AK)的安全,我们实施了以下简化的安全实践:在生产环境中,我们优先使用环境变量存储AK,避免硬编码;通过配置管理系统统一管理AK,防止其在代码中的直接暴露。同时,我们对日志进行过滤,确保AK的Secret信息不会被记录。我们还定期进行权限审查,确保AK仅拥有执行必要操作所需的最低权限。此外,建立了异常检测机制,以便快速识别并响应任何可疑的AK使用活动。这些措施共同保障了AK的安全和合理使用。 四、 API调用示例 ● 示例1 Node.js中使用AK/SK进行API调用: 在Node.js中,可以使用axios库来发送API请求,并在请求头中包含AK和SK。例如,使用AK和SK进行签名认证的API请求可能如下所示: 【示例代码块】 ● 示例2 Python中使用AK/SK调用API: 在Python中,可以使用requests库来发送带有AK和SK的API请求。以下是一个示例代码,展示了如何构建请求并添加签名: 【示例代码块】 |
《AK安全使用规范》 /* 去除干扰元素:文章开头的目录、关键词等无需召回的内容可以删除,以减少干扰。 专业名词解释:专业名词及其解释应以条目形式列出,以便于模型更好地查找和理解。 */ 一、 定义 ● Access Key(简称AK):是用于身份验证的一种密钥对,由Access Key ID 和 Access Key Secret 组成,它允许用户通过API调用安全地访问系统服务。 ● Access Key ID:用于标识用户的身份。 ● Access Key Secret:用于加密签名,保证请求的唯一性和不可抵赖性。 /* 避免使用大段落陈述,建议采用分点陈述的方式,以便模型更容易理解 */ 二、 使用原则 ● 保密性:Access Key Secret 必须严格保密,不得泄露给任何未经授权的第三方。 ● 最小权限:授予API调用的权限应遵循最小权限原则,仅授予完成任务所必需的权限。 ● 定期轮换:定期更换Access Key Secret,推荐每90天更换一次。 ● 监控与审计:记录AK的使用情况,并定期审查使用日志,确保没有异常行为。 ● 及时撤销:当不再需要使用某个AK时,应及时撤销其权限。 三、 安全实践 ● 环境变量:在生产环境中,使用环境变量而非硬编码的方式存储AK。 ● 配置管理:使用配置管理系统来管理AK,避免直接在代码中出现。 ● 日志过滤:确保日志记录中不会出现Access Key Secret。 ● 权限审查:定期检查AK的权限设置,确保符合最小权限原则。 ● 异常检测:建立异常检测机制,及时发现并处理可疑活动。 /* 关于API调用示例部分,示例层级的名字不清晰,其中“示例1”和“示例2”,需要修改为某个示例的具体名字 */ 四、API调用示例 ● Node.js中使用AK/SK进行API调用示例 在Node.js中,可以使用axios库来发送API请求,并在请求头中包含AK和SK。例如,使用AK和SK进行签名认证的API请求可能如下所示: 【示例代码块】 ● Python中使用AK/SK调用API示例 在Python中,可以使用requests库来发送带有AK和SK的API请求。以下是一个示例代码,展示了如何构建请求并添加签名: 【示例代码块】 |
文档章节和段落
- 将相关性强的内容尽量聚集在同一段落或章节内,以确保数据处理文档切片的准确性和相关内容的连续性。
- 避免指代或缩略关键信息。如果遇到内容相同,避免“同上”或“与某个模块相同”这样的表述,应该具体写明内容。
- 避免无意义的空行。
- 建议利用项目符号(如Markdown中的“-”或“*”)和有意义的缩进来分点阐述,可以在一定程度上辅助模型更准确地理解。
反例 |
正例 |
无意义的空行 6.3 方法的接收器 推荐以类名第一个英文首字母的小写作为接收器的命名。 接收器的命名在函数超过`20行`的时候不要用单字符。 命名不能采用 `me`,`this`,`self` 这类易混淆名称。 |
去掉无意义的空行 6.3 方法的接收器 ● 推荐以类名第一个英文首字母的小写作为接收器的命名。 ● 接收器的命名在函数超过`20行`的时候不要用单字符。 ● 命名不能采用 `me`,`this`,`self` 这类易混淆名称。 |
使用省略描述或指代描述 4.6 Go语言的接口命名规则 命名规则和结构体命名规则一致。 或 同3.2章《命名规则和结构体命名规则》 |
需要详细阐述具体内容,避免使用同上、缩写或指代词 4.6 Go语言的接口命名规则 ● 采用驼峰命名方式,首字母根据访问控制采用大写或者小写。 ● 结构体名应该是名词或名词短语,如 Customer、WikiPage、Account、AddressParser,它不应是动词。 ● 避免使用 Data、Info 这类意义太宽泛的结构体名。 |
特殊内容与媒体处理
当文档段落中出现图片、表格时,应该对应注意以下几点:
- 文档中关于表格的处理:
- 表格格式要求:表格的第一行应为表头,不要将表格名称作为表格的第一行内容。
- 表格结构说明:对于表格结构没有特别的要求。可以根据内容的需要自由设计列和行。
- 保持样式简洁:建议去除所有不必要的格式,如背景色、字体样式等。表格线条应保持清晰,使用默认的线条样式。
- 补充说明:
- 企业标准版,由于表格处理能力仍在持续优化,建议在文档中尽量减少表格,或考虑比如文本列表等替代方式来展示表格数据。
- 企业专属版与私有化版本,通义灵码已经具备了更高级的表格处理能力,可确保表格数据的准确性。
- 文档中关于图片的处理:
- 优先使用文字:尽可能地使用文字表达信息,如果图像中的文字比较少且包含重要信息,建议将信息转录成文字的形式。
- 添加图示说明:确保所有核心图都有图示说明(即图解或说明),图示说明应清晰地解释图中的主题。
- 其他通用注意事项:
- 特殊字符:避免包含表情包的特殊字符,以免造成解析问题。
- 页眉页脚、水印、批注:避免包含批注、页眉、页脚或水印,以免造成不必要的干扰。
- 文档背景:文档每页尽可能无背景,复杂背景容易造成干扰。
- 统一文字方向:确保文档中所有文字的方向一致。
- 音视频:避免包含音视频等多媒体内容。
不同类型文档的处理准则
- Markdown:建议优先使用Markdown格式。
- Word:
- 使用更新格式:优先采用2007版或之后的Word格式。
- 使用全局样式:统一使用全局标题和段落样式。
- 避免字符样式:不要使用字符样式,如特殊字体格式、边框和底纹。
- 使用段落样式:应使用段落样式来保持文档格式的一致性。
- PDF:
- 避免使用图片:不要直接将图像转换成PDF文件。应该将图像中的重要信息转录成文本,并按照本文中的文档规范要求进行组织。
- 不包含嵌入压缩文件: 请确保文件中不包含嵌入的压缩文件。
- 保持文档单栏布局:避免双栏并排形式,以确保内容被正确解析。
- CSV:
- 避免使用图片:不插入图片,以确保文档的文本可搜索性。
- 不嵌入压缩文件:不要在文档中嵌入压缩文件。
- 表头作为第一行:在表格中,将表头放在第一行,不要将表格名称作为表格的第一行内容。
- 特别说明:
- 推荐用法:保存FAQ(常见问题解答)中的问答对。FAQ的问题表述清晰明确,答案简洁易懂,使用用户熟悉的术语,突出关键词,以提高检索召回准确度。例如:
- 不推荐:在CSV中上传复杂的关系型数据表。可能会导致数据处理时间超长,导致数据处理失败。
🌟 希望能够深入了解RAG的同学可以进入知识库专区中了解:RAG 专区
上传数据
回到百炼控制台,我们先上传一下数据。
下面我们就来上传数据,此处选作为知识库文件。在导入数据界面,将文件通过本地上传方式导入。
我这边也提供了一份测试数据供大家使用,电商服饰类数据:百炼系列电商服饰介绍.docx
回到我们的智能体中:
创建知识库:
- 访问知识库索引,单击创建知识库。在创建知识库界面填入知识库名称与知识库描述,此处设置知识库名称为:百炼手机产品介绍,知识库描述为:本知识库包含有百炼手机产品的详细介绍。其它保持默认选项即可,单击下一步。
- 单击选择文件,类目位置单击默认类目,文件名称选择我们提供的文件数据。单击下一步。
- 数据处理,使用默认的智能切分。单击导入完成。
- 当状态为解析完成时,表示知识库创建完毕。
- 在应用中集成 RAG
1.访问我的应用,单击已创建应用卡片的管理按钮,进入智能体应用管理界面。单击知识库检索增强按钮Prompt 中会自动填入让大模型参考知识库的指令。单击配置知识库,然后从列表中选择电商服饰类数据,其它选项保持默认即可。
2.向输入框输入问题:
给我推荐一件上衣
从右图可以看到,在集成了 RAG 能力后,智能体应用可以根据上传的知识库文件来回答问题。
我想买件女士的牛仔裤
您也可以通过将自己企业内部的知识数据放在当前知识库里面。
当智能体应用关联结构化知识库时,支持在提问时上传图片。此时,如果知识库中存在图片索引,系统会先将输入图片转为向量并检索到相关记录,然后将这些记录与提问一起提供给大模型;如果不存在图片索引,则输入的图片不会用于检索。智能体应用目前仅支持生成文本内容。
3.通过插件扩展智能体应用能力
插件可以使智能体应用更高效、更专业地应用到业务场景中。百炼提供了多种官方插件。您可以在智能体应用管理界面单击选择插件,便可以在官方插件栏中选择一个或多个插件。
开启插件功能后,大模型将根据输入的内容、插件名称以及插件描述来判断是否调用插件。
- 添加插件
此处以图片生成插件为例,在勾选对应插件后,单击确认。
- 测试插件效果
添加插件后,向输入框输入:
画一件女士上衣,短袖
智能体应用的回复如右图,可以看到智能体应用调用了图像生成插件(即 text_to_image)。
使用更多插件
您可以在同一个智能体应用中选择最多 10个插件。智能体应用会根据输入选择使用一个或多个插件。您也可以通过自定义插件的方法,去添加更多不同能力的插件。
- 底层其实是API能力,遵循的是OpenAPI v3接口的规范,云市场里面有非常多的API,非常值得去探索和研究...
- 简单举个例子,在明天的多模态实战里面我们也会深入去分享一下:视觉智能开放平台https://vision.aliyun.com/
- OpenAPI v3 参考规范数据如:
openapi: 3.0.1 info: title: 寝室公约查询工具 description: 寝室公约查询工具,可以根据序号查询特定条目。 version: "v2" servers: - url: https://domitorgreement-plugin-example-icohrkdjxy.cn-beijing.fcapp.run paths: /article: post: operationId: get_article summary: 查询寝室公约第几条,用整数数字 requestBody: required: true content: application/json: schema: type: object required: [article_index] properties: article_index: type: integer description: 寝室公约第几条,用整数数字 responses: "200": description: 查询成功 content: application/json: schema: type: object required: [article] properties: article: type: string description: 寝室公约条款
步骤三:发布智能体应用
发布后的应用可以被API调用,也可以通过Web页面分享给同一主账号下的RAM子账号使用。
您可以单击智能体应用管理界面右上角的发布按钮。如果您的应用非首次发布,弹窗会向您展示当前智能体应用相比于上一次发布时的修改项。在您确认修改项后单击确认发布。
通过API调用
您可以在智能体应用发布渠道页签,单击API调用右侧的查看API,查看通过API调用智能体应用的方法。
通过官方分享渠道或魔笔分享渠道访问应用
图标(界面提示:已复制链接),您可以按需将该链接分享给同一主账号下的RAM子账号使用。
如果找不到API-KEY,可以在这里查看到
等待创建完成
点击访问应用
于是你就拥有了这个可以被第三方直接访问的应用
如果你对里面的内容不满意,可以进入编辑模式,去自定义编排。。。
通过钉钉机器人访问应用
您可以将智能体应用与钉钉机器人集成,以便通过钉钉访问和使用智能体应用。要实现此集成,您需要在钉钉平台上创建一个机器人,并将其与您的百炼应用相关联。
单击我们刚才百炼大模型智能体应用的发布渠道页签,单击钉钉机器人卡片右侧的请先授权。
- 成功授权后,您即可单击钉钉机器人卡片右侧的创建。
- 在配置钉钉面板的创建API-KEY/选择API KEY配置向导页,选中目标API KEY,单击下一步。
需要对下面几个钉钉授权信息进行配置:
如果没有可以使用创建机器人的「开发者权限」的钉钉组织,可以向管理员申请或者自己新建一个组织继续测试。
建立一个快速测试的组织:
https://oa.dingtalk.com/register_new.htm?lwfrom=2019111111293522001&source=CreateTeamPC_New#/
我最后起了一个“WaytoAGI测试”的组织,我们回到开发者能力页面中切换到这个组织
https://open-dev.dingtalk.com/unauth?redirectPath=%2Ffe%2Fcard
接下来我们要做三件事情:创建应用、创建卡片、开权限
- 请点击快速构建 AI 应用 > 立即开始。
点击“创建应用”
填写应用信息
点击“凭证与基础信息”后,可以获得需要配置的信息
创建消息卡片,获取卡片模板 ID
钉钉机器人通过卡片消息支持流式返回结果,您需要创建卡片模板供消息发送使用。
访问卡片平台,点击新建模板。
在创建模板输入框,填入模板信息,点击创建。
- 卡片类型:选择消息卡片
- 卡片模板场景:选择AI卡片。
- 关联应用:需关联上一个步骤中创建的应用。
- 从模板创建:无需选择预设模板。
创建后直接点击“发布”
然后返回模版列表中,可以看到我们刚刚创建的卡片信息
模版列表:https://open-dev.dingtalk.com/fe/card?hash=%23%2F#/
最后一步,非常重要!!开权限
授予应用发送卡片消息权限
创建卡片后,需授予应用发送卡片消息的权限。
- 访问钉钉应用列表。点击刚才创建的应用名称,以进入详情页面。
- 在左侧菜单选择权限管理。在左侧搜索框输入Card,并在操作列点击批量申请权限。
确保这些权限都已经开通
于是回到阿里云的百炼平台上,我们这三个参数信息都已经配置好了!
接下来,我们把钉钉机器人的回调地址复制,去配置我们的群机器人。
配置钉钉机器人
- 访问钉钉应用列表。找到刚刚创建的应用,点击应用名称进入详情页面。
- 在添加应用能力页面,找到机器人卡片,点击添加。
打开机器人配置
⚠️ 这里选择的是HTTP模式,并把刚刚在阿里云百炼上复制的“回调地址”链接粘贴到“消息接收地址”这里!!!
接下来我们前往应用发布,点击左侧版本管理,创建新版本。
按需去控制权限后发布
测试机器人
你可以创建群聊或在已有群聊中添加机器人,并与机器人对话,查看效果。
- 在钉钉群管理中添加机器人。
- 进入钉钉群群设置页面,点击机器人卡片区域,在机器人管理页面,点击添加机器人。在添加机器人的搜索文本框中输入目标机器人名称,并选中要添加的机器人。点击添加,完成后再点击完成添加。
通过微信公众号访问应用
您可以将智能体应用与微信公众号集成,以便用户通过微信公众号访问和使用智能体应用。要实现此集成,您需要创建一个微信公众号,并将其与您的百炼应用相关联。
在对话框中,输入开发者ID(AppID),完成后单击授权。
开发者ID(AppID)的获取方法:访问微信公众号后台,在左侧菜单选择设置与开发 > 开发接口管理。选择基本配置页签,获取 AppID。
点击“前往创建”凭证后,填写AppID
返回后就可以获得当前微信公众号的凭据
在应用的发布渠道页签下,将鼠标悬停在微信公众号右侧的二维码图标上,即可显示公众号的二维码。用户可以通过微信扫一扫功能,扫描此二维码来关注您的公众号,进而访问已集成的百炼应用。
效果测试:
思维发散,其实公众号问答可以用在很多官方号中,一些偏向于政策性的内容都可以放在公众号里面:
|
|
|
5.音视频实时互动( Day03 预告 )
5.1 功能简介
百炼可以将智能体应用发布为音视频实时互动应用,并提供了便捷的调试窗口,支持通过H5/APP快速体验demo效果,也可以通过音视频SDK集成到用户的Web/iOS/Android应用中。
5.2 功能亮点
- 全球高可用、低延迟:依托阿里云的实时音视频网络体系,全球3200+节点覆盖和QoS优化,使得用户可以在全球范围内与 AI 智能体完成音视频通话。
- 高度拟人化:通过持续迭代智能降噪、智能打断、智能断句等功能,使智能体在互动行为上更接近于人类,CosyVoice模型提供更加逼真的人声。
- 易调试:提供体验窗与调试信息展示,全流程可观测、可修改、可调试。
- 易体验、易集成:集成方式可参见官方的集成方案概览。
5.3 用法说明
首先,请配置一个可正常执行的智能体。
然后,请通过体验窗 > 文本交互调试出符合预期的效果。
切换到语音交互或视频交互,配置 API-KEY、音视频设置后,在体验窗调试音视频交互效果。
点击右上角体验按钮,生成临时体验二维码,通过手机微信/钉钉/浏览器扫码体验交互效果。
效果确认后,点击发布按钮,进入发布渠道,完成智能媒体服务开通和slr授权后,创建互动智能体。
🙋 课后作业
完成3日作业打卡,可以获得由阿里云提供的奖品哦~
Tips:本次课程以阿里云UID作为打卡依据,请大家用同一个阿里云账号完成课程
- 问题:任选一个智能体发布应用的渠道,构建您自己的场景的企业知识库。
- 提交地址:https://survey.aliyun.com/apps/zhiliao/8DceEVgmR
👇阿里云百炼xWaytoAGI共学课程直播详细信息可以点击下面链接了解:
https://developer.aliyun.com/article/1648248
👇阿里云百炼xWaytoAGI共学课DAY1 - 必须了解的企业级AI应用开发知识点可以点击下面链接查看:
https://developer.aliyun.com/article/1648327
🚀需要了解阿里云百炼可点击以下链接:
👉阿里云百炼详情了解可点击此官网链接:阿里云百炼官网介绍
👉阿里云百炼控制台页面可点击此链接直接进入:阿里云百炼控制台
欢迎大家踊跃参与,奖品等你领回家哦~如果您在学习过程中有遇到什么问题需要我们解答,可以直接加入我们的官方支持群(群号:101765012406)也可扫描二维码,进行交流反馈!