主流国产大模型(以华为盘古大模型和腾讯混元大模型为例)API调用接口的具体参数和使用方法,包括Python和C++的示例代码

发布于:2025-05-07 ⋅ 阅读:(19) ⋅ 点赞:(0)

以下是主流国产大模型(以华为盘古大模型和腾讯混元大模型为例)API调用接口的具体参数和使用方法,包括Python和C++的示例代码。

 

华为盘古大模型

API参数:

 

- model:模型名称,如`pangu-nlp-large`。

- messages:包含用户消息的列表,每个消息包含`content`字段。

- temperature:控制输出随机性的参数,范围0-1。

- max_tokens:最大输出长度,以token数计算。

 

Python示例代码:

 

```python

import requests

 

# API地址

url = "https://api.huaweicloud.com/nlp/v1/models/pangu-nlp-large/generate"

 

# 请求头(使用Token认证)

headers = {

    "Content-Type": "application/json",

    "X-Auth-Token": "YOUR_TOKEN"

}

 

# 请求体

data = {

    "messages": [

        {

            "content": "今天天气怎么样?"

        }

    ],

    "temperature": 0.5,

    "max_tokens": 100

}

 

# 发送POST请求

response = requests.post(url, headers=headers, json=data)

 

# 处理响应

if response.status_code == 200:

    result = response.json()

    print("生成结果:", result["output"])

else:

    print("请求失败,状态码:", response.status_code)

```

 

**C++示例代码(使用libcurl库):**

 

```cpp

#include <iostream>

#include <curl/curl.h>

#include <jsoncpp/json/json.h>

 

// 回调函数,用于接收响应数据

size_t write_callback(char* data, size_t size, size_t nmemb, std::string* response) {

    response->append(data, size * nmemb);

    return size * nmemb;

}

 

int main() {

    CURL* curl;

    CURLcode res;

    std::string response;

 

    // 初始化libcurl

    curl = curl_easy_init();

    if (!curl) {

        std::cerr << "curl初始化失败" << std::endl;

        return 1;

    }

 

    // API地址

    std::string url = "https://api.huaweicloud.com/nlp/v1/models/pangu-nlp-large/generate";

 

    // 请求头(使用Token认证)

    std::string headers[] = {

        "Content-Type: application/json",

        "X-Auth-Token: YOUR_TOKEN"

    };

 

    // 请求体

    Json::Value data;

    data["messages"] = Json::arrayValue;

    data["messages"].append(Json::Value("今天天气怎么样?"));

    data["temperature"] = 0.5;

    data["max_tokens"] = 100;

    std::string data_str = data.toStyledString();

 

    // 设置curl选项

    curl_easy_setopt(curl, CURLOPT_URL, url.c_str());

    curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);

    curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data_str.c_str());

    curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_callback);

    curl_easy_setopt(curl, CURLOPT_WRITEDATA, &response);

 

    // 发送POST请求

    res = curl_easy_perform(curl);

    if (res != CURLE_OK) {

        std::cerr << "请求失败:" << curl_easy_strerror(res) << std::endl;

    } else {

        // 处理响应

        Json::Value result;

        Json::Reader reader;

        if (reader.parse(response, result)) {

            std::cout << "生成结果:" << result["output"].asString() << std::endl;

        } else {

            std::cerr << "解析响应失败" << std::endl;

        }

    }

 

    // 清理

    curl_easy_cleanup(curl);

 

    return 0;

}

```

 

 腾讯混元大模型

 

API参数:

 

- model:模型版本,如`hunyuan-pro`。

- input:用户输入文本。

- temperature:控制输出随机性的参数,范围0-1。

- max_length:最大输出长度,以字符数计算。

 

Python示例代码:

 

```python

import requests

 

# API地址

url = "https://api.tencentcloud.com/hunyuan/v1/models/hunyuan-pro/generate"

 

# 请求头(使用签名认证)

headers = {

    "Content-Type": "application/json",

    "Authorization": "TC3-HMAC-SHA256 Credential=YOUR_SECRET_ID/YOUR_DATE/hunyuan/tc3_request, SignedHeaders=content-type;host, Signature=YOUR_SIGNATURE"

}

 

# 请求体

data = {

    "input": "你好,请问有什么可以帮助你的?",

    "temperature": 0.5,

    "max_length": 100

}

 

# 发送POST请求

response = requests.post(url, headers=headers, json=data)

 

# 处理响应

if response.status_code == 200:

    result = response.json()

    print("生成结果:", result["output"])

else:

    print("请求失败,状态码:", response.status_code)

```

 

C++示例代码(使用libcurl库):

 

```cpp

#include <iostream>

#include <curl/curl.h>

#include <jsoncpp/json/json.h>

 

// 回调函数,用于接收响应数据

size_t write_callback(char* data, size_t size, size_t nmemb, std::string* response) {

    response->append(data, size * nmemb);

    return size * nmemb;

}

 

int main() {

    CURL* curl;

    CURLcode res;

    std::string response;

 

    // 初始化libcurl

    curl = curl_easy_init();

    if (!curl) {

        std::cerr << "curl初始化失败" << std::endl;

        return 1;

    }

 

    // API地址

    std::string url = "https://api.tencentcloud.com/hunyuan/v1/models/hunyuan-pro/generate";

 

    // 请求头(使用签名认证)

    std::string headers[] = {

        "Content-Type: application/json",

        "Authorization: TC3-HMAC-SHA256 Credential=YOUR_SECRET_ID/YOUR_DATE/hunyuan/tc3_request, SignedHeaders=content-type;host, Signature=YOUR_SIGNATURE"

    };

 

    // 请求体

    Json::Value data;

    data["input"] = "你好,请问有什么可以帮助你的?";

    data["temperature"] = 0.5;

    data["max_length"] = 100;

    std::string data_str = data.toStyledString();

 

    // 设置curl选项

    curl_easy_setopt(curl, CURLOPT_URL, url.c_str());

    curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);

    curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data_str.c_str());

    curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_callback);

    curl_easy_setopt(curl, CURLOPT_WRITEDATA, &response);

 

    // 发送POST请求

    res = curl_easy_perform(curl);

    if (res != CURLE_OK) {

        std::cerr << "请求失败:" << curl_easy_strerror(res) << std::endl;

    } else {

        // 处理响应

        Json::Value result;

        Json::Reader reader;

        if (reader.parse(response, result)) {

            std::cout << "生成结果:" << result["output"].asString() << std::endl;

        } else {

            std::cerr << "解析响应失败" << std::endl;

        }

    }

 

    // 清理

    curl_easy_cleanup(curl);

 

    return 0;

}

```

注意事项:

- 认证方式:华为盘古大模型使用Token认证,腾讯混元大模型使用签名认证,请根据官方文档获取相应的认证信息。

- 参数调整:根据具体需求调整`temperature`、`max_tokens`或`max_length`等参数,以获得理想的输出结果。

- 依赖库:Python示例需要安装`requests`库,C++示例需要安装`libcurl`和`jsoncpp`库。

- 代码示例:以上代码仅供参考,实际使用中可能需要根据API文档进行相应调整。

 

 

python编程的基本知识点

python编程新手的引路人

 


网站公告

今日签到

点亮在社区的每一天
去签到