mirror of
https://gitee.com/Zhaoxin59/my-chat_-server.git
synced 2026-02-14 09:31:49 +08:00
update
This commit is contained in:
144
third/include/aip-cpp-sdk/machine_translation.h
Normal file
144
third/include/aip-cpp-sdk/machine_translation.h
Normal file
@ -0,0 +1,144 @@
|
||||
/**
|
||||
* Copyright (c) 2017 Baidu.com, Inc. All Rights Reserved
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
|
||||
* an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations under the License.
|
||||
*
|
||||
* @author baidu aip
|
||||
*/
|
||||
|
||||
#ifndef __AIP_MACHINE_TRANSLATION_H__
|
||||
#define __AIP_MACHINE_TRANSLATION_H__
|
||||
|
||||
#include "base/base.h"
|
||||
|
||||
namespace aip {
|
||||
|
||||
class Machinetranslation : public AipBase
|
||||
{
|
||||
public:
|
||||
|
||||
std::string _pictrans_v1 =
|
||||
"https://aip.baidubce.com/file/2.0/mt/pictrans/v1";
|
||||
std::string _texttrans_v1 =
|
||||
"https://aip.baidubce.com/rpc/2.0/mt/texttrans/v1";
|
||||
std::string _texttrans_with_dict_v1 =
|
||||
"https://aip.baidubce.com/rpc/2.0/mt/texttrans-with-dict/v1";
|
||||
std::string _doc_translation_create_v2 =
|
||||
"https://aip.baidubce.com/rpc/2.0/mt/v2/doc-translation/create";
|
||||
std::string _doc_translation_query_v2 =
|
||||
"https://aip.baidubce.com/rpc/2.0/mt/v2/doc-translation/query";
|
||||
std::string _speech_translation_v2 =
|
||||
"https://aip.baidubce.com/rpc/2.0/mt/v2/speech-translation";
|
||||
|
||||
Machinetranslation(const std::string & app_id, const std::string & ak, const std::string & sk)
|
||||
: AipBase(app_id, ak, sk)
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* 文本翻译-通用版
|
||||
* 接口使用文档链接: https://ai.baidu.com/ai-doc/MT/4kqryjku9
|
||||
*/
|
||||
Json::Value texttrans_v1(
|
||||
std::string const &from,
|
||||
std::string const &to,
|
||||
std::string const &q,
|
||||
const Json::Value & options)
|
||||
{
|
||||
Json::Value data;
|
||||
data["from"] = from;
|
||||
data["to"] = to;
|
||||
data["q"] = q;
|
||||
merge_json(data, options);
|
||||
|
||||
Json::Value result = this->request_com(_texttrans_v1, data);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 文本翻译-词典版
|
||||
* 接口使用文档链接: https://ai.baidu.com/ai-doc/MT/nkqrzmbpc
|
||||
*/
|
||||
Json::Value texttrans_with_dict_v1(
|
||||
std::string const &from,
|
||||
std::string const &to,
|
||||
std::string const &q,
|
||||
const Json::Value & options)
|
||||
{
|
||||
Json::Value data;
|
||||
data["from"] = from;
|
||||
data["to"] = to;
|
||||
data["q"] = q;
|
||||
merge_json(data, options);
|
||||
|
||||
Json::Value result = this->request_com(_texttrans_with_dict_v1, data);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 文档翻译
|
||||
* 接口使用文档链接: https://ai.baidu.com/ai-doc/MT/Xky9x5xub
|
||||
*/
|
||||
Json::Value doc_translation_create_v2(
|
||||
std::string const &from,
|
||||
std::string const &to,
|
||||
Json::Value & options)
|
||||
{
|
||||
Json::Value data;
|
||||
data["from"] = from;
|
||||
data["to"] = to;
|
||||
merge_json(data, options);
|
||||
|
||||
Json::Value result =
|
||||
this->request_com(_doc_translation_create_v2, data);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 文档翻译-文档状态查询
|
||||
* 接口使用文档链接: https://ai.baidu.com/ai-doc/MT/Xky9x5xub
|
||||
*/
|
||||
Json::Value doc_translation_query_v2(
|
||||
std::string const &id)
|
||||
{
|
||||
Json::Value data;
|
||||
data["id"] = id;
|
||||
Json::Value result = this->request_com(_doc_translation_query_v2, data);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 语音翻译
|
||||
* 接口使用文档链接: https://ai.baidu.com/ai-doc/MT/el4cmi76f
|
||||
*/
|
||||
Json::Value speech_translation_v2(
|
||||
std::string const &from,
|
||||
std::string const &to,
|
||||
std::string const &voice,
|
||||
std::string const &format)
|
||||
{
|
||||
Json::Value data;
|
||||
data["from"] = from;
|
||||
data["to"] = to;
|
||||
data["voice"] = base64_encode(voice.c_str(), (int) voice.size());
|
||||
data["format"] = format;
|
||||
Json::Value result =
|
||||
this->request_com(_speech_translation_v2, data);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
};
|
||||
}
|
||||
#endif
|
||||
Reference in New Issue
Block a user