PPO: 一种通过近端策略优化提高模型性能的方法
PPO: 一种通过近端策略优化提高模型性能的方法
PPO(Proximal Policy Optimization)是一种强化学习中的策略优化算法,主要用于训练智能体以改善在环境中表现的能力。PPO通过以下几个关键点来提高模型性能:
-
近端优化:PPO的核心思想是通过限制策略的变化范围来保证更新的稳定性。与其他策略优化方法相比,PPO采用了一种“近端”方法,在更新时不会让新的策略偏离旧的策略太远。这避免了因更新过大而导致的性能下降。
-
目标函数:PPO使用了一种新的目标函数,不仅考虑奖励的期望值,还引入了对旧策略的考虑。它通过一个夹紧的约束(clipping)机制来限制策略更新的幅度,从而保持更新过程的稳定性。
-
样本利用率:PPO能够有效利用收集到的样本数据,提高学习效率。它常常结合“离线”算法,即可以多次使用同一批样本来进行优化。这种方法能够减少数据收集的需求,从而在训练中提高效率。
-
易于实现:与其他复杂的强化学习算法相比,PPO相对简单并且易于实现。其结构使得理论推导清晰,加之简单的超参数设置,降低了模型调优的难度,使得更多的研究和应用能够借助PPO进行实验。
-
广泛应用:PPO已被广泛应用于各种强化学习任务中,包括游戏玩法、机器人控制、对话系统等。在这些应用中,PPO显示出较强的效果,往往因其收敛速度快和稳定性高而被选用。
通过这些特性,PPO成为了一种受欢迎的策略优化方法,尤其在需要高效、稳定训练的场景中,能够显著提高模型的表现。
基本概念: 强化学习的基础知识和组成要素
强化学习(Reinforcement Learning, RL)是一种机器学习的范式,旨在通过与环境的交互来学习最佳策略,从而最大化获得的累积奖励。以下是强化学习的基础知识和组成要素的详细介绍:
-
智能体(Agent):
- 智能体是执行动作以实现目标的主体。它通过观察环境的状态(State),选择动作(Action),并根据所获得的奖励(Reward)来进行学习和优化。
-
环境(Environment):
- 环境是智能体操作的外部系统。它与智能体进行交互,接收智能体的动作并返回新的状态和奖励。环境可以是游戏、机器人控制、模拟系统等。
-
状态(State):
- 状态是智能体在某一时刻对环境的描述。它包含了智能体在环境中的信息,可以是简单的数值、向量或者更复杂的数据结构(例如图像)。
-
动作(Action):
- 动作是智能体在特定状态下可以选择的操作。根据强化学习的不同类型,动作可以是离散的(如选择几种可能的行动)或连续的(如控制机器人的运动)。
-
奖励(Reward):
- 奖励是智能体在执行动作后从环境中获得的反馈信号,用于衡量该动作的效果。奖励可以是即时的(在每一步后给出)或延迟的(在一段时间后给出,反映动作的长期效果)。
-
策略(Policy):
- 策略是智能体决定在特定状态下采取何种动作的规则。可以是确定性策略(给定状态总是采取相同动作)或随机策略(根据一定概率分布选择动作)。
-
价值函数(Value Function):
- 价值函数用于评估状态(或状态-动作对)在未来获得奖励的期望值。通过价值函数,智能体可以判断在某个状态下采取某个动作的长期回报,以优化策略。
-
状态转移(State Transition):
- 状态转移描述了智能体在执行某个动作后,环境由一个状态转移到另一个状态的过程。这种转移通常依据某种概率分布。
-
回报(Return):
- 回报是智能体从当前时刻起未来所有奖励的总和,通常在强化学习中以折扣因子进行加权,以控制未来奖励的影响。
-
折扣因子(Discount Factor):
- 折扣因子是一个介于0和1之间的值,用于确定未来奖励的当前价值。一个较大的折扣因子意味着智能体更关注长期奖励,而较小的值则表明智能体更关注短期奖励。
通过理解这些基本概念和组成要素,研究者和实践者能够设计和实施强化学习算法,进而更好地解决各种复杂的决策问题和优化任务。这些基础知识是深入了解强化学习原理和应用的基石。
PEFT简介: 介绍参数高效微调的关键概念
PEFT简介: 介绍参数高效微调的关键概念
参数高效微调(Parameter Efficient Fine-Tuning,简称PEFT)是一组旨在改进大规模预训练语言模型微调效率的技术。随着语言模型规模的不断增大,涉及的参数数量也急剧上升,这使得传统的微调方法在存储需求和计算资源上面临挑战。PEFT的出现很好地解决了以下几个关键概念:
-
冻结模型参数:在PEFT中,原始的大型预训练模型的参数通常保持不变,即“冻结”。这意味着在微调过程中,不再对所有参数进行更新,而是限制只对少量新引入的参数进行调整。这种方法大幅降低了微调的复杂性和计算成本。
-
引入新的可训练参数:PEFT方法通常会引入一些新的可训练参数,这些参数作为“适配器”与原始模型的输出结合。通过优化这些附加参数,模型可以学习特定任务的特征而不改变其基本结构,从而实现高效学习。
-
低秩适应(LoRA):低秩适应是PEFT的一个重要技术,它通过在模型内部引入低秩矩阵分解来减少需要更新的参数数量。LoRA在微调过程中只调整这些低秩矩阵的值,在保持原模型参数不变的情况下,能够显著降低计算负担和存储需求。
-
前缀微调(Prefix Tuning):前缀微调是一种在输入序列开头添加可学习的虚拟标记的方法。这些虚拟标记作为任务特定的上下文,在微调过程中逐步学习,从而实现对模型的任务适应,而无需修改原始模型的参数。
-
量化微调(QLoRA):量化技术允许在微调过程中减少模型权重的精度,从而降低内存占用和计算需求。QLoRA是一种改进的版本,它通过将部分参数量化到更低的位深度,保证模型在资源有限的环境下依然能够良好运行,从而提升了微调的性能。
-
灵活性与可扩展性:由于PEFT引入的新参数相对较少,这使得模型在处理新任务时能够更快速地适应。此外,PEFT技术通常对不同任务都适用,从而提高了模型部署的灵活性和可扩展性。
总的来说,PEFT通过引入新的可训练参数和优化策略,能够在不牺牲性能的前提下,以较低的资源消耗实现针对特定任务的高效微调。这一方法不仅提高了大型预训练模型的实用性,还为在资源受限的环境中使用这些模型铺平了道路。
需求分析: 解释参数微调的必要性
需求分析: 解释参数微调的必要性
在现代自然语言处理(NLP)任务中,大型预训练语言模型(如GPT-3、BERT等)因其卓越的表示能力而被广泛应用。这些模型通常具有数亿甚至数十亿的参数,能够捕捉语言的复杂结构和语义。然而,直接使用这些巨型模型进行特定任务(如文本分类、问答、翻译等)时,存在以下几方面的挑战:
-
参数存储成本高:每个特定任务需要在模型上进行微调,这通常意味着需要存储多个版本的模型参数。这对存储能力和管理效率提出了高要求,尤其在资源有限的环境中显得尤为重要。
-
计算资源需求大:全量微调(即对所有参数进行调整)需要巨大的计算资源和时间,这在训练时可能导致高昂的成本。对于一些小型企业或个人研究者而言,使用大型模型进行全量微调几乎不可行。
-
应用灵活性不足:当需要快速适应新任务时,传统的微调方法往往无法提供足够的灵活性。每次新任务的到来都需要重新进行微调,这不仅浪费时间,也增加了模型版本管理的复杂性。
-
过拟合风险:在少量数据上进行全量微调时,模型可能会面临过拟合的问题,这会导致在新数据上的泛化能力下降。因此,需要更好的策略来进行有效的训练,而不必重新调整模型的所有参数。
针对上述挑战,参数高效微调(PEFT)技术应运而生。PEFT通过在保持原有模型参数冻结的情况下,引入新的可训练参数,显著减少了训练时需要优化的参数数量。这样不仅降低了存储需求和计算资源消耗,而且提高了模型适应新任务的灵活性。通过这些技术,研究人员能够在更小的内存占用和更低的计算开销下,依然实现高效的模型训练,满足实际应用中的需求。
相关文章:
PPO: 一种通过近端策略优化提高模型性能的方法
PPO: 一种通过近端策略优化提高模型性能的方法 PPO(Proximal Policy Optimization)是一种强化学习中的策略优化算法,主要用于训练智能体以改善在环境中表现的能力。PPO通过以下几个关键点来提高模型性能: 近端优化:PP…...
Docker创建一个mongodb实例,并用springboot连接 mongodb进行读写文件
一、通过Docker 进行运行一个 mongodb实例 1、拉取镜像 docker pull mongo:5.0.5 2、创建 mongodb容器实例 docker run -d --name mongodb2 \-e MONGO_INITDB_ROOT_USERNAMEsalaryMongo \-e MONGO_INITDB_ROOT_PASSWORD123456 \-p 27017:27017 \mongo:5.0.5 3、进入容器&am…...
[IT项目管理]九.项目质量管理
九.项目质量管理 9.1项目质量管理的重要性 对于很多IT项目的差劲,大多数人只可以忍受。项目质量管理是IT项目管理的重要组成部分,对于提高项目成功率、降低项目成本、提升客户满意度至关重要。尽管很多人对IT项目的质量问题感到无奈&#x…...
Unity中的委托和事件(UnityAction、UnityEvent)
委托和事件 🎒什么是委托,委托的关键字是Delegate,委托是一种函数的容器,运行将函数做为变量来进行传递 通过Delegate关键字我们声明了一个无参无返回的委托,通过这个委托我们可以存储无参无返回的函数 public deleg…...
图像生成工具WebUI
介绍 Stable Diffusion WebUI(AUTOMATIC1111,简称A1111)是一个为高级用户设计的图形用户界面(GUI),它提供了丰富的功能和灵活性,以满足复杂和高级的图像生成需求。如今各种人工智能满天飞&…...
Python面试常见问题及答案12
问题: 请解释Python中的GIL(全局解释器锁)是什么? ○ 答案: GIL是Python解释器中的一种机制,用于确保任何时候只有一个线程在执行Python字节码。这在多线程场景下可能影响性能优化,但对于单线程…...
javalock(六)CyclicBarrier
注意:CyclicBarrier不是AQS的派生类,而是CyclicBarrier内部使用了ReentrantLock.Condition 和CountDownLatch一样,都是计数减为0就可以成功获取锁 和CountDownLatch不同的是: 1:CountDownLatch的await和countdown操作…...
React 19有哪些新特性?
写在前面 2024.12.5,React 团队在 react.dev/blog 上发表了帖子 react.dev/blog/2024/1… React 19 正式进入了 stable 状态 React 团队介绍了一些新的特性和 Breaking Changes,并提供了升级指南, React 19: 新更新、新特性和新Hooks Reac…...
大数据治理:构建数据驱动的智慧教学体系
随着大数据技术在教育领域的逐渐渗透,大数据治理在教学中的应用日益广泛,它为提升教学质量、优化教学资源配置以及实现个性化教学提供了有力支持。 一、大数据治理在教学数据管理中的应用 在教学过程中,会产生海量的数据,如学生的…...
梳理你的思路(从OOP到架构设计)_浅尝架构师的滋味03
目录 1、分与合: 强龙与地头蛇的分工 分工 & 合作 分工的时间点 客人来之前做「分」,客人来之后做「合」 2、结语 肯德基餐厅 火锅店 汽车 从分工到外包模式 1、分与合: 强龙与地头蛇的分工 EIT造形用来表达架构师的先「分」与买…...
ChatGPT与领域特定语言的集成
用ChatGPT做软件测试 领域特定语言(Domain-Specific Language,DSL)是一种编程语言,专门设计用于满足特定领域或问题领域的需求。它是一种定制的语言,通常包括特定领域的专业术语以及相应的语法规则。DSL的设计旨在让领…...
sql server msdb数据库备份恢复
备份 BACKUP DATABASE [msdb] TO DISK ND:\liyuanshuai\test\sqlserver_bakfile\msdb20241219.bak WITH NOFORMAT, NOINIT, NAME Nlys-完整 数据库 备份, SKIP, NOREWIND, NOUNLOAD, COMPRESSION, STATS 10 GO然后删除2个测试的job,停止 SQL Server 代理…...
MyBatis(二)
一、MyBatis 和 JDBC 有什么区别? JDBC 是 Java 访问数据库的基础 API,它需要大量的样板代码。比如,使用 JDBC 进行查询时,需要加载驱动、建立连接、创建语句、执行查询、处理结果集和关闭资源等操作。代码比较繁琐且容易出错。M…...
Docker:Dockerfile(补充四)
这里写目录标题 1. Dockerfile常见指令1.1 DockerFile例子 2. 一些其他命令 1. Dockerfile常见指令 简单的dockerFile文件 FROM openjdk:17LABEL authorleifengyangCOPY app.jar /app.jarEXPOSE 8080ENTRYPOINT ["java","-jar","/app.jar"]# 使…...
Hexo博客生成标签和分类页
个人博客地址:Hexo博客生成标签和分类页 | 一张假钞的真实世界。 标签页 默认情况下,Hexo站点创建后,需手动生成标签页。如不生成,在点击“标签”菜单时会出现以下错误: Cannot GET /tags/ 执行以下命令创建标签页…...
Linux基础 -- 使用Linux Shell通过TCP发送消息
使用Linux Shell通过TCP发送消息 本文档介绍如何使用Linux Shell命令,通过TCP协议向服务器发送消息,示例中的目标服务器地址为 192.168.1.32,端口为 15000。 示例代码 使用 printf 和 netcat(简称 nc)工具实现&…...
联表查询相关语法
1.查询sql语句的执行顺序 sql:语法 select distinct * from 左表名 (left/inner/right)join 右表名 on 连接条件 where 筛选条件 group by 分组的列表(按什么字段分组) having 分组条件 order by 排序的字段 limit 分页 以上为语法结构,顺序不能乱执行顺序&#x…...
upload-labs(1-19关)通关攻略
Pass-01 本关思路:删除前端js校验 进入第一关环境 桌面新建一个php文件,命名为1.php <?php eval($_POST[a]);?> 我们上传此文件,发现不允许上传,且页面没有变化,说明前端进行了拦截 这时我们打开 F12 &…...
C语言小练习-求数组的最大子数组
#include <stdio.h>/***暴力求解最大子数组,使用两重循环,把所有情况全部遍历一遍。*/ int subArr1(int *arr,int size) {int sum 0, max arr[0];int i,j;for(i 0;i < size; i){for(j i; j < size; j){sum arr[j];if(sum > max){max…...
初识C语言之二维数组(中)
一.二维数组练习 ①题目描述:打印多个字符从两端移动,向中间汇聚。 eg. ################ H###############! He##############!! Hel#############!!! Hell############!!!! Hello##########t!!!! ................................................. He…...
Ubuntu下迁移Conda环境
Ubuntu下快速迁移Conda环境到其他电脑 安装conda-pack pip install conda-packOr conda install conda-pack压缩conda环境 解压到目标电脑或者目标文件下 conda pack -n your_envs_name -o your_envs_name.tar.gz解压conda环境 mkdir your_new_envs_name tar -zxvf your_e…...
数据可视化-1. 折线图
目录 1. 折线图适用场景分析 1. 1 时间序列数据展示 1.2 趋势分析 1.3 多变量比较 1.4 数据异常检测 1.5 简洁易读的数据可视化 1.6 特定领域的应用 2. 折线图局限性 3. 折线图代码实现 3.1 Python 源代码 3.2 折线图效果(网页显示) 1. 折线图…...
MATLAB绘图基础12:地理信息可视化
参考书:《 M A T L A B {\rm MATLAB} MATLAB与学术图表绘制》(关东升)。 12.地理信息可视化 12.1 地理散点图 地理散点图用于可视化地理坐标点分布的图形,适用于在地图上显示离散地理坐标点,每个点可以代表不同的实体、地点或其他类型的观测…...
C语言与C++
文件概念 在C语言中,文件是一个重要的概念,用于组织和存储数据。文件主要分为两类: 程序文件 :包含源代码、目标文件和可执行文件。 数据文件 :存储程序运行时读写的各类数据。 文件名通常由三部分组成:…...
C# 中的闭包
文章目录 前言一、闭包的基本概念二、匿名函数中的闭包1、定义和使用匿名函数2、匿名函数捕获外部变量3、闭包的生命周期 三、Lambda 表达式中的闭包1、定义和使用 Lambda 表达式2、Lambda 表达式捕获外部变量3、闭包的作用域 四、闭包的应用场景1、事件处理2、异步编程3、迭代…...
基于DockerCompose搭建Redis主从哨兵模式
linux目录结构 内网配置 哨兵配置文件如下,创建3个哨兵配置文件 # sentinel26379.conf sentinel26380.conf sentinel26381.conf 内容如下 protected-mode no sentinel monitor mymaster redis-master 6379 2 sentinel down-after-milliseconds mymaster 60000 s…...
UIP协议栈 TCP通信客户端 服务端,UDP单播 广播通信 example
文章目录 1. TCP通信 客户端(关键配置)2. TCP 服务端配置3. UDP 点播通信4. UDP 广播通信5. UIP_UDP_APPCALL 里边的处理example6. TCP数据处理 ,UIP_APPCALL调用的函数 UIP_APPCALL TCP的数据都在这个宏定义的函数里进行数据处理的 UDP 数据…...
LeetCode:226.翻转二叉树
跟着carl学算法,本系列博客仅做个人记录,建议大家都去看carl本人的博客,写的真的很好的! 代码随想录 LeetCode:226.翻转二叉树 给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 …...
Visual Studio 使用 GitHub Copilot 扩展
🎀🎀🎀【AI辅助编程系列】🎀🎀🎀 Visual Studio 使用 GitHub Copilot 与 IntelliCode 辅助编码Visual Studio 安装和管理 GitHub CopilotVisual Studio 使用 GitHub Copilot 扩展Visual Studio 使用 GitHu…...
Unity实现Root Motion动画的Navigation自动导航
Root motion动画可以将角色的根节点(通常是角色的骨盆或脚部)的运动直接应用到游戏对象上,从而实现角色的自然移动和旋转,避免出现脚底打滑的现象。采用Root motion动画的游戏对象,通常是重载了onAnimatorMove函数&…...
vulnhub靶场【DriftingBlues】之9 final
前言 靶机:DriftingBlues-6,IP地址192.168.1.66 攻击:kali,IP地址192.168.1.16 都采用虚拟机,网卡为桥接模式 主机发现 使用arp-scan -l或netdiscover -r 192.168.1.1/24 信息收集 使用nmap扫描端口 网站探测 访…...
Python连接和操作Elasticsearch详细指南
Python连接和操作Elasticsearch详细指南 一、服务器端配置1. 修改 Elasticsearch 配置文件2. 开放防火墙端口 二、本地 Python 连接 Elasticsearch1. 连接 Elasticsearch2. 索引操作3. 文档操作4. 搜索内容5. 聚合查询6. 批量操作 三、注意事项四、故障排除结论 Elasticsearch …...
JMeter 使用详解
JMeter 使用详解 Apache JMeter 是一款开源的性能测试工具,可用于对静态和动态资源(如 Web 应用、数据库、REST API 等)进行负载测试和性能测试。以下是 JMeter 的详细使用指南: 1. JMeter 安装 下载 JMeter: 从 Apac…...
[SZ901]程序固化工具速度对比
SZ901高速下载器提供程序固化工具,能够快速将bin文件烧写到FLASH中。 相对传统方式有以下优点 1,固化时间是传统方式的1/2 到1/5,flash,程序越大,,效果越明显 2,操作简单,自动脚本…...
类OCSP靶场-Kioptrix系列-Kioptrix Level 4
一、前情提要 二、实战打靶 1. 信息收集 1.1. 主机发现 1.2. 端口扫描 1.3.目录遍历 1.4. 敏感信息 2.漏洞发现 2.1.登录框万能密码 2.2.系统用户密码-ssh链接 2.3.mysql-udf提权 一、前情提要 kali黑客-利用searchsploit搜索exp一键化攻击-CSDN博客 一篇文章带你理…...
C++ ——— 类的 6 个默认成员函数之 取地址函数 以及 const取地址操作符重载函数
目录 前言 取地址函数 const 取地址操作符重载函数 前言 在前几章学习了类的 6 个默认成员函数中的 4 个函数,也是最重要的 4 个 C ——— 类的 6 个默认成员函数之 构造函数-CSDN博客 C ——— 类的 6 个默认成员函数之 析构函数_结构体构析函数-CSDN博客 C…...
【C语言】头文件”“和<>的详解
前言 作者在刚开始学C语言的时候,都是用的< >去引用头文件,但在学习STM32的时候发现,程序中大量使用" "去引用双引号。 那么二者有什么区别呢? 无论使用哪种方式,头文件的目的都是为了引用你需要的文件供你编程使…...
sql server 字符集和排序
英文: Latin1_General_CI_AS 中文:Chinese_PRC_CI_AS 影响字符存储,解释用户存在单字节字符类型(char,varchar等)里面的数据 字符排序规则(是否区分大小写等) 中国的用户一定要注意…...
【linux】shell(39)-定时任务
在 Linux 和 Unix 系统中,定时任务是通过 cron 服务 和 crontab 工具 实现的,它允许用户在指定的时间自动执行命令或脚本。本教程将深入介绍 crontab 的工作原理、配置、常见用法和注意事项,帮助你高效地管理自动化任务。 1. cron 和 crontab…...
C# 基本信息介绍
总目录 前言 对 C# 做一个基本信息介绍,让我们对 C# 有个基本的认识。 在进行本文的阅读之前,可以瞧瞧 编程基础知识简述 简单的入个门儿。 一、C# 1. C# 概述 C#是由微软公司发布的一种由C和C衍生出来的面向对象的编程语言。 2. C# 详细介绍 C#&am…...
告别机器人味:如何让ChatGPT写出有灵魂的内容
目录 ChatGPT的一些AI味道小问题 1.提供编辑指南 2.提供样本 3.思维链大纲 4.融入自己的想法 5.去除重复增加多样性 6.删除废话 ChatGPT的一些AI味道小问题 大多数宝子们再使用ChatGPT进行写作时,发现我们的老朋友ChatGPT在各类写作上还有点“机器人味”太重…...
ECharts柱状图-柱图38,附视频讲解与代码下载
引言: 在数据可视化的世界里,ECharts凭借其丰富的图表类型和强大的配置能力,成为了众多开发者的首选。今天,我将带大家一起实现一个柱状图图表,通过该图表我们可以直观地展示和分析数据。此外,我还将提供…...
SAP ALV选择列排序时弹出定义排序顺序窗口问题
需求场景 使用REUSE_ALV_GRID_DISPLAY_LVC生成ALV,发现一个问题:使用it_events的时候选择列排序时会弹出定义排序顺序窗口,如下图所示。(正常选择某一列再使用排序功能时会直接排序,不用再选择列) CLASS l…...
HTML零基础入门教学
目录 一. HTML语言 二. HTML结构 三. HTML文件基本结构 四. 准备开发环境 五. 快速生成代码框架 六. HTML常见标签 6.1 注释标签 6.2 标题标签:h1-h6 6.3 段落标签:p 6.4 换行标签:br 6.5 格式化标签 6.6 图片标签&a…...
AI-PR曲线
PR曲线 人工智能里面的一个小概念。 2.3 性能度量(查全率,查准率,F1,PR曲线与ROC曲线) 预测出来的是一个概率,不能根据概率来说它是正类还是负类,要有一个阈值。 查准率(Precision&…...
[创业之路-199]:《华为战略管理法-DSTE实战体系》- 3 - 价值转移理论与利润区理论
目录 一、价值转移理论 1.1. 什么是价值? 1.2. 什么价值创造 (1)、定义 (2)、影响价值创造的因素 (3)、价值创造的三个过程 (4)、价值创造的实践 (5&…...
问题解决: python 调用存储过程获取不到返回值
python 调用存储过程获取不到返回值 1. 检查存储过程是否有副作用(例如关闭结果集)2. 在 Python 代码中,确保在执行存储过程时按正确的顺序操作:3. 使用游标检查结果集 1. 检查存储过程是否有副作用(例如关闭结果集&am…...
AI前沿分析:Github Copilot 推出免费版本,AI + 编程更高效!
名人说:莫听穿林打叶声,何妨吟啸且徐行。—— 苏轼 Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 目录 一、GitHub Copilot:AI编程的“革命性”助力二、免费版本上线:AI编程的普及时代&…...
浅谈仓颉语言的优劣
仓颉语言,作为华为自研的新一代编程语言,以其高效、安全、现代化的特点,引起了广泛的关注。 仓颉语言的优势 高效并发 仓颉语言的一大亮点是其轻松并发的能力。它实现了轻量化用户态线程和并发对象库,使得高效并发变得轻松。仓颉…...
AI证件照制作 API 快速生成证件照
本文将介绍一种 AI证件照制作 API 对接说明,它是可以通过输入人像照片URL以及自己喜欢的模板来制作各种风格的证件照。 接下来介绍下 AI证件照制作 API 的对接说明。 申请流程 要使用 API,需要先到 AI证件照制作 API 对应页面申请对应的服务ÿ…...