ERNIE_utils.py 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. import requests
  2. import json
  3. def get_access_token():
  4. """
  5. 使用 API Key,Secret Key 获取access_token,替换下列示例中的应用API Key、应用Secret Key
  6. """
  7. url = "https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=gnwVXv96An9qMYqq9eWbeNqk&client_secret=mDsRQbCPsV4N7x28LbwkhTAaLmrrDnXk"
  8. url = "https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=Ok8QMe4qIQOAex0F9Gf1uns0&client_secret=6DjGGDdvhnBaEOMdSXAg02KxZnQhWpbd"
  9. payload = json.dumps("")
  10. headers = {
  11. 'Content-Type': 'application/json',
  12. 'Accept': 'application/json'
  13. }
  14. response = requests.request("POST", url, headers=headers, data=payload)
  15. return response.json().get("access_token")
  16. def main():
  17. _token = get_access_token()
  18. # _token = "24.93c9d66ffc94ffaef6c6c9d35770a5f5.2592000.1701242081.282335-37357318"
  19. url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/completions?access_token=" + _token
  20. # url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/xuanyuan_70b_chat?access_token=" + _token
  21. payload = json.dumps({
  22. "messages": [
  23. {
  24. "role": "user",
  25. "content": '''
  26. 今天是几号
  27. '''
  28. }
  29. ]
  30. })
  31. headers = {
  32. 'Content-Type': 'application/json'
  33. }
  34. response = requests.request("POST", url, headers=headers, data=payload)
  35. print(response.text)
  36. def chat(msg,token=None,api_url=None):
  37. if token is None:
  38. token = get_access_token()
  39. # _token = "24.93c9d66ffc94ffaef6c6c9d35770a5f5.2592000.1701242081.282335-37357318"
  40. if api_url is None:
  41. api_url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/completions"
  42. # api_url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/ernie-3.5-128k"
  43. url = api_url+"?access_token="+ token
  44. payload = json.dumps({
  45. "messages": [
  46. {
  47. "role": "user",
  48. "content": '''
  49. %s
  50. '''%msg
  51. }
  52. ],
  53. "stream":False
  54. })
  55. headers = {
  56. 'Content-Type': 'application/json'
  57. }
  58. response = requests.request("POST", url, headers=headers, data=payload)
  59. return response
  60. if __name__ == '__main__':
  61. main()