# AI 微笑救星

# 概览
生成式 AI 微笑救星接口登场，让苦瓜脸笑开颜变得轻而易举。这个好用的 AI 微笑救星生成器，把难过或毫无表情的脸转成开心、自然的微笑，前后不过是片刻功夫。背后是先进的生成式 AI，流程简单不费事，随手一张照片都能添上暖意与朝气。上传图片，让 AI 大显身手，悲伤的面孔立刻变成灿烂笑脸，分享到哪里，快乐就传到哪里。
AI 微笑救星生成器支持两种截然不同的笑容风格，让使用者对最终表情有更多掌控。
1. **smile_with_teeth_visible**
这个选项做出明亮欢快的笑容，牙齿自然露出。适合意气风发的人像照、社群媒体照片，以及想要温暖、外放气质的场合。
2. **closed_mouth_smile**
这个选项做出含蓄温柔的笑容，双唇轻闭。适合专业形象照、正式的个人档案，或想要沉静、自然表情的时候。

使用者可以轻松挑出最合这张照片、这份心情、这个用途的笑容类型，回回都能得到真实又讨喜的结果。
不论您是在修图、做有趣的内容，还是只想添一点阳光气息，生成式 AI 微笑救星都能让您把快乐散播出去，一次一个微笑。
上传一张脸部照片，按一下，笑容立刻到位。
![](https://plugins-media.makeupar.com/smb/blog/post/2024-03-22/5f25b0f7-5d43-421b-ae50-5def0de69f2a.jpg)
![](https://plugins-media.makeupar.com/smb/blog/post/2024-12-16/4f4397e0-9e87-429a-8e39-a9d399b6602b.jpg)
## 接入指南
本指南将带您走完全流程：
AI 微笑救星接口的流程：
**接口地址：** `/s2s/v2.0/task/ai-smile`
**需要鉴权：** `Authorization: Bearer YOUR_API_KEY`
**流程步骤：**
1. **准备图片上传：**
  - 准备好要上传的自拍照。
  - 调用 File 接口
`/s2s/v2.0/file`
 取得上传 URL 与对应的
`file_id`
。
  - 用提供的上传 URL 把自拍照上传上去。
2. **发起 AI 任务并取得 Task ID：**
  - 把
`file_id`
 连同选好的特效配置，通过 HTTP POST 请求送到
`/s2s/v2.0/task/ai-smile`
。
  - 响应会返回一个唯一的任务 ID，用于标识本次调用。
3. **轮询任务状态（持续检查）：**
  - 用取得的
`task_id`
 通过 HTTP GET 请求定期轮询任务状态（例如
`GET /s2s/v2.0/task/ai-smile/${task_id}`
）。
  - 持续留意：
    - `Task_status = "success"`
（处理完成）。
    - `Task_status = "error"`
（视情况排查或重试）。
  - 状态转为 success 后，按流程继续往下走。

这套规整的流程能顺畅对接用户输入、自动监控任务，并顺利取回结果。


---

1. 鉴权

- 请在请求头中以
**Bearer Token**
 方式带上您的 API 密钥：

```
Authorization: Bearer YOUR_API_KEY
```

API Key 可在 https://yce.makeupar.com/api-console/en/api-keys/ 获取。
1. 上传图片
您可以把文件直接上传到服务器，也可以在 AI 任务参数中提供有效的图片 URL。
  * 上传接口

```
POST /s2s/v2.0/file
```
如果您已有公开可访问的图片 URL，这一步可以跳过。



---

1. 创建 AI 微笑救星任务并轮询结果
图片和完整的特效参数备齐后即可创建任务。接口异步处理请求，您需要轮询任务状态，直到状态变为 `success` 或 `error`。
  * 创建任务接口

```
POST /s2s/v2.0/task/ai-smile
```
  * 轮询接口

```
GET /s2s/v2.0/task/ai-smile/{task_id}
```



---

## 文件规格与错误码
* AI 微笑救星规格

**支持的自拍视角**
仅支持单人图片。画面中须有一张清楚可见、尺寸足够大的脸——以长边 640 计算，脸部需超过 32 x 32 像素；拍摄角度的翻滚角须在正负 75 度以内、偏航角须在正负 90 度以内，以免人脸检测失败。
![](https://plugins-media.makeupar.com/strapi/assets/thumbnail_face_reshape_01_85c8ffc055.jpg)


---

* 支持的格式与尺寸

| AI 功能 | 支持尺寸 | 支持文件大小 | 支持格式 |
|  --- | --- | --- | --- |
| AI 微笑救星 | 长边 <= 4096 | < 10MB | jpg/jpeg/png/heic |

* 错误码

| 错误码 | 说明 |
|  --- | --- |
| EXCEED_MAX_FILESIZE | 输入文件超过大小上限。 |
| INVALID_PARAMETER | 一项或多项必填参数缺失、为空，或格式不当。 |
| ERROR_DOWNLOAD_IMAGE | 源图无法下载。 |
| ERROR_NO_FACE | 提供的图片中未检测到人脸。 |
| ERROR_INFERENCE | 推理流程失败，可能是流程问题、执行错误、编码错误，或输出图片缺失。 |
| UNKNOWN_INTERNAL_ERROR | 发生非预期的内部错误。 |

* 运行环境与依赖

| 示例代码语言 / 工具 | 建议运行时版本 |
|  --- | --- |
| cURL | - bash >= 3.2   - curl >= 7.58 (modern TLS/HTTP support)   - jq >= 1.6 (robust JSON parsing) |
| Node.js (JavaScript) | Node >= 18 (for global fetch) |
| JavaScript | - Chrome / Edge >= 80   - Firefox >= 74   - Safari >= 13.1 |
| PHP | PHP >= 7.4 (for modern TLS/compat), ext-curl (recommended) or allow_url_fopen=On + ext-openssl, ext-json |
| Python | Python >= 3.10 (for f-strings), requests >= 2.20.0 |
| Java | Java 11+ (for HttpClient), Jackson Databind >= 2.12.0 |



---

## 点数消耗
| AI 功能 | 消耗点数 |
|  --- | --- |
| AI 微笑救星 V1.0 | 1 |



---

License: Privacy policy

## Servers

```
https://yce-api-01.makeupar.com
```

## Security

### BearerAuthenticationV2

使用标准的 Bearer 鉴权。把您的 API 密钥放进请求头： `Authorization:Bearer YOUR_API_KEY`。请注意 'Bearer' 与 'YOUR_API_KEY' 之间有一个空格。

Type: http
Scheme: bearer

## Download OpenAPI description

 - [AI 微笑救星](https://docs.perfectcorp.com/_bundle/@l10n/zh-CN/reference/ai_smile.yaml)

## V1.0

 - [POST /s2s/v2.0/task/ai-smile](https://docs.perfectcorp.com/zh-cn/reference/ai_smile/v1.0/paths/~1s2s~1v2.0~1task~1ai-smile/post.md): AI 任务是异步处理的。功能支持 Webhook 时，优先用 Webhook 来接收完成通知。配置好您的 Webhook 端点、校验 Webhook 签名，收到 `success` 或 `error` 通知后，用收到的 `task_id` 查询任务结果。配置与校验的细节请见 [Webhook 接入指南](/develop/webhook)。 若功能不支持 Webhook，或您的接入方式用不了 We
 - [GET /s2s/v2.0/task/ai-smile/{task_id}](https://docs.perfectcorp.com/zh-cn/reference/ai_smile/v1.0/paths/~1s2s~1v2.0~1task~1ai-smile~1%7Btask_id%7D/get.md)
