tsx81429 发表于 2026-2-26 03:44:46

【Python】我的第一个文心一言API调用

媒介

我的第一个python对接文心一言开辟步伐
从注册API到调用API的过程
提示:以下是本篇文章正文内容,下面案例可供参考
一、注册百度千帆大模子平台

1、注册账号,注册时按个人或企业选择创建

地点:https://console.bce.baidu.com/qianfan/overview
https://dis.qidao123.com/imgproxy/aHR0cHM6Ly9pLWJsb2cuY3NkbmltZy5jbi9ibG9nX21pZ3JhdGUvMTY2OTg0ZmM1YzMzYTgwMThhZmIxZWIwNmNmYTJkZWMucG5n
2、创建应用

https://dis.qidao123.com/imgproxy/aHR0cHM6Ly9pLWJsb2cuY3NkbmltZy5jbi9ibG9nX21pZ3JhdGUvOTUyYTAzMDhhYzQ5ZWI1ZjA1NGQ5OWEyNTE2YmUyNjYucG5n
填写对应信息后确定即可
https://dis.qidao123.com/imgproxy/aHR0cHM6Ly9pLWJsb2cuY3NkbmltZy5jbi9ibG9nX21pZ3JhdGUvMWFhNTk5MmI5ZjVhOGFkMzYyMjM4MThhZmU3YzQzNzAucG5n
点击应用详情查察
API Key:和Secret Key,供后续调用使用
https://dis.qidao123.com/imgproxy/aHR0cHM6Ly9pLWJsb2cuY3NkbmltZy5jbi9ibG9nX21pZ3JhdGUvY2QyMzA0Y2ZkYzljYzZlZTE5YjEyN2ViN2E1MGJmOTIucG5n
3、明白模子收费规则

找到计费管理,查察收费详情代价一栏,¥0元/千tokens 代表的是免费,后续调用可以调用免费的模子即可,其他功能模子具体信息请见API列表
我这里使用的是ERNIE-Speed-8K
https://dis.qidao123.com/imgproxy/aHR0cHM6Ly9pLWJsb2cuY3NkbmltZy5jbi9ibG9nX21pZ3JhdGUvMDlmMDUxNWQwODc3ZGM1OWVmNjNlZmM5ZDdjZTFkZjUucG5n
二、Python调用模子

1、找到对应调用方法

API文档中央
https://dis.qidao123.com/imgproxy/aHR0cHM6Ly9pLWJsb2cuY3NkbmltZy5jbi9ibG9nX21pZ3JhdGUvZjJjMWY4Yzk4ZGIwOTYyYmViOGI3ZjE2ZDE2MWIxYzQucG5n
2、查察默认调用文档

https://dis.qidao123.com/imgproxy/aHR0cHM6Ly9pLWJsb2cuY3NkbmltZy5jbi9ibG9nX21pZ3JhdGUvZDc4YTNiZDMwODhlMGE4MzIxNGNmYzIyZmNhYjYzMTkucG5n
3、选择python对应方法

代码示比方下:(应用API Key、应用Secret Key请放本身的密钥)
import requests
import json

def get_access_token():
    """
    使用 API Key,Secret Key 获取access_token,替换下列示例中的应用API Key、应用Secret Key
    """

    url = "https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=fEuMu12344448u9&client_secret=WYHqD123435yfINo7s"

    payload = json.dumps("")
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json'
    }

    response = requests.request("POST", url, headers=headers, data=payload)
    return response.json().get("access_token")

def main():
    url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/ernie_speed?access_token=" + get_access_token()

    payload = json.dumps({
      "messages": [
            {
                "role": "user",
                "content": "今日热点信息"
            }
      ]
    })
    headers = {
      'Content-Type': 'application/json'
    }

    response = requests.request("POST", url, headers=headers, data=payload)

    print(response.text)

if __name__ == '__main__':
    main()
2、标准效果体现

C:\Users\PUB\AppData\Local\Programs\Python\Python38-32\python.exe D:\2024python\信息推送\今日热点新闻.py
{"id":"as-j87wn6fsab","object":"chat.completion","created":1717123359,"result":"今日热点信息涵盖多个领域,以下是一些可能正在引起广泛关注的热点信息:\n\n1. 疫情防控:新冠病毒的新变异株及其传播情况,各国采取的防控措施,疫苗接种进展等。\n2. 经济发展:全球及国内的经济数据,货币政策调整,行业发展趋势等。\n3. 社会事件:重大交通事故、自然灾害等突发事件,以及与之相关的救援和重建工作。\n4. 科技进展:新技术、新产品的发布,人工智能、区块链、元宇宙等前沿科技的最新动态。\n5. 娱乐八卦:娱乐圈的热门事件、明星绯闻、新电影/电视剧的动态等。\n6. 教育政策:新的教育政策、教育改革动态以及高考、中考等重要考试的相关信息。\n7. 国际关系:各国间的政治、经济、军事关系,国际热点问题的最新进展等。\n\n以上仅为一些可能正在引起广泛关注的热点信息,具体请关注官方媒体或新闻网站以获取更准确、全面的信息。","is_truncated":false,"need_clear_history":false,"usage":{"prompt_tokens":3,"completion_tokens":194,"total_tokens":197}}

进程已结束,退出代码0
3、格式化返回效果

将 response.text 通过 json 举行转换
代码如下
import requests
import json

def get_access_token():
    """
    使用 API Key,Secret Key 获取access_token,替换下列示例中的应用API Key、应用Secret Key
    """

    url = "https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=fEuMuWS5RBeRfSm123123ap8u9&client_secret=WYHqDsfu5Wqv87QP123yfINo7s"

    payload = json.dumps("")
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json'
    }

    response = requests.request("POST", url, headers=headers, data=payload)
    return response.json().get("access_token")

def main():
    url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/ernie_speed?access_token=" + get_access_token()

    payload = json.dumps({
      "messages": [
            {
                "role": "user",
                "content": "今日热点信息"
            }
      ]
    })
    headers = {
      'Content-Type': 'application/json'
    }

    response = requests.request("POST", url, headers=headers, data=payload)

    # print(response.text)
    data = json.loads(response.text)
    print(data['result'])

if __name__ == '__main__':
    main()
4、格式后效果体现

代码如下(示例):
C:\Users\PUB\AppData\Local\Programs\Python\Python38-32\python.exe D:\2024python\信息推送\今日热点新闻.py
今日热点信息包括但不限于以下几个方面:

1. 国际形势:朝鲜和韩国领导人最近发表的联合声明缓和了紧张局势,美韩联合军演引发的地区安全担忧有所缓解。同时,美国通胀数据降温也为市场带来乐观情绪。此外,俄乌局势仍然紧张,双方仍在持续冲突。
2. 科技创新:人工智能聊天机器人ChatGPT近期受到广泛关注,其应用场景广泛并具备强大的能力,如语言交流、自动化客服等。另外,元宇宙的爆发也是一个重要的科技趋势,它将虚拟世界与现实世界融合,改变了人们的社交方式和娱乐方式。同时,自动驾驶技术的发展也在推动汽车产业变革。
3. 社会热点:国内旅游市场正在迅速复苏,五一假期的旅游数据表现出强劲的增长势头。此外,高校毕业生就业问题受到广泛关注,各地政府正在积极采取措施促进就业。同时,养老问题也是社会关注的热点话题之一,特别是在我国人口老龄化日益严重的情况下。各地也出台了一系列养老金政策来应对这一问题。

进程已结束,退出代码0
总结

1、先学习模子的调用接口文档,根据本身必要使用对应的模子
2、每个模子都对应有使用方法,直接拿来先测试使用,然后根据实际业务应用到业务场景中
页: [1]
查看完整版本: 【Python】我的第一个文心一言API调用