#coding:utf8 import requests import time import traceback import json agent_id = "7458183497300492338" url = "https://api.coze.cn/v3/chat" Authorization = "Bearer pat_XXlExeHd1loVyHY1kV7Z38GjBERfmvOAvhfxCtXSYLOzNtqYXBqd9Sh3BYwJJzjw" user_id = "2103446848" headers = {"Authorization":Authorization, "Content-Type":"application/json"} def chat_agent(msg,retry_time=3): for _ in range(retry_time): try: data_raw = {"bot_id":agent_id, "user_id":user_id, "stream":True, "auto_save_history":True, "additional_messages":[ { "role":"user", "content":msg, "content_type":"text" } ]} resp = requests.post(url,headers=headers,json=data_raw,timeout=60) _data = resp.content.decode("utf-8") return decode_msg(_data) except Exception as e: traceback.print_exc() time.sleep(1) msg_list_url = "https://api.coze.cn/v3/chat/message/list" def get_msg_list(conversation_id,chat_id,retry_time=3): for _ in range(retry_time): try: data_raw = {"conversation_id":conversation_id, "chat_id":chat_id} resp = requests.post(msg_list_url,headers=headers,json=data_raw) _data = _result.content.decode("utf-8") return decode_msg(_data) except Exception as e: traceback.print_exc() time.sleep(1) def decode_msg(content): list_msg = content.split("\n\n") response = "" for msg in list_msg: try: list_line = msg.split("\n") if len(list_line) ==2: msg_type = list_line[0] msg_data = json.loads(list_line[1][5:]) if msg_type=="event:conversation.message.delta": response += msg_data.get("content") except Exception as e: pass return response if __name__ == '__main__': msg = ''' 上海市青浦区华新镇社区事务受理服务中心的完整名称和统一信用代码是多少,还有对齐原因,以json格式给出准确的结果 ''' _result = chat_agent(msg) print(_result) # _result = get_msg_list('7458566549444739098','7458566549444722714') # print(_result.content.decode("utf-8"))