本文主要介绍如何基于阿里云百炼的应用中心快速创建RAG应用,并通过API/SDK低代码方式调用RAG应用进行文档问答的最佳实践。
创建应用
请参考0代码构建问答应用创建并发布应用。
获取应用ID
访问应用管理页面,获取应用ID。

调用应用
前提条件
- 您需要已获取API Key并配置API Key到环境变量。 
- 如果通过API/SDK调用应用,需要获取到应用ID。 
- 已安装最新版SDK:安装SDK。 
通过API/SDK调用应用
您需要将YOUR_APP_ID替换为已获取的应用ID,代码才能正常运行。
Python
import os
from http import HTTPStatus
from dashscope import Application
def call_agent_app():
    response = Application.call(app_id='YOUR_APP_ID',
                                prompt='阿里云百炼的业务空间是什么?如何使用业务空间?',
                                api_key=os.getenv("DASHSCOPE_API_KEY"),  # 若没有配置环境变量,请用阿里云百炼API Key将本行替换为:api_key="sk-xxx",
                                )
    if response.status_code != HTTPStatus.OK:
        print('request_id=%s, code=%s, message=%s\n' % (response.request_id, response.status_code, response.message))
    else:
        print('request_id=%s\n output=%s\n usage=%s\n' % (response.request_id, response.output, response.usage))
if __name__ == '__main__':
    call_agent_app()
Java
import com.alibaba.dashscope.app.*;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.NoApiKeyException;
public class Main{
      public static void callAgentApp()
            throws ApiException, NoApiKeyException, InputRequiredException {
        ApplicationParam param = ApplicationParam.builder()
            // 若没有配置环境变量,请用阿里云百炼API Key将下行替换为:.apiKey("sk-xxx")
            .apiKey(System.getenv("DASHSCOPE_API_KEY"))
            .appId("YOUR_APP_ID")
            .prompt("阿里云百炼的业务空间是什么?如何使用业务空间?")
            .build();
        Application application = new Application();
        ApplicationResult result = application.call(param);
        System.out.printf("requestId: %s, text: %s, finishReason: %s\n",
                result.getRequestId(), result.getOutput().getText(), result.getOutput().getFinishReason());
    }
    public static void main(String[] args) {
        try {
            callAgentApp();
        } catch (ApiException | NoApiKeyException | InputRequiredException e) {
            System.out.printf("Exception: %s", e.getMessage());
        }
        System.exit(0);
    }  
}curl
curl -X POST https://dashscope.aliyuncs.com/api/v1/apps/YOUR_APP_ID/completion \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
    "input": {
        "prompt": "阿里云百炼的业务空间是什么?如何使用业务空间?"
    },
    "parameters":  {},
    "debug": {}
}' --verbose
该文章对您有帮助吗?