当前位置:   article > 正文

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

智谱ai api key

为什么写这篇文章

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

怎么获取Api key

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

点击“开发工作台”:

点击“查看Api key”:

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

调用代码怎么写

调用代码如下:

版本1:

  1. from zhipuai import ZhipuAI
  2. def get_ai_response(prompt_text):
  3. client = ZhipuAI(api_key="")
  4. # api_key换成自己的api_key即可
  5. response = client.chat.completions.create(
  6. model="glm-4",
  7. messages=[
  8. {
  9. "role": "user",
  10. "content": prompt_text
  11. }
  12. ],
  13. top_p=0.7,
  14. temperature=0.95,
  15. max_tokens=1024,
  16. stream=True,
  17. )
  18. # 打印用户的提问
  19. # print(prompt_text)
  20. # 在循环中逐次打印回复内容,并在每条回复后面添加换行符
  21. for chunk in response:
  22. for choice in chunk.choices:
  23. print(choice.delta.content, end="", flush=True) # 移除换行符,使得内容连在一起
  24. print("\n") # 在所有回复结束后添加一个换行符
  25. def main():
  26. while True:
  27. prompt_text = input("请输入您的问题或输入'退出'结束对话:")
  28. if prompt_text.lower() == "退出":
  29. break
  30. get_ai_response(prompt_text)
  31. if __name__ == "__main__":
  32. main()

版本2:

  1. import tkinter as tk
  2. from tkinter import scrolledtext, messagebox
  3. from threading import Thread
  4. from zhipuai import ZhipuAI
  5. def get_ai_response_in_thread(prompt_text, text_widget):
  6. try:
  7. client = ZhipuAI(api_key="")
  8. response = client.chat.completions.create(
  9. model="glm-4",
  10. messages=[
  11. {
  12. "role": "user",
  13. "content": prompt_text
  14. }
  15. ],
  16. top_p=0.7,
  17. temperature=0.95,
  18. max_tokens=1024,
  19. stream=True,
  20. )
  21. # 在GUI中显示响应
  22. for chunk in response:
  23. for choice in chunk.choices:
  24. text_widget.insert(tk.END, choice.delta.content)
  25. text_widget.see(tk.END) # 滚动到最后
  26. text_widget.update_idletasks() # 强制更新GUI
  27. except Exception as e:
  28. messagebox.showerror("Error", str(e))
  29. def on_submit():
  30. prompt_text = input_entry.get()
  31. if prompt_text.lower() == "退出":
  32. root.destroy()
  33. else:
  34. thread = Thread(target=get_ai_response_in_thread, args=(prompt_text, output_text))
  35. thread.start()
  36. root = tk.Tk()
  37. root.title("ZhipuAI Chatbot")
  38. input_label = tk.Label(root, text="请输入您的问题或输入'退出'结束对话:")
  39. input_label.pack(pady=10)
  40. input_entry = tk.Entry(root, width=50)
  41. input_entry.pack()
  42. submit_button = tk.Button(root, text="提交", command=on_submit)
  43. submit_button.pack(pady=10)
  44. output_scroll = scrolledtext.ScrolledText(root, height=20, width=50)
  45. output_text = output_scroll
  46. output_scroll.pack(pady=10, expand=True, fill="both")
  47. root.mainloop()

结果展示

因为本人账号欠费,暂时无法演示。

共勉环节

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

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

闽ICP备14008679号