【教程】如何用Python调用百度的千帆大模型?

登录管理后台

首先,先去千帆大模型管理中心(https://console.bce.baidu.com/qianfan/overview),然后就会来到这个界面(没账号的要注册):

建议实名了再使用

新建应用

然后点击应用接入

然后点击创建应用

跟着图片操作一下

选择模型

在这里选一下自己的模型

在线测试

这里已经讲的很详细了,但是如果要对话就必须要自己加代码,很麻烦,所以我小改了一下代码,让他更好用

对话代码

代码如下(应该没Bug,有Bug说一下):

import requests  
import json  
  
API_KEY = "填上自己的"  
SECRET_KEY = "填上自己的"  

# 这里都可以按照官方文档修改,改炸了不管
payload = {  
    "user_id": "python",  
    "messages": [],  
    "system": "这里是AI设定,不用可以删掉",  
    "disable_search": False,  
    "enable_citation": False  
    }

def add_message(role, content):  
    message = {  
        "role": role,  
        "content": content  
    }
    payload["messages"].append(message)   
def main():  
    url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/completions?access_token=" + get_access_token()  
      
    
    headers = {  
        'Content-Type': 'application/json'  
    }
    while True:
        # 获取用户输入的话
        user_input = input("你:")  

        # 存起来,让AI可以联系上下文
        add_message("user", user_input)

        # 合成JSON
        json_payload = json.dumps(payload)  

        # 发送请求
        response = requests.request("POST", url, headers=headers, data=json_payload)  
        result = response.json().get("result")  # 提取并打印AI的回复  

        print("AI:"+result)

        # 这里是检测到“终止”自动关闭程序,不要可以把整个if删掉
        if "TERMINATE" in result:
            print("正在终止程序..")
            exit()

        # 把AI说的话也存成上下文
        add_message("assistant", result) 
      
def get_access_token():  # 这里是获取token一般不用管
    """  
    使用 AK,SK 生成鉴权签名(Access Token)  
    :return: access_token,或是None(如果错误)  
    """  
    url = "https://aip.baidubce.com/oauth/2.0/token"  
    params = {"grant_type": "client_credentials", "client_id": API_KEY, "client_secret": SECRET_KEY}  
    return str(requests.post(url, params=params).json().get("access_token"))  
  
if __name__ == '__main__':  
    main()
  • 10
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值