命令行工具使用说明
1. 说明
tpcli
命令行工具提供通过命令行调用接口能力,例如:
- 打印签名示例
- 发起图片/文本/语音/视频调用
- 查询异步任务结果
- 批量跑数据
如果在接入过程中,遇到接口耗时异常,也可以通过命令行工具进行诊断(推荐在业务服务器上下载 linux 版本工具行进行诊断)。
2. 密钥下载
请在 控制台管理 - 数字证书
下载,得到 rsa_Key.zip
文件,解压到某一路径,稍后会用到私钥文件 rsa_private_key.pem
。
3. 命令行工具下载
4. 使用说明
私钥及命令行工具下载完成后,请按照以下步骤操作:
- 将私钥(
rsa_private_key.pem
)文件放在命令行工具同一路径下; - Mac & Linux 平台用户:赋予命令行工具可执行权限;
- Windows 平台用户:使用 命令提示符 或
PowerShell
以命令行方式运行(双击可执行文件无法使用); - 根据需要提交的请求类型,参考下述章节中的示例执行命令(下方命令示例中均运行
tpcli
,请替换为相应版本和平台的命令行名称)。
4.1 签名示例
./tpcli --action=sign \
--key=./rsa_private_key.pem \
--sid=<sid>
输出示例:
| TIMESTAMP | <timestamp>
| NONCE | <nonce>
| SIGNATURE | <signature>
参数说明:
参数 | 说明 |
---|---|
key | 私钥路径 |
sid | 应用 ID(SID) |
4.2 同步图片识别(文件链接)
./tpcli --action=image-url \
--key=./rsa_private_key.pem \
--sid=<sid> \
--host='api.open.tuputech.com' \
--trace \
--url='<文件链接>'
参数说明:
参数 | 说明 |
---|---|
key | 私钥路径 |
sid | 应用 ID(SID) |
host | 接口域名,图片建议使用 api.open.tuputech.com |
trace | 打印耗时诊断信息 |
url | 图片文件链接(需要可以通过公网访问) |
4.3 同步文本识别
./tpcli --action=sync-text \
--key=./rsa_private_key.pem \
--sid=<sid> \
--host='api.text.tuputech.com' \
--trace \
--text='<文本内容>'
参数说明:
参数 | 说明 |
---|---|
key | 私钥路径 |
sid | 应用 ID(SID) |
host | 接口域名,文本建议使用 api.text.tuputech.com |
trace | 打印耗时诊断信息 |
text | 文本内容 |
4.4 同步语音识别(文件链接)
./tpcli --action=sync-speech \
--key=./rsa_private_key.pem \
--sid=<sid> \
--host='api.speech.tuputech.com' \
--trace \
--url='<文件链接>'
参数说明:
参数 | 说明 |
---|---|
key | 私钥路径 |
sid | 应用 ID(SID) |
host | 接口域名,语音建议使用 api.speech.tuputech.com |
trace | 打印耗时诊断信息 |
url | 语音文件链接(需要可以通过公网访问) |
4.5 提交异步语音文件识别任务(文件链接)
./tpcli --action=async-speech \
--key=./rsa_private_key.pem \
--sid=<sid> \
--host='api.speech.tuputech.com' \
--trace \
--url='<文件链接>' \
--callback='<回调地址>'
参数说明:
参数 | 说明 |
---|---|
key | 私钥路径 |
sid | 应用 ID(SID) |
host | 接口域名,语音建议使用 api.speech.tuputech.com |
trace | 打印耗时诊断信息 |
url | 语音文件链接(需要可以通过公网访问) |
callback | 回调地址(需要可以通过公网访问,如无可用地址,可以使用 http://api.open.tuputech.com/example/callback?id=<sid> 进行调试) |
4.6 提交异步语音流识别任务(流地址)
./tpcli --action=async-speech-stream \
--key=./rsa_private_key.pem \
--sid=<sid> \
--host='api.speech.tuputech.com' \
--trace \
--url='<语音流地址链接>' \
--callback='<回调地址>'
参数说明:
参数 | 说明 |
---|---|
key | 私钥路径 |
sid | 应用 ID(SID) |
host | 接口域名,语音建议使用 api.speech.tuputech.com |
trace | 打印耗时诊断信息 |
url | 语音流地址链接(需要可以通过公网访问) |
callback | 回调地址(需要可以通过公网访问,如无可用地址,可以使用 http://api.open.tuputech.com/example/callback?id=<sid> 进行调试) |
4.7 同步视频识别(文件链接)
./tpcli --action=sync-video-url \
--key=./rsa_private_key.pem \
--sid=<sid> \
--host='api.video.tuputech.com' \
--trace \
--interval=1 \
--url='<文件链接>'
参数说明:
参数 | 说明 |
---|---|
key | 私钥路径 |
sid | 应用 ID(SID) |
host | 接口域名,视频建议使用 api.video.tuputech.com |
trace | 打印耗时诊断信息 |
interval | 截图时间间隔(单位秒) |
url | 视频文件链接(需要可以通过公网访问) |
4.8 提交异步视频文件识别任务(文件链接)
./tpcli --action=async-video \
--key=./rsa_private_key.pem \
--sid=<sid> \
--host='api.video.tuputech.com' \
--trace \
--interval=1 \
--audio=false \
--url='<文件链接>' \
--callback='<回调地址>'
参数说明:
参数 | 说明 |
---|---|
key | 私钥路径 |
sid | 应用 ID(SID) |
host | 接口域名,视频建议使用 api.video.tuputech.com |
trace | 打印耗时诊断信息 |
interval | 截图时间间隔(单位秒) |
audio | 是否开启语音识别 |
url | 视频文件链接(需要可以通过公网访问) |
callback | 回调地址(需要可以通过公网访问,如无可用地址,可以使用 http://api.open.tuputech.com/example/callback?id=<sid> 进行调试) |
4.9 提交异步视频流识别任务(流地址)
./tpcli --action=async-video-stream \
--key=./rsa_private_key.pem \
--sid=<sid> \
--host='api.video.tuputech.com' \
--trace \
--interval=1 \
--fragment=10 \
--audio=false \
--url='<视频流地址链接>' \
--callback='<回调地址>'
参数说明:
参数 | 说明 |
---|---|
key | 私钥路径 |
sid | 应用 ID(SID) |
host | 接口域名,视频建议使用 api.video.tuputech.com |
trace | 打印耗时诊断信息 |
interval | 截图时间间隔(单位秒) |
fragment | 视频流回调时间间隔(单位秒) |
audio | 是否开启语音识别 |
url | 视频文件链接(需要可以通过公网访问) |
callback | 回调地址(需要可以通过公网访问,如无可用地址,可以使用 http://api.open.tuputech.com/example/callback?id=<sid> 进行调试) |
4.10 新增图片名单库
./tpcli \
--key=./rsa_private_key.pem \
--sid=<sid> \
--action=management-create-image-library \
--name=<name> \
--trace
参数说明:
参数 | 说明 |
---|---|
key | 私钥路径 |
sid | 应用 ID(SID) |
host | 接口域名,建议使用 api.open.tuputech.com |
name | 图片名单库名称 |
trace | 打印耗时诊断信息 |
4.11 指定名单添加图片
./tpcli \
--key=./rsa_private_key.pem \
--sid=<sid> \
--action=management-create-image-by-url \
--libraryId=<libraryId> \
--url=<url-0>,<url-1> \
--name=<name-0>,<name-1> \
--trace
参数说明:
参数 | 说明 |
---|---|
key | 私钥路径 |
sid | 应用 ID(SID) |
host | 接口域名,建议使用 api.open.tuputech.com |
libraryId | 图片名单 ID |
name | 图片名称,若有多个用英文逗号分隔 |
url | 图片链接,若有多个用英文逗号分隔 |
trace | 打印耗时诊断信息 |
4.12 新增文本名单库
./tpcli \
--key=./rsa_private_key.pem \
--sid=<sid> \
--action=management-create-thesaurus \
--name=<name> \
--label=<label> \
--trace
参数说明:
参数 | 说明 |
---|---|
key | 私钥路径 |
sid | 应用 ID(SID) |
host | 接口域名,建议使用 api.open.tuputech.com |
name | 文本名单库名称 |
label | 文本名单库标签 |
trace | 打印耗时诊断信息 |
4.13 指定名单添加词条
./tpcli \
--key=./rsa_private_key.pem \
--sid=<sid> \
--action=management-create-keyword \
--libraryId=<libraryId> \
--text=<text-0>,<text-1> \
--trace
参数说明:
参数 | 说明 |
---|---|
key | 私钥路径 |
sid | 应用 ID(SID) |
host | 接口域名,建议使用 api.open.tuputech.com |
libraryId | 文本名单 ID |
text | 词条内容,若有多个用英文逗号分隔 |
trace | 打印耗时诊断信息 |
5. 批量跑数据
5.1 准备数据
建议将图片/语音/视频链接,按照每行一个链接的方式写入文件;文本按照每行一段文字(无换行)写入文件,例如:
data.txt
https://sample.com/image-1.png
https://sample.com/image-2.png
https://sample.com/image-3.png
https://sample.com/image-4.png
texts.txt
文本内容 1(无换行)
文本内容 2(无换行)
文本内容 3(无换行)
文本内容 4(无换行)
5.2 准备脚本
注意 url 需要使用引号包裹,以免意外截断;如果是从 xlsx2csv 等命令转换而来的 url,注意有无不可见的字符
Mac & Linux
for i in `cat data.txt`
do
# $i 代表第 n 行数据
echo $i
./tpcli ... --url=$i
done
Windows
%%i
代表第 n 行数据
@echo off
set target=''
for /f "delims=" %%i in (data.txt) do (
echo %%i
tpcli.exe ... --url=%%i
)
pause
6. 耗时诊断
| TRACE | TotalTime: 2.368539716s [DNSLookup: 6.693305ms, ConnTime: 18.576307ms,
TCPConnTime: 11.626161ms, ServerTime: 2.349827143s, ResponseTime: 193.113µs]
在输出结果前,会打印诊断信息(以 TRACE
开头)。相关说明如下:
TotalTime
:接口调用总耗时DNSLookup
:DNS 解析耗时ConnTime
:建立 HTTP 链接耗时TCPConnTime
:建立 TCP 链接耗时ServerTime
:服务器处理耗时ResponseTime
:响应结果接收耗时