package com.qmth.boot.core.ai.client;

import com.qmth.boot.core.ai.config.OcrApiConfiguration;
import com.qmth.boot.core.ai.model.AiConstants;
import com.qmth.boot.core.ai.model.ocr.OcrType;
import com.qmth.boot.core.retrofit.annotatioin.RetrofitClient;
import com.qmth.boot.core.retrofit.utils.SignatureInfo;
import okhttp3.MultipartBody;
import retrofit2.http.*;

/**
 * OCR应用服务接口
 */
@RetrofitClient(configuration = OcrApiConfiguration.class)
public interface OcrApiClient {

    /**
     * OCR识别图片
     *
     * @param signature 使用机构AK构造Secret类型签名
     * @param type      识别类型
     * @param image     待识别图片
     * @return
     */
    @Multipart
    @POST(AiConstants.OCR_IMAGE_PATH)
    String forImage(@Tag SignatureInfo signature, @Query("type") OcrType type, @Part MultipartBody.Part image);

}
