当前位置:   article > 正文

怎么调用智谱的api生成个聊天机器人_智普 api key

智普 api key

为什么写这篇文章

之前写过一篇怎么调用文心一言api的文章了,一般来说,我不是很愿意做重复的工作,因为比较懒嘛,那为什么又写这篇文章呢?主要是文心一言申请api_key等还不是太方便,开通服务也把人绕的晕,而调用智谱就容易多了。

怎么获取Api key

首先访问智谱AI开放平台 (bigmodel.cn),进行注册或登录:

点击“开发工作台”:

点击“查看Api key”:

于是可看到我们的Api key了:

调用代码怎么写

调用代码如下:

  1. import tkinter as tk
  2. import zhipuai
  3. import time
  4. zhipuai.api_key = "" # 这个换成自己的api_key,就能运行了
  5. model_name = "chatglm_6b"
  6. temperature = 0.9
  7. top_p = 0.7
  8. incremental = True
  9. class ChatWindow(tk.Frame):
  10. def __init__(self, master=None, **kw):
  11. super().__init__(master=master, **kw)
  12. self.master = master
  13. self.chat_history = ""
  14. self.create_widgets()
  15. def create_widgets(self):
  16. self.chatlog = tk.Text(self.master, width=60, height=20)
  17. self.chatlog.pack(side=tk.TOP, padx=5, pady=5)
  18. self.chatlog.insert(tk.END, "AI: 你好,我是智能聊天机器人,有什么可以帮助您的吗?\n")
  19. self.chat_history += "AI: 你好,我是智能聊天机器人,有什么可以帮助您的吗?\n"
  20. self.inputbox = tk.Entry(self.master, width=50)
  21. self.inputbox.pack(side=tk.LEFT, padx=5, pady=5)
  22. self.sendbtn = tk.Button(self.master, text="发送", command=self.send_message)
  23. self.sendbtn.pack(side=tk.LEFT, padx=5, pady=5)
  24. def send_message(self):
  25. prompt_text = self.inputbox.get()
  26. self.inputbox.delete(0, tk.END)
  27. if not prompt_text:
  28. return
  29. # 调用智拍AI API生成回复
  30. prompt = [{"role":"user","content":prompt_text}]
  31. response = zhipuai.model_api.sse_invoke(
  32. model=model_name,
  33. prompt=prompt,
  34. temperature=temperature,
  35. top_p=top_p,
  36. incremental=incremental
  37. )
  38. # 将所有片段拼接为一段完整的回答
  39. response_text = ""
  40. for event in response.events():
  41. if event.event == "add":
  42. response_text += event.data
  43. elif event.event == "error" or event.event == "interrupted":
  44. self.chatlog.insert(tk.END, "Error: " + event.data + "\n")
  45. elif event.event == "finish":
  46. self.chat_history += "用户:" + prompt_text + "\n"
  47. self.chat_history += "AI:" + response_text + "\n\n" # 添加空行
  48. self.chatlog.delete('1.0', tk.END)
  49. self.chatlog.insert(tk.END, self.chat_history)
  50. self.chatlog.see(tk.END)
  51. self.chatlog.update()
  52. else:
  53. self.chatlog.insert(tk.END, event.data + "\n")
  54. if __name__ == "__main__":
  55. root = tk.Tk()
  56. root.geometry("400x350")
  57. root.title("智能聊天机器人")
  58. ChatWindow(master=root).pack(fill=tk.BOTH, expand=True)
  59. root.mainloop()

结果展示

结果展示视频如下:

用python调用大模型api接口,生成聊天机器人(简陋版)_哔哩哔哩_bilibili

共勉环节

这次就到这了,下次再见,与大家共勉。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/364147
推荐阅读
相关标签
  

闽ICP备14008679号