Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >AI自动化办公:批量将Excel表格英文内容翻译为中文

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

作者头像
AIGC部落
发布于 2024-06-24 11:26:30
发布于 2024-06-24 11:26:30
5080
举报
文章被收录于专栏:Dance with GenAIDance with GenAI

有一个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}")

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-05-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Dance with GenAI 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
[CMD]常用命令
CMD命令行常用命令 目录 CMD命令行常用命令 单独输入磁盘路径 例如 :  d:  cd 路径 进入文件夹   cd..命令退出文件夹 make dir 文件夹名字  创建目录  rd 目录名 删除目录  del 文件名 删除文件 ipconfig 查看本机ip   终止一直在运行的命令ctrl+c ---- 01 首先按下Win+R组合键,打开运行窗口,输入CMD命令,如下图所示 单独输入磁盘路径 例如 :  d:  cd 路径 进入文件夹   cd..命令退出文件夹
痴心阿文
2022/11/18
5020
[CMD]常用命令
二、第一个java程序:HelloWorld
前面讲解了java程序的配置,现在要开始进入实例的编程了,第一个程序还是沿用经典的 HelloWorld程序进行讲解。
全栈程序员站长
2022/09/02
4910
编写bat文件在windows上自动执行cmd命令
windows 电脑上直接新建 txt 记事本文件,编写好要执行的命令后,将后缀修改成 .bat,然后直接点击文件就可以执行里面的命令了
人人都是码农
2023/11/16
1.8K0
MariaDB安装教程(保姆级)
下载mariadb-10.6.4-winx64.zip(官网地址:Download MariaDB Server – MariaDB.org)
全栈程序员站长
2022/07/01
4.3K0
MariaDB安装教程(保姆级)
mysql——cmd进入mysql及常用的mysql操作[通俗易懂]
第三步:在命令行输入:mysql -u 用户名 -p密码;回车;-h表示服务器名,localhost表示本地,-hlocalhost 可不输入;-u为数据库用户名,root是mysql默认用户名;-p为密码,如果设置了密码,可直接在-p后链接输入,如:-p123456,用户没有设置密码,显示Enter password时,直接回车即可。)
全栈程序员站长
2022/06/27
16K0
mysql——cmd进入mysql及常用的mysql操作[通俗易懂]
Gulp安装流程、使用方法及cmd常用命令导览
Gulp安装流程、使用方法及CMD常用命令导览 来自前端小白的gulp及周边知识学习总结     一、名词介绍: Npm——node包管理工具 一开始我不理解,包管理工具是什么鬼。后来用到的gulp也好,gulp的插件包也好,都是要在npm这个里边弄出来的。 可以理解为,一个硬盘,里边放的各种整理好的、适用于各种功能的且不重复的文件夹(插件),然后我们需要啥,就去里边摘下来。 当然也可以用它来删除插件 rimraf删除gulp的模块插件 1、安装:npm install -g rimraf(全局安装),如果
xing.org1^
2018/05/17
2.6K0
如何用命令行编译、运行第一个java程序(Hello World!)[通俗易懂]
命令行(Command Processor)(CMD)是在以OS / 2 、 Windows CE与Windows NT平台为基础的操作系统(包括Windows 2000,Windows XP,Windows Vista,Windows Server 2003,Windows 7, Windows 8 ,Windows 8.1 ,Windows 10)下的“MS-DOS 方式”,即“微软操作系统中内置的模仿DOS操作系统的程序”——我们看到的命令提示符窗口便是。而命令提示符是一种工作提示符,提示进行命令输入。例如, “C:>”这种提示的方式。
全栈程序员站长
2022/09/08
2.6K0
如何用命令行编译、运行第一个java程序(Hello World!)[通俗易懂]
bat 批处理切换到当前脚本所在文件夹
打开回显或关闭请求回显功能,或显示消息。如果没有任何参数,echo 命令将显示当前回显设置。
用户3519280
2023/07/06
1.9K0
有趣的10个CMD命令「建议收藏」
这个东西我们不多说,只说两种用法。 好比我这里有个文件test.txt,里面有一些内容。我们如何隐藏它?
全栈程序员站长
2022/11/08
8K0
有趣的10个CMD命令「建议收藏」
cmd切换盘符_cmd分配盘符
cmd命令行下怎么切换目录 如果我们要访问D盘,只需要输入D:(不区分大小写)
全栈程序员站长
2022/11/09
1.8K0
cmd切换盘符_cmd分配盘符
Windows CMD常用命令大全(值得收藏)
虽然随着计算机产业的发展,Windows 操作系统的应用越来越广泛,DOS 面临着被淘汰的命运,但是因为它运行安全、稳定,有的用户还在使用,所以一般Windows 的各种版本都与其兼容,用户可以在Windows 系统下运行DOS,中文版Windows XP中的命令提示符进一步提高了与DOS下操作命令的兼容性,用户可以在命令提示符直接输入中文调用文件。
全栈程序员站长
2022/07/01
12.4K0
Windows CMD常用命令大全(值得收藏)
windows,cmd中进行盘符的切换「建议收藏」
2.通过盘符加冒号的方式,切换到不同的磁盘根目录下,举例:切换到d盘下,执行d:然后按回车
全栈程序员站长
2022/11/09
1.8K0
windows,cmd中进行盘符的切换「建议收藏」
bat自动复制文件命令_批处理命令删除文件夹
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/09
3.6K0
一些好玩的cmd命令_好玩cmd命令
大家好,又见面了,我是你们的朋友全栈君。 前言: CMD是什么?在windows环境下,命令行程序为cmd.exe。 是一个32位的命令行程序,微软Windows系统基于Windows上的命令解释程
全栈程序员站长
2022/11/09
2.4K0
dos命令怎么进入一个文件夹(cmd强制删除文件夹命令)
输入“cd 盘符名:\文件夹名”,比如想进入的目录:D:\soft\Git文件,则输入“cd D:\soft\Git”,按“回车”键
全栈程序员站长
2022/07/30
3.3K0
dos命令怎么进入一个文件夹(cmd强制删除文件夹命令)
cmd命令切换盘符_cmd更改盘符名
cd /d D:\Test\ 切换到D盘Test文件夹下 dir 查看文件夹内容 cd是用来进入目录,或退出目录的 CD\是回到根目录 CD..是回到上级目录 cd 子目录名,进入下级目录 CD 绝对路径,进入你的绝对路径的目录里如可以在 C:\WINDOWS\SYSTEM32下输入cd d:\program\firefox\ 来进入d:\program\firefox目录里
全栈程序员站长
2022/11/09
2K0
CMD常用命令符大全,提高办公效率(值得收藏)
命令提示符(CMD)是Windows操作系统中一个强大的工具,提供了一个文本界面,允许用户通过输入命令与操作系统进行交互。它最初是MS-DOS时代的产物,虽然随着图形用户界面的普及,许多用户未曾接触到它,但对于开发者和系统管理员来说,它依然是一个高效的工具,尤其在批量处理、系统配置和故障排除等场景中。CMD支持多种命令和脚本,可以用于文件操作、系统管理、网络设置等任务。
钮祜禄.爱因斯晨
2025/06/11
4630
CMD常用命令符大全,提高办公效率(值得收藏)
【Java】基础03:常用的DOS命令
Windows系统,是可视化系统,有图形界面,这个文件名叫什么,多大,都一目了然。
刘小爱
2020/07/29
7190
cmd cd到d盘切换不过去_cmd删除盘符
可是 cd e: 命令是干什么用的呢?是用来切换e盘的工作目录的.(你cd f:,就是切换f盘的工作目录)
全栈程序员站长
2022/11/10
1.2K0
cmd cd到d盘切换不过去_cmd删除盘符
cmd从c盘切换到d盘_cmd怎样切换到d盘
2、默认路径为用户文档路径,如果想要切换到C盘中的某个文件夹,比如AppData,可以执行命令cd AppData;
全栈程序员站长
2022/09/19
32.1K0
cmd从c盘切换到d盘_cmd怎样切换到d盘
推荐阅读
相关推荐
[CMD]常用命令
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档