AI自动化办公:批量将Excel表格英文内容翻译为中文

news2024/11/16 23:38:15

有一个50列的表格,里面都是英文,要翻译成中文:

在ChatGPT中输入提示词:

你是一个开发AI大模型应用的Python编程专家,要完成以下任务的Python脚本:

打开Excel文件:"F:\AI自媒体内容\AI行业数据分析\poetop50bots.xlsx"

读取A2到B51这个区域中的每一个单元格内容,

调用deepseek-chat模型(上下文长度32K,最大输出长度4K)来将单元格的内容翻译成中文;

模型的base_url为:https://api.deepseek.com

模型的api_key为:XXX

temperature 参数设置认为 1.1

提示词为:把英文内容翻译为中文

调用deepseek-chat模型API的示例参照【】里面的内容:

【# Please install OpenAI SDK first:`pip3 install openai`

from openai import OpenAI

client = OpenAI(api_key="<deepseek api key>", base_url="https://api.deepseek.com")

response = client.chat.completions.create(

model="deepseek-chat",

messages=[

{"role": "system", "content": "You are a helpful assistant"},

{"role": "user", "content": "Hello"},

],

stream=False

)

print(response.choices[0].message.content)

模型返回的json数据示例:

{

"id": "65c327b06948c8d635c8316c6885d95e",

"choices": [

{

"index": 0,

"message": {

"content": "Hello! How can I assist you with your programming or computer science questions today?",

"role": "assistant"

},

"finish_reason": "stop",

"logprobs": null

}

],

"created": 1717069572,

"model": "deepseek-coder",

"system_fingerprint": "fp_ded2115e5a",

"object": "chat.completion",

"usage": {

"prompt_tokens": 18,

"completion_tokens": 16,

"total_tokens": 34

}

}

解析返回的JSON数据,获取翻译后的文本,将翻译后的文本内容写入一个新的表格文件中;

注意:

每一步都要输出相关信息到屏幕上

如果单元格的文本长度或者翻译返回的文本长度超过模型限制,那就进行拆分,然后组合在一起;

Chatpgt生成的代码:

import pandas as pd

import requests

import json

# 读取Excel文件

file_path = "F:\\AI自媒体内容\\AI行业数据分析\\poetop50bots.xlsx"

df = pd.read_excel(file_path, header=None, usecols="A:B", skiprows=1, nrows=50)

# DeepSeek API配置信息

base_url = "https://api.deepseek.com"

api_key = "XXX"

model = "deepseek-chat"

def translate_text(text):

headers = {

'Authorization': f'Bearer {api_key}',

'Content-Type': 'application/json'

}

data = {

"model": model,

"messages": [

{"role": "system", "content": "You are a helpful assistant"},

{"role": "user", "content": f"把英文内容翻译为中文:{text}"}

],

"stream": False

}

response = requests.post(f"{base_url}/v1/chat/completions", headers=headers, json=data)

response.raise_for_status() # 检查请求是否成功

translated_text = response.json()['choices'][0]['message']['content']

return translated_text

def split_text(text, max_length):

return [text[i:i + max_length] for i in range(0, len(text), max_length)]

# 输出每一步的信息到屏幕上

print(f"读取文件: {file_path}")

for index, row in df.iterrows():

for col in [0, 1]: # 遍历A和B列

text = row[col]

if pd.isna(text):

continue

text = str(text)

print(f"正在翻译单元格({index+2}, {chr(col+65)}): {text}")

max_input_length = 32000

max_output_length = 4000

if len(text) > max_input_length:

parts = split_text(text, max_input_length)

translated_parts = [translate_text(part) for part in parts]

translated_text = ''.join(translated_parts)

else:

translated_text = translate_text(text)

print(f"翻译结果: {translated_text}")

# 将翻译后的文本写入DataFrame中

df.iat[index, col] = translated_text

# 将结果写回到新的Excel文件中

new_file_path = "F:\\AI自媒体内容\\AI行业数据分析\\translated_poetop50bots.xlsx"

df.to_excel(new_file_path, index=False, header=False, startrow=1)

print(f"翻译完成,结果已写入文件: {new_file_path}")

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1717052.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

harbor -- docker私有仓库安装配置

1 安装docker-compose $ curl -L "https://get.daocloud.io/docker/compose/releases/download/v1.25.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose $ chmod x /usr/local/bin/docker-compose 2 安装配置harbor $ wget https://g…

JS-51-Node.js10-yarn

一、yarn的简介 Yarn 是一款 JavaScript 的包管理工具&#xff08;npm的代替方案&#xff09;&#xff0c;是 Facebook, Google, Exponent 和 Tilde 开发的一款新的 JavaScript 包管理工具。 正如 Yarn 官网的介绍&#xff0c;Yarn 的具有速度快 、安全 、可靠 的优点&#x…

嘉立创使用gif

新建原理图 边框设置2 新建pcb图 放置焊盘 排列焊盘 新建符号 封号向导 新建封装 封装向导 符号与封装联结 原件查找 drc设计规则&#xff08;线之间的距离等 布线冲突 顶底层切换 T ,B 顶底连线&#xff0c;自动创造过孔 铺铜 泪滴 网格大小 吸附 元件库

民国漫画杂志《时代漫画》第33期.PDF

时代漫画33.PDF: https://url03.ctfile.com/f/1779803-1248635648-d8235b?p9586 (访问密码: 9586) 《时代漫画》的杂志在1934年诞生了&#xff0c;截止1937年6月战争来临被迫停刊共发行了39期。 ps: 资源来源网络!

任何图≌自己这一几何最起码常识推翻直线公理让R外标准实数一下子浮出水面

黄小宁 h定理&#xff1a;点集AB≌B的必要条件是A≌B。 证&#xff1a;若AB则A必可恒等变换地变为BA≌A&#xff0c;而恒等变换是保距变换。证毕。 如图所示R轴即x轴各元点x沿x轴正向不保距平移变为点y2x就使x轴沿本身拉伸&#xff08;放大&#xff09;变换为y2x轴不≌x轴&…

PDF盖骑缝章

在PDF文件上加盖骑缝章&#xff0c;您可以采取以下几种方法之一&#xff1a; 使用Adobe Acrobat&#xff1a; 打开Adobe Acrobat软件&#xff0c;加载PDF文件。在工具栏选择“工具”选项&#xff0c;找到“骑缝章”或“印章”工具。选择或上传您的骑缝章图片&#xff0c;将其放…

区块链技术:金融行业的信任基石

一、引言 在数字化转型的浪潮中,区块链技术以其独特的优势,正逐渐成为金融行业的信任基石。本文将深入探讨区块链技术在金融行业的应用,通过具体案例的细化和完善,分析其特点和影响。 二、区块链技术的核心特点 1. 去中心化:区块链技术通过分布式账本,实现去中心化的数…

乡村振兴,教育先行:加强农村教育事业发展,提高农民素质,培育新时代新型农民,为美丽乡村建设提供人才保障

目录 一、引言 二、农村教育事业发展的重要性 1、提高农民素质&#xff0c;促进全面发展 2、推动农村经济社会发展 3、传承乡村文化&#xff0c;促进文化振兴 三、加强农村教育事业发展的策略 1、加大教育投入&#xff0c;改善教育设施 2、普及义务教育&#xff0c;提高…

栈和队列题目练习

本节小编选了两道题来加深对栈和队列的认识理解&#xff01; 有效的括号 方法1&#xff1a;直接用栈的结构&#xff08;动态数组&#xff09; 本题可以用栈这个结构来解答&#xff0c;将(,{,[ 左括号压入栈中&#xff0c;然后取出栈顶元素与右括号),},]匹配。不匹配的话&…

雅特力串口485模式TCDT/TSDT说明

TCDT&#xff08;发送器完成延迟时间&#xff08;transmit complete delay time&#xff09;占了5个bit位&#xff0c;则最大值为 2 5 − 1 31 2^{5} -1 31 25−131&#xff0c;时间单位是 1 16 波特率周期 \frac{1}{16}波特率周期 161​波特率周期 波特率为9600&#xff…

如何理解 Java 接口和抽象类的定义和使用场景

Java 是一种面向对象编程语言&#xff0c;提供了丰富的面向对象编程机制。其中&#xff0c;接口和抽象类是两个重要的概念&#xff0c;它们在设计和实现代码时扮演着关键的角色。 接口&#xff08;Interface&#xff09; 定义和特性 接口是 Java 中的一种引用数据类型&#…

神经网络与深度学习——第4章 前馈神经网络

本文讨论的内容参考自《神经网络与深度学习》https://nndl.github.io/ 第4章 前馈神经网络 前馈神经网络 神经元 Sigmoid型函数 Hard-Logistic函数和Hard-Tanh函数 ReLU函数 带泄露的ReLU 带参数的ReLU ELU函数 Softplus函数 Swish函数 GELU函数 Maxout单元 网络结构 前馈网络…

JAVAEE之多线程进阶(2)_ CAS概念、实现原理、ABA问题及解决方案

前言 在并发编程时&#xff0c;常常会出现线程安全问题&#xff0c;那么如何保证原子性呢&#xff1f;常用的方法就是加锁。在Java语言中可以使用 Synchronized和CAS实现加锁效果。  Synchronized关键字保证同步的&#xff0c;这会导致有锁&#xff0c;但是锁机制存在以下问题…

当你想使用预测概率作为预测模型的结果

&#x1f31f;当你想使用预测概率作为医学预测模型的结果&#x1f31f; 分类预测模型的预测结果有两种。一种是直接判断是哪一类&#xff0c;这种情况下唯一可以调节的就是决策阈值&#xff0c;或者是默认的0.5&#xff0c;也可以是参数确定的决策阈值&#xff0c;比如约登指数…

ELK 使用 metricbeat监控数据

IP功能版本192.168.140.153elk-18.13.4192.168.140.153metricbeat8.13.4192.168.140.156elk-28.13.4192.168.140.156metricbeat8.13.4192.168.140.159logstash8.13.4192.168.140.159kibana8.13.4 一、安装ELK 参考文档&#xff1a; https://download.csdn.net/download/weix…

Spring 源码:深度解析AOP源码配置解析

文章目录 一、 解析AOP配置的入口1.1 从XML配置到AOP Namespace的解析流程1.2 分析注解驱动的AOP配置解析流程 二、AOP配置解析的核心流程2.1 ConfigBeanDefinitionParser 类2.2 parse()2.3 parseAdvisor()2.4 parseAspect()2.5 parsePointcut()2.6 createAdvisorBeanDefinitio…

CentOS 7基础操作02_优化Linux操作系统中的服务

1、实验环境 公司在文件服务器中新安装了CentOS系统.由于默认启动的服务程序较多&#xff0c;系统运行缓慢。现需要对系绞服务进行适当优化&#xff0c;减少一些不必要的自启动服务.并设置系统在开机后直接进入字符模式。 2、需求描述 根据实际使用需求对CentOS 7操作系统中的…

C++第二十二弹---vector深度剖析及模拟实现(下)

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】【C详解】 目录 1、容量操作 2、内容修改操作 3、打印函数 4、迭代器失效 4.1、什么是迭代器失效 4.2、哪些操作会引起迭代器失效 总结 1、容量操作 size()…

【Docker】宝塔创建Docker容器配置nginx

前言 本篇是我入门docker的第一篇&#xff0c;由于docker具有很好的移植性&#xff0c;易于安装&#xff0c;开箱即用&#xff1b;签约的公司项目开发需要我进行学习&#xff0c;否则money减半&#xff0c;5555~ 百度找了一圈&#xff0c;只有关于docker怎么装宝塔服务器的却没…

从Socket到WebSocket

前言 不知道大家在学习网络编程的时候都是怎样的一种方式&#xff0c;我谨以此文章来记录我自己从头开始学习C网络编程时的经历&#xff0c;中间有许多我自己的一些想法和思考。当然作为一个刚开始学习的新手来说&#xff0c;有些内容也许不那么正确&#xff0c;只是代表了我在…