您的位置:首页 > 健康 > 养生 > 做一张网页需要多少钱_湘潭网站制作公司_推广普通话手抄报简单_合肥seo外包平台

做一张网页需要多少钱_湘潭网站制作公司_推广普通话手抄报简单_合肥seo外包平台

2025/1/7 15:22:57 来源:https://blog.csdn.net/Drug_/article/details/144930498  浏览:    关键词:做一张网页需要多少钱_湘潭网站制作公司_推广普通话手抄报简单_合肥seo外包平台
做一张网页需要多少钱_湘潭网站制作公司_推广普通话手抄报简单_合肥seo外包平台

以前分享过一个 关于python 部署 网页端的 翻译大模型的 文章

有兴趣的小伙伴可以去看一下
https://blog.csdn.net/Drug_/article/details/144488795

今天就再分享一个 使用python 来制作一个 exe 客户端版的 本地大模型。
实际也很简单 只不过把 用 fastApi 框架 做的 网页端 换成 PyQt5 来制作 客户端的桌面应用
实现的效果如下:
在这里插入图片描述

使用 exe 制作 客户端 的代码 如下

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QVBoxLayout, QWidget, QComboBox, QTextEdit, QPushButton, QLabel, QSplitter
from PyQt5.QtCore import QThread, pyqtSignal, Qt
import traceback
from translateUtils import TranslateZhclass TranslateThread(QThread):result_signal = pyqtSignal(str)error_signal = pyqtSignal(str)def __init__(self, keyword, lang_type):super().__init__()self.keyword = keywordself.lang_type = lang_typedef run(self):try:translator = TranslateZh()translation_result = translator.getTo(self.keyword, self.lang_type)self.result_signal.emit(translation_result)except Exception as e:# 获取异常的详细信息error_message = f"翻译过程中出现错误: {str(e)}"# 获取堆栈追踪信息error_traceback = traceback.format_exc()# 将错误信息和堆栈信息发送到界面self.error_signal.emit(f"{error_message}\n详细信息:\n{error_traceback}")# PyQt5 桌面应用
class DesktopApp(QMainWindow):def __init__(self):super().__init__()self.setWindowTitle('本地翻译器')# 设置窗口大小和背景颜色self.setGeometry(100, 100, 1000, 600)self.setStyleSheet("background-color: #f0f0f0;")# 创建界面控件self.lang_type_combobox = QComboBox()self.lang_type_combobox.addItems(["英 - 中", "中 - 英"])self.lang_type_combobox.setStyleSheet("font-size: 16px; padding: 5px; background-color: white;")self.input_text = QTextEdit()self.input_text.setPlaceholderText("请输入需要翻译的内容...")self.input_text.setStyleSheet("font-size: 16px; padding: 10px; background-color: white; border-radius: 5px;")self.translate_button = QPushButton("翻译")self.translate_button.setStyleSheet("""QPushButton {font-size: 18px;background-color: #4CAF50;color: white;border-radius: 5px;padding: 10px 20px;}QPushButton:hover {background-color: #45a049;}""")# 使用 QTextEdit 来显示翻译结果self.result_text_edit = QTextEdit()self.result_text_edit.setPlaceholderText("翻译结果将显示在这里...")self.result_text_edit.setStyleSheet("font-size: 18px; color: #333; padding: 10px;")self.result_text_edit.setReadOnly(True)self.result_text_edit.setWordWrapMode(True)  # 启用自动换行self.loading_label = QLabel("翻译中,请稍等...")self.loading_label.setStyleSheet("color: blue; font-size: 16px;")self.loading_label.setVisible(False)  # 默认隐藏# 左侧布局(语言选择和输入框)left_layout = QVBoxLayout()left_layout.addWidget(self.lang_type_combobox)left_layout.addWidget(self.input_text)left_layout.addWidget(self.translate_button)left_layout.addWidget(self.loading_label)# 右侧布局(翻译结果显示)right_layout = QVBoxLayout()right_layout.addWidget(self.result_text_edit)# 创建 QSplitter 用于调整左右两侧宽度splitter = QSplitter(Qt.Horizontal)left_widget = QWidget()left_widget.setLayout(left_layout)right_widget = QWidget()right_widget.setLayout(right_layout)splitter.addWidget(left_widget)splitter.addWidget(right_widget)# 设置布局main_layout = QVBoxLayout()main_layout.addWidget(splitter)container = QWidget()container.setLayout(main_layout)self.setCentralWidget(container)# 连接事件self.translate_button.clicked.connect(self.translate_text)def translate_text(self):keyword = self.input_text.toPlainText().strip()if not keyword:self.result_text_edit.setText("请输入需要翻译的内容!")returnlang_type = "en" if self.lang_type_combobox.currentText() == "英 - 中" else "zh"self.loading_label.setVisible(True)self.result_text_edit.clear()  # 清空结果# 启动翻译线程self.translate_thread = TranslateThread(keyword, lang_type)self.translate_thread.result_signal.connect(self.update_result)self.translate_thread.error_signal.connect(self.update_error)self.translate_thread.start()def update_result(self, result):self.loading_label.setVisible(False)self.result_text_edit.setText(result)def update_error(self, error_message):self.loading_label.setVisible(False)self.result_text_edit.setText(error_message)if __name__ == '__main__':qt_app = QApplication(sys.argv)window = DesktopApp()window.show()sys.exit(qt_app.exec_())

python 版本:Python 3.8.20

安装打包依赖

pip install pyinstaller==6.0   

打包命令:

 pyinstaller --onefile --windowed main.py 

打包后的文件在dist 文件夹里
在这里插入图片描述
运行此项目要有python编程基础!!!

代码内置的 翻译大模型 不保证 翻译的准确性。
内置翻译大模型 支持:
中文翻译英文
英文翻译中文

大模型和 源码地址如下:
https://wwwoop.com/home/Index/projectInfo?goodsId=42&typeParam=2

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com