当前位置:   article > 正文

文心一言Api 实现多轮对话(python)_前端 多轮对话怎么写

前端 多轮对话怎么写

1、首先定义一个空列表用来存放历史信息

message = []

2、将用户消息加入列表末尾

  1. message.append({
  2. "role": "user",
  3. "content": str
  4. })

3、将返回的消息加入列表末尾

  1. response = requests.request("POST", url, headers=headers, data=payload).json()
  2. message.append({
  3. "role": "assistant",
  4. "content": response['result']
  5. })

完整代码:

  1. import requests
  2. import json
  3. API_KEY = "xxx" # 填上你自己的API_KEY
  4. SECRET_KEY = "xxx" # 填上你自己的SECRET_KEY
  5. message = []
  6. def chat(str):
  7. url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/completions?access_token=" + get_access_token()
  8. message.append({
  9. "role": "user",
  10. "content": str
  11. })
  12. payload = json.dumps({
  13. "messages": message,
  14. "disable_search": False,
  15. "enable_citation": False
  16. })
  17. headers = {
  18. 'Content-Type': 'application/json'
  19. }
  20. response = requests.request("POST", url, headers=headers, data=payload).json()
  21. message.append({
  22. "role": "assistant",
  23. "content": response['result']
  24. })
  25. return response['result']
  26. def get_access_token():
  27. """
  28. 使用 AK,SK 生成鉴权签名(Access Token)
  29. :return: access_token,或是None(如果错误)
  30. """
  31. url = "https://aip.baidubce.com/oauth/2.0/token"
  32. params = {"grant_type": "client_credentials", "client_id": API_KEY, "client_secret": SECRET_KEY}
  33. return str(requests.post(url, params=params).json().get("access_token"))

效果

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号