Modelscope Agent实操(二):低代码调用API创建更加酷炫的Agent

本文涉及的产品
交互式建模 PAI-DSW,5000CU*H 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
模型训练 PAI-DLC,5000CU*H 3个月
简介: 上一篇中介绍了 0代码创建、发布并分享一个专属Agent,今天主要介绍如何借助API让你的Agent更加有用、有趣!

上一篇中介绍了 0代码创建、发布并分享一个专属Agent今天主要介绍如何借助API让你的Agent更加有用、有趣!


API接入会极大扩展Agent的能力范围


API(Application Programming Interface)是一组重要的协议、规则和工具集,它们定义了软件应用程序之间如何进行有效的交互。当API遵循OpenAPI规范时,它们便可以被agent轻松调用。这种接入不仅赋予agent更多的功能和能力,而且可以极大地扩展其服务范围。例如:


  1. 访问第三方服务:通过API接入,Agent可以访问各种第三方服务,如天气预报、股票行情、地图导航等,从而扩展自己的功能范围。
  2. 集成第三方应用:通过API接入,Agent可以与第三方应用进行集成,实现更多的功能,例如通过集成微信、支付宝等支付应用,实现快捷支付。
  3. 处理复杂数据:通过API接入,Agent可以获得更多的数据,从而处理更复杂的数据。例如通过接入新闻API,实现自动获取新闻信息,然后进行分析和推荐。
  4. 自动化流程:通过API接入,Agent可以实现自动化流程,例如通过接入银行的API,实现自动完成转账等操作。
  5. 个性化推荐:通过API接入,Agent可以获取用户的偏好和历史行为数据,从而实现更准确的个性化推荐。例如通过接入电商API,实现个性化商品推荐。


总结就是API可以让Agent做到更多的事情!


Agent+API实现原理


Agent使用API的流程包括以下几个步骤:

  1. 参数分析:分析用户输入的符合OpenAPI规范的JSON或YAML文件,提取关键信息,包括参数和描述等;
  2. LLM Planning:将提取的信息填写到提示语中,提交给LLM (大型语言模型) 并接收其输出;
  3. 动作解析:分析LLM的输出,如果LLM指示需要调用API,则从输出中提取相应的动作信息;
  4. API 调用:根据动作信息中的参数,执行HTTP请求,获取结果;
  5. LLM Generation:将API调用的结果传回LLM,获取最终的输出内容。


Agent调用API案例:艺术字生成


艺术字API:

https://help.aliyun.com/zh/dashscope/developer-reference/wordart-quick-start?spm=a2c4g.11186623.0.0.4796b08azcgSVShttps://help.aliyun.com/zh/dashscope/developer-reference/wordart-quick-start?spm=a2c4g.11186623.0.0.4796b08azcgSVS


艺术字 Agent体验:

https://www.modelscope.cn/studios/Cherrytest/wordartAI/summary


1、基础设置


2、schema配置

{
    "openapi": "3.1.0",
    "info": {
      "title": "WordArt Texture Generation API",
      "description": "API for generating textured word art with customizable parameters.",
      "version": "v1.0.0"
    },
    "servers": [
      {
        "url": "https://dashscope.aliyuncs.com"
      }
    ],
    "paths": {
      "/api/v1/services/aigc/wordart/texture": {
        "post": {
          "summary": "Generate Textured WordArt",
          "operationId": "generate_textured_WordArt",
          "tags": [
            "WordArt Generation"
          ],
          "requestBody": {
            "required": true,
            "X-DashScope-Async": "enable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WordArtGenerationRequest"
                }
              }
            }
          },
          "responses": {
            "200": {
              "description": "Successful Response",
              "content": {
                "application/json": {
                  "schema": {
                    "$ref": "#/components/schemas/WordArtGenerationResponse"
                  }
                }
              }
            }
          },
          "security": [
            {
              "BearerAuth": []
            }
          ]
        }
      },
      "/api/v1/tasks/{task_id}": {
        "get": {
          "summary": "Get WordArt Result",
          "operationId": "getwordartresult",
          "tags": [
            "Get Result"
          ],
          "parameters": [
          {
        "name":"task_id",
        "in":"path",
        "required":true,
        "description":"The unique identifier of the word art generation task",
        "schema":{
            "type":"string"
        }
    }
          ],
          "security": [
            {
              "BearerAuth": []
            }
          ]
        }
      }
    },
    "components": {
      "schemas": {
        "WordArtGenerationRequest": {
          "type": "object",
          "properties": {
            "model": {
              "type": "string",
              "enum": ["wordart-texture"]
            },
            "input": {
              "type": "object",
              "properties":{
                "text": {
                    "type": "object",
                    "properties": {
                      "text_content": {
                      "type": "string",
                      "example": "文字纹理",
                      "description": "用户想要转为艺术字的文本",
                      "required":true
                      },
                      "font_name": {
                      "type": "string",
                      "example": "dongfangdakai",
                      "description": "用户想要转为艺术字的字体格式,如果用户没有提供,就传入默认值dongfangdakai",
                      "required":true
                      }
                    }
                  },
                  "prompt": {
                    "type": "string",
                    "example": "水果,蔬菜,温暖的色彩空间",
                    "description": "用户对艺术字的风格要求,可能是形状、颜色、实体等方面的要求",
                    "required":true
                  }
              }
            },
            "parameters": {
              "type": "object",
              "properties": {
                "n": {
                  "type": "number",
                  "example": 2,
                  "description": "取值范围为1-4的整数",
                  "required": true
                }
              }
            }
          },
          "required": [
            "model",
            "input",
            "parameters"
          ]
        },
        "WordArtGenerationResponse": {
          "type": "object",
          "properties": {
            "output": {
              "type": "string",
              "description": "Generated word art image URL or data."
            }
          }
        }
      },
      "securitySchemes": {
        "ApiKeyAuth": {
          "type": "apiKey",
          "in": "header",
          "name": "Authorization"
        }
      }
    }
  }


3、Agent运行效果


4、艺术字生成效果


预告


目前的API接入体验还不是很完美,比如刚才的艺术字生成,还需要用户主动查询任务才可以最终获取图片。我们推出了tool模式可以免去中间流程,敬请期待下回介绍:

将API注册为tool,成为smart API,方便社区开发者调用


项目源代码地址,记得star收藏及时获取新功能~(点击 阅读原文 即可直接查看)

https://github.com/modelscope/modelscope-agent


欢迎加入钉钉群交流~


相关文章
|
2月前
|
人工智能 API 决策智能
Modelscope结合α-UMi:基于Modelscope的多模型协作Agent
基于单个开源小模型的工具调用Agent,由于模型容量和预训练能力获取的限制,无法在推理和规划、工具调用、回复生成等任务上同时获得比肩大模型等性能。
|
7天前
|
人工智能 API
Agent如何掌握API的用法
Agent如何掌握API的用法
|
2月前
|
开发框架 数据可视化 Windows
如何提升大模型Agent的能力 ——LLM Agent框架 Modelscope-Agent 实战
本文介绍Agent到底是什么 ,如何进行优化,以及如何使用Agen框架。
|
2月前
|
开发框架 API 决策智能
ModelScope-Agent框架再升级!新增一键配置多人聊天,配套开源多智能体数据集和训练
ModelScope-Agent是魔搭社区推出的适配开源大语言模型(LLM)的AI Agent(智能体)开发框架,借助ModelScope-Agent,所有开发者都可基于开源 LLM 搭建属于自己的智能体应用。在最新升级完Assistant API和Tool APIs之后,我们又迎来了多智能体聊天室的升级,通过几分钟快速配置即可搭建一个全新的聊天室。
|
2月前
|
安全 API 开发者
智能体-Agent能力升级!新增Assistant API & Tools API服务接口
ModelScope-Agent是一个交互式创作空间,它支持LLM(Language Model)的扩展能力,例如工具调用(function calling)和知识检索(knowledge retrieval)。它已经对相关接口进行了开源,以提供更原子化的应用LLM能力。用户可以通过Modelscope-Agent上的不同代理(agent),结合自定义的LLM配置和消息,调用这些能力。
|
2月前
|
存储 人工智能 自然语言处理
从API到Agent:万字长文洞悉LangChain工程化设计
给“AI外行人士”引入一下LangChain,试着从工程角度去理解LangChain的设计和使用。同时大家也可以将此文档作为LangChain的“10分钟快速上手”手册,本意是希望帮助需要的同学实现AI工程的Bootstrap。
从API到Agent:万字长文洞悉LangChain工程化设计
|
7月前
|
数据可视化 测试技术 API
Modelscope Agent实操(三):将API注册为tool,成为smart API,方便社区开发者调用
大家通过写python代码的方式来定制自己的tool,进一步扩展Agent的能力。
|
22天前
|
NoSQL 安全 API
如何有效提升 API 接口的安全性?
**API安全关键在于验证和防刷。通过排序参数、生成签名和MD5加密确保请求合法性。使用Redis限制请求频率,防止接口被恶意刷取。验证和防刷策略结合,保护API免受攻击和滥用。**
47 0
|
4天前
|
缓存 自然语言处理 搜索推荐
解析微店商品详情的 API 接口获取之道
在电商蓬勃发展的时代,微店的商品详情数据对商家与开发者极具价值。API接口成为挖掘这些数据的关键,助力商家洞察市场,优化策略,实时监控竞品,管理库存;赋能开发者创新,如构建推荐系统和分析工具。获取接口需注册认证,理解政策,明确权限需求。调用API须精读文档,选用合适语言编码,处理错误,优化策略如缓存和异步请求。数据处理涉及自然语言分析、价格预测和情感分析,应用广泛。注意事项包括合规操作、数据安全、适应接口变动及性能优化,确保高效合法利用数据,推动电商进步。
|
4天前
|
API 数据安全/隐私保护 开发者
Web 开发新风尚!Python RESTful API 设计与实现,让你的接口更懂开发者心!
【7月更文挑战第23天】Python的RESTful API设计在Web开发中流行,提升效率与体验。REST强调HTTP方法(GET, POST, PUT, DELETE)操作资源。使用Flask框架可快速实现API,如管理用户信息。示例代码展示如何创建、读取、更新和删除用户,通过不同HTTP方法和URL路径。实际应用中,增加验证、错误处理和权限控制可增强API的安全性和稳定性。安装Flask后,可运行代码测试API功能。
24 6