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

Modelscope 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:
艺术字 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收藏及时获取新功能~
钉钉交流群
更多推荐
所有评论(0)