本文为您提供模型应用防火墙接口调用的示例代码。实际使用时,您可以替换成 SDK 中已经支持的任意接口。
调用前,请确保已经完成PHP 安装和初始化。
调用CheckLLMPrompt
接口可以判别输入的提示词是否合规。大模型应用防火墙检测并分析提示词内容,并返回对应内容的判别结果、处置动作和命中的内容。CheckLLMPrompt
相关参数的详细说明,可参考CheckLLMPrompt - 判别大模型提示词是否合规。
<?php error_reporting(E_ALL & ~E_DEPRECATED); require_once(__DIR__ . '/vendor/autoload.php'); $config = \Volcengine\Common\Configuration::getDefaultConfiguration() ->setAk("Your AK") // Access Key,用于身份验证 ->setSk("Your SK") // Secret Key,用于签名 ->setRegion("cn-beijing"); // 大模型应用防火墙所属地域对应的 ID $apiInstance = new \Volcengine\Waf\API\WAFApi( // If you want use custom http client, pass your client which implements GuzzleHttp\ClientInterface. // This is optional, GuzzleHttp\Client will be used as default. new GuzzleHttp\Client(), $config ); $checkLLMPromptRequest = new \Volcengine\Waf\Model\CheckLLMPromptRequest(); $checkLLMPromptRequest->setContent("请输入您想要校验的内容,文本内容或资源URL"); // 需要检测的内容 $checkLLMPromptRequest->setContentType(1); // 内容类型: 1-文本, 2-音频, 3-图片 $checkLLMPromptRequest->setHost("fd****.access.omni-shield.volces.com"); // 大模型应用防火墙生成的接入点域名 $checkLLMPromptRequest->setMsgClass(0); // 场景类型,当前默认为标准类型,填入 0 即可 $checkLLMPromptRequest->setRegion("cn-beijing"); // 大模型应用防火墙所属地域对应的 ID try { // 复制代码运行示例,请自行打印API返回值。 $checkLLMPromptResponse = $apiInstance->checkLLMPrompt($checkLLMPromptRequest); var_dump($checkLLMPromptResponse); } catch (Exception $e) { // 复制代码运行示例,请自行打印API错误信息。 // echo 'Exception when calling Api: ', $e->getMessage(), PHP_EOL; var_dump($e->getResponseBody()); }
调用QueryLLMGenerate
接口可以查询指定消息的大模型优化代答结果,您可以使用优化后的代答结果响应客户端用户的请求,以降低提示词攻击造成的安全风险。QueryLLMGenerate
相关参数的详细说明,可参考QueryLLMGenerate - 实时查询大模型生成结果。
<?php error_reporting(E_ALL & ~E_DEPRECATED); require_once(__DIR__ . '/vendor/autoload.php'); $config = \Volcengine\Common\Configuration::getDefaultConfiguration() ->setAk("Your AK") // Access Key,用于身份验证 ->setSk("Your SK") // Secret Key,用于签名 ->setRegion("cn-beijing"); // 大模型应用防火墙所属地域对应的 ID $apiInstance = new \Volcengine\Waf\API\WAFApi( // If you want use custom http client, pass your client which implements GuzzleHttp\ClientInterface. // This is optional, GuzzleHttp\Client will be used as default. new GuzzleHttp\Client(), $config ); $queryLLMGenerateRequest = new \Volcengine\Waf\Model\QueryLLMGenerateRequest(); $queryLLMGenerateRequest->setMsgID("328b91bc038749218b97417c73bf****"); // 需要查询的请求消息 ID $queryLLMGenerateRequest->setUseStream(false); // 设置是否返回流式结果,SDK 调用仅支持 false 非流式返回 try { // 复制代码运行示例,请自行打印API返回值。 $QueryLLMGenerateResponse = $apiInstance->queryLLMGenerate($queryLLMGenerateRequest); var_dump($QueryLLMGenerateResponse); } catch (Exception $e) { // 复制代码运行示例,请自行打印API错误信息。 // echo 'Exception when calling Api: ', $e->getMessage(), PHP_EOL; var_dump($e->getResponseBody()); }