【千问大模型API申请教程】

### 如何使用Python调用大模型API 以下是基于参考资料中的内容以及专业知识整理的关于如何通过Python调用百度大模型API的具体方法。 #### 非流式调用示例 非流式的调用方式适用于简单的文本生成需求。可以通过`completions`接口完成请求发送并获取响应数据[^3]。 ```python import requests def call_qwen_api_non_stream(api_key, secret_key, model="qwen-max", prompt="你好"): url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/completion/{model}" headers = { 'Content-Type': 'application/json' } access_token = get_access_token(api_key, secret_key) request_url = f"{url}?access_token={access_token}".format(model=model) payload = { "prompt": prompt, "temperature": 0.9, "top_p": 0.8, "max_tokens": 2048 } response = requests.post(request_url, json=payload, headers=headers) result = response.json() return result["result"] if "result" in result else None def get_access_token(api_key, secret_key): token_host = f"https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id={api_key}&client_secret={secret_key}" response = requests.get(token_host) if response: return response.json().get("access_token") ``` 上述代码展示了如何利用HTTP POST请求向大模型发起一次非流式的文本补全操作,其中包含了访令牌的申请过程。 #### 流式调用示例 对于更复杂的场景或者希望实时接收返回结果的情况,则可以选择流式调用来处理。这种方式允许程序逐步读取服务器传回的数据片段而不是等待整个回复完成后才解析全部内容。 ```python import websocket try: import thread except ImportError: import _thread as thread def on_message(ws, message): print(f"Received:{message}") def on_error(ws, error): print(error) def on_close(ws, close_status_code, close_msg): print("### closed ###") def on_open(ws): def run(*args): ws.send(json.dumps({ "prompt":"讲述一个未来世界的故事", "stream":True })) thread.start_new_thread(run, ()) if __name__ == "__main__": api_key = "<your_api_key>" secret_key = "<your_secret_key>" access_token = get_access_token(api_key, secret_key) websocket.enableTrace(True) ws_url = f"wss://ws.aip.baidubce.com/text generation/stream/?access_token={access_token}" ws = websocket.WebSocketApp(ws_url, on_message=on_message, on_error=on_error, on_close=on_close) ws.on_open = on_open ws.run_forever() ``` 此部分提供了另一种形式即WebSocket协议下的交互模式来演示流式传输的实际运用案例。 #### Django集成实例 如果计划在一个Web应用程序里嵌入这些功能的话,那么可以考虑采用Django框架作为后端服务基础架构之一,并按照如下步骤实施: 1. 创建一个新的视图函数用于接受来自用户的输入; 2. 将接收到的信息传递给之前定义好的API调用逻辑; 3. 把得到的结果反馈回去展示在页面上[^1]。 注意这里仅提供了一个大致方向性的指导思路而非完整的项目源码文件列表等内容说明。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值