千帆【API接入】自定义组件简明教程

2024-05-26 20:52

本文主要是介绍千帆【API接入】自定义组件简明教程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

千帆【API接入】自定义组件简明教程

大家好,我是 JavaRoom,今天来给大家做一个自定义API接入来是心啊遣返组件创建案例简明教学。

1.准备工作

1.1 一个不欠费的千帆账号

财务总览地址:https://console.bce.baidu.com/billing/#/account/index

请添加图片描述

首先检查自己的帐号状态,如果欠费就充值,突然发现我的度小满里还有好多金币!!!

注意:

如果账号欠费了,那么你是运行不了你所部署的应用的。

1.2 准备一个网络主机

要自定的API能访问到,那么网络主机不能少。

怎么才是一个合格的主机呢?重点是端口开放。

下面是我的开放过程:

  • 本地防火墙端口开放

    #开放指定端口
    sudo ufw allow 8000
    # 直接关闭
    sudo ufw disable
    

    其实这次用的是8000端口,实在懒,就关了它。

  • 网络防火墙端口开放

请添加图片描述

2.本地写一个时间API

2.1 fastapi安装

思来想去,用fastapi应该是最简洁的,我想使用它来实现返回当前时间、星期、日期的阿皮。

首先是fastapi安装

pip install fastapi

2.2 自定义API实现time_test.py

from fastapi import FastAPI
from datetime import datetime
from typing import Dictapp = FastAPI()@app.get("/time_info")
async def get_current_time_info() -> Dict[str, str]:"""获取当前时间信息并返回字典。Args:无参数。Returns:包含当前时间信息的字典,包含以下键值对:- current_time (str): 当前时间,格式为"%H:%M:%S"- current_weekday (str): 当前星期,格式为"%A"- current_date (str): 当前日期,格式为"%Y-%m-%d""""now = datetime.now()current_time = now.strftime("%H:%M:%S")current_weekday = now.strftime("%A")current_date = now.strftime("%Y-%m-%d")return {"current_time": current_time,"current_weekday": current_weekday,"current_date": current_date}    

为了方便,以上代码、注释我使用comate自动生成。

2.3Uvicorn本地测试

使用Uvicorn运行应用:

uvicorn time_test:app --host 192.168.1.100 --port 8000 --reload

访问url:http://124.220.84.2:8000/time_info

请添加图片描述

3.网络部署

  • 安装fastapi

  • 打开sftp,直接上传刚刚测试好的time_test.py文件

  • 运行部署命令

# nohup表示关闭终端进程不断,& 表示后台运行, time_test表示文件名, 0.0.0.0 表示所有地址
nohup uvicorn time_test:app --host 0.0.0.0  --reload &
  • 测试

打开我的地址:http://124.220.84.2:8000/time_info

请添加图片描述

看到结果即成功。

4.组件创建

4.1选择组件类型

打开网址 [https://console.bce.baidu.com/ai_apaas/personalSpace](https://console.bce.baidu.com/ai_apaas/personalS

请添加图片描述
请添加图片描述

选择API接入即可。

4.2 配置外部API服务

进入编辑界面:

请添加图片描述

选中API组件,点击编辑原始API信息。

请添加图片描述

  • 替换API链接为刚刚服务器测试通过的 http://124.220.84.2:8000/time_info
  • 填写返回参数,如果懒,可以使用自动解析,推荐!!!
  • 注意:此处我没有给输入,所以不需要填写。

编辑结束节点:

请添加图片描述

  • 编辑输出参数
  • 编辑回复模板

做完以上工作后点击测试。

请添加图片描述

可以看到输出:

{
end_output:"今天是:2024-05-26,Sunday,北京时间:18:14:04。"
}

5.应用调用

5.1 应用创建

打开千帆APP原生平台创建应用 https://console.bce.baidu.com/ai_apaas/app ,编写应用。

  • 添加当前日期查询组件
  • 撰写应用prompt,提示调用组件
  • 输出组件认为的日期
  • 提示词里对组件获取的日期、大模型认为的日期作对比。
今日日期时间助手
# 角色任务
作为今日日期时间查询应用,你的任务是调用当前日期查询 组件,实时获取并显示当前日期和时间。# 工具能力1. 实时获取日期和时间:你需要具备从网络或设备系统获取实时日期和时间的能力。
2. 显示日期和时间:你需要能够以文本、数字或其他格式展示日期和时间,以便用户能够轻松阅读和理解。# 输出:
1.输出返回调用当前日期查询讯息
2.输出你认为的当前时间

请添加图片描述

5.2 应用测试

我在百度智能云千帆AppBuilder开发了一款AI原生应用,快来使用吧!「今日日期时间助手」:https://appbuilder.baidu.com/s/m7ToBD7m

请添加图片描述

6.应用信息

应用ID: 82f2f43c-aa8c-4922-8d26-99d9f3731757

应用链接:「今日日期时间助手」:https://appbuilder.baidu.com/s/m7ToBD7m

欢迎大家试用并提问。
请添加图片描述

这篇关于千帆【API接入】自定义组件简明教程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1005567

相关文章

SpringBoot+EasyExcel实现自定义复杂样式导入导出

《SpringBoot+EasyExcel实现自定义复杂样式导入导出》这篇文章主要为大家详细介绍了SpringBoot如何结果EasyExcel实现自定义复杂样式导入导出功能,文中的示例代码讲解详细,... 目录安装处理自定义导出复杂场景1、列不固定,动态列2、动态下拉3、自定义锁定行/列,添加密码4、合并

使用Docker构建Python Flask程序的详细教程

《使用Docker构建PythonFlask程序的详细教程》在当今的软件开发领域,容器化技术正变得越来越流行,而Docker无疑是其中的佼佼者,本文我们就来聊聊如何使用Docker构建一个简单的Py... 目录引言一、准备工作二、创建 Flask 应用程序三、创建 dockerfile四、构建 Docker

Knife4j+Axios+Redis前后端分离架构下的 API 管理与会话方案(最新推荐)

《Knife4j+Axios+Redis前后端分离架构下的API管理与会话方案(最新推荐)》本文主要介绍了Swagger与Knife4j的配置要点、前后端对接方法以及分布式Session实现原理,... 目录一、Swagger 与 Knife4j 的深度理解及配置要点Knife4j 配置关键要点1.Spri

深度解析Spring AOP @Aspect 原理、实战与最佳实践教程

《深度解析SpringAOP@Aspect原理、实战与最佳实践教程》文章系统讲解了SpringAOP核心概念、实现方式及原理,涵盖横切关注点分离、代理机制(JDK/CGLIB)、切入点类型、性能... 目录1. @ASPect 核心概念1.1 AOP 编程范式1.2 @Aspect 关键特性2. 完整代码实

Java实现自定义table宽高的示例代码

《Java实现自定义table宽高的示例代码》在桌面应用、管理系统乃至报表工具中,表格(JTable)作为最常用的数据展示组件,不仅承载对数据的增删改查,还需要配合布局与视觉需求,而JavaSwing... 目录一、项目背景详细介绍二、项目需求详细介绍三、相关技术详细介绍四、实现思路详细介绍五、完整实现代码

一文详解Java Stream的sorted自定义排序

《一文详解JavaStream的sorted自定义排序》Javastream中的sorted方法是用于对流中的元素进行排序的方法,它可以接受一个comparator参数,用于指定排序规则,sorte... 目录一、sorted 操作的基础原理二、自定义排序的实现方式1. Comparator 接口的 Lam

Java Web实现类似Excel表格锁定功能实战教程

《JavaWeb实现类似Excel表格锁定功能实战教程》本文将详细介绍通过创建特定div元素并利用CSS布局和JavaScript事件监听来实现类似Excel的锁定行和列效果的方法,感兴趣的朋友跟随... 目录1. 模拟Excel表格锁定功能2. 创建3个div元素实现表格锁定2.1 div元素布局设计2.

SpringBoot连接Redis集群教程

《SpringBoot连接Redis集群教程》:本文主要介绍SpringBoot连接Redis集群教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 依赖2. 修改配置文件3. 创建RedisClusterConfig4. 测试总结1. 依赖 <de

HTML5 getUserMedia API网页录音实现指南示例小结

《HTML5getUserMediaAPI网页录音实现指南示例小结》本教程将指导你如何利用这一API,结合WebAudioAPI,实现网页录音功能,从获取音频流到处理和保存录音,整个过程将逐步... 目录1. html5 getUserMedia API简介1.1 API概念与历史1.2 功能与优势1.3

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根