使用DeepSeek建立一个智能聊天机器人0.03
将智能聊天机器人0.02进一步完善代码,确保所有界面元素和提示信息都显示为中文。以下是更新后的完整代码:
import tkinter as tk
from tkinter import scrolledtext
import requests
# 配置你的API密钥和DeepSeek的API端点
API_KEY = 'your_api_key_here'
DEEPSEEK_API_URL = 'https://api.deepseek.com/v1/chat'
def get_response(prompt):
headers = {
'Authorization': f'Bearer {API_KEY}',
'Content-Type': 'application/json'
}
data = {
'model': 'deepseek-7b', # 使用的模型名称
'messages': [{'role': 'user', 'content': prompt}],
'max_tokens': 150 # 生成的最大token数
}
response = requests.post(DEEPSEEK_API_URL, json=data, headers=headers)
if response.status_code == 200:
return response.json()['choices'][0]['message']['content']
else:
raise Exception(f"错误: {response.status_code}, {response.text}")
def send_message():
user_input = entry.get()
if user_input.strip():
chat_log.config(state=tk.NORMAL)
chat_log.insert(tk.END, f"你: {user_input}\n")
chat_log.config(state=tk.DISABLED)
try:
response = get_response(user_input)
chat_log.config(state=tk.NORMAL)
chat_log.insert(tk.END, f"DeepSeek: {response}\n")
chat_log.config(state=tk.DISABLED)
except Exception as e:
chat_log.config(state=tk.NORMAL)
chat_log.insert(tk.END, f"错误: {str(e)}\n")
chat_log.config(state=tk.DISABLED)
entry.delete(0, tk.END)
chat_log.yview(tk.END)
def on_closing():
root.destroy()
root = tk.Tk()
root.title("DeepSeek 聊天机器人")
# 设置窗口大小
root.geometry("600x400")
# 创建聊天记录区域
chat_log = scrolledtext.ScrolledText(root, wrap=tk.WORD, state=tk.DISABLED)
chat_log.pack(pady=10, padx=10, fill=tk.BOTH, expand=True)
# 创建输入框
entry = tk.Entry(root, width=80)
entry.pack(pady=10, padx=10, side=tk.LEFT, fill=tk.X, expand=True)
# 创建发送按钮
send_button = tk.Button(root, text="发送", command=send_message)
send_button.pack(pady=10, padx=10, side=tk.RIGHT)
# 绑定关闭事件
root.protocol("WM_DELETE_WINDOW", on_closing)
# 启动主循环
root.mainloop()
更新内容
界面标题:
将窗口标题设置为“DeepSeek 聊天机器人”。
按钮和提示信息:
将发送按钮的文本设置为“发送”。
在错误处理部分,将错误信息显示为中文。
运行脚本
保存脚本后,在命令行中运行:
python deepseek_chatbot_gui.py
这将启动一个带有中文界面的聊天机器人,用户可以在输入框中输入消息并点击“发送”按钮,与DeepSeek进行对话。所有界面元素和提示信息都将显示为中文,提供更好的用户体验。