使用Trae为Github项目编写中英双语文档

在AI编程领域,Cursor名字如雷贯耳,特别是受到广大开发人员的喜爱。不过Cursor Pro版每月20美元(150块钱)的价格,只有500次快速请求,似乎性价比不是很高。

近期有一款对标Cursor的AI编程工具 - Trae,这是由国内厂商字节出品的AI编程客户端,支持智能代码补全、多模态交互以及自动编码等功能,关键是免费。

使用Trae或Cursor等工具编写代码,是一个常规操作。今天介绍一下使用Trae编写中英双语文档。

扫码或微信搜索 agentfans 获取最新消息

正式开始前,先简单介绍一下Trae。

Trae简介

Trae的读音是/treɪ/。按照掘金社区的介绍,它是:

一款面向开发者的 AI 驱动的集成开发环境(IDE)。它通过智能代码补全、多模态交互以及对整个代码库的上下文分析等功能,帮助开发者更高效地编写代码。

Trae分为海外版和国内版:

  • 海外版搭载了Claude Sonet 3.5及最新的3.7、GPT-4o以及DeepSeek R1模型。网站:trae.ai
  • 国内版搭载了Doubao-1.5-Pro、DeepSeek R1/V3模型。网站:trae.com.cn

海外版已经发布一个多月了,国内版3月3日正式发布。下面介绍的编写中英双语文档案例中,我使用的是海外版Trae。

背景

我之前曾写过一个sdk,把代码放在了github上(不好意思叫开源),同时写了一份说明文件(README),为了显得有B格,我先写了中文文档,又用自己那蹩脚的英语给翻译成了英文。这样github项目主页上就有了中英双语文档。不过当时干这个事情感觉很吃力,一是写文档比较费时间、精力有限很多内容没有充分介绍,二是自己翻译的英文在语法、句式上可能不符合英文表达习惯,显得不地道。

既然现在AI这么强了,为什么不用AI帮我写文档并且翻译呢?说干就干。

因为之前用Cursor,我知道现在AI编程工具能够读懂整个代码库,并且能够将代码逻辑输出成文字,这正好符合我的场景,根据已有代码补充文档,而AI翻译更不在话下。

之前Cursor可以白嫖,免费用过一段时间,后来白嫖的口子被堵上了,就没怎么用了。现在有免费的Trae,不用白不用。以下就是我用Trae给已有项目编写中英双语文档的步骤。

下载安装

从Trae官网上下载并安装Trae,这个比较简单,不再啰嗦了。然后在Trae里面打开项目文件夹。

生成文档大纲

github上的项目文档一般使用markdown编写,并且可以通过github pages来托管。关于文档的内容组织,我希望让AI帮我初步规划一下,并考虑后续托管的便利性,所以先抛出一个笼统的问题(为了让过程更可控,我使用的是Chat模式而非Builder):

我有一个XX项目,它是一个go语言sdk,代码已经完成,现在我需要你帮我生成项目文档。关于文档的内容、组织、格式、托管等,我想听听你的建议。

基本上解答了我的疑问,下一步,让它根据文档内容生成对应文件。

可以看到,Trae自动生成了文件名并提供了bash命令,点运行即可创建文件。继续。

以上用了三个指令让Trae生成了文档大纲和空文件。其实上述步骤可以简化一下,直接按以下指令让它生成文档大纲并创建文件即可。

我有一个XXX项目,它具有XX、XX、XX功能,需要你帮我生成中英双语项目文档以便在github上托管。请先生成文档大纲并创建相应目录和文件,只创建空文件即可,根据后续指令再补充完善文档内容。

又经过几次迭代后,最终的文档目录结构如下:

生成文档内容

生成文档大纲后,就是逐个文件补充文档内容了。

先从项目简介开始,由于项目里面有我之前手写的README文件,所以它参考README文件内容,简单组织下很快就完成了。

现在生成 introduction.md文档内容,英文文件位于doc/en/,中文文件位于doc/zh/

中文版没啥可说的,英文版反正比我自己翻译的好。

如果生成的内容不合适,还可以让它修改。

大纲里的其它文档内容也是按类似方式来生成,有的文档需要给它提供一些素材(比如大致内容描述)才能生成不错的内容,否则就只能泛泛而谈了。另外,文档需要用到一些流程图等,这个没法用AI生成,需要手画。

根据代码生成文档

简介之类的文档,用AI来生成相对比较容易,但是最有用的是根据代码来生成文档内容。例如项目中有我之前写的示例,所以我直接让Trae根据示例代码来生成“使用示例”文档。

根据 example.go 内容,仿照quickstart编写使用示例文档,包含中英文版本两个文件

看起来还可以,不过里面可能缺少一些关键的描述信息,引用的代码也不一定准确。这个需要补充必要信息后让它修改,或者自己手工修改。

控制输出格式

在生成文档内容过程中,发现有时输出的内容格式不符合预期。比如:

  1. 只输出中文版、没有英文版,或者只有英文版没有中文版。
  2. 在文档markdown中引入代码块时,会导致Trae输出的文档内容显示不连贯,如下面“Setting Up“本来应该是在markdown里面,却显示在quick_start.md外面了。这个原因是代码块前后被三个反引号```包围,而Trae输出的markdown也是用三个反引号包围,导致markdown在代码块后面提前截断。

这两个问题的解决方案也比较简单,就是每次在指令后面明确要求“输出中英文、对反引号转义”。如下图,可以看到markdown中三个反引号前面都加了反斜杠\,这个需要手工去掉,在文档上才能正常显示代码块。

文档托管到Github

所有文档内容都生成完后,需要托管到Github上,这个过程我也让Trae来辅助完成。

不仅给出了配置文件,也提供了操作步骤和命令,按照步骤执行就可以部署到Github上托管了。不过我按照它给的步骤执行的时候,遇到了一些错误,有的错误可以借助Trae来辅助解决,但也出现了它解决不了问题,反复循环尝试不同方案但都不能解决问题,这个时候就需要人来判断并干预了。

从实际体验来看,使用Trae这类工具来编写技术文档,能够大大提高效率,感觉比人工手写还是强多了,特别是在多语言文档输出方面帮助比较大。

 

扫码或微信搜索 agentfans 获取最新消息

### 如何将 Sealos 与 Traefik 配合使用 #### 背景介绍 Sealos 是一款用于快速部署 Kubernetes 的工具,支持多种场景下的集群初始化和扩展操作。Traefik 则是一款现代化的反向代理和负载均衡器,能够自动发现服务并动态更新配置文件。两者的结合可以帮助用户更高效地管理和暴露 Kubernetes 中的服务。 为了实现 Sealos 和 Traefik 的集成,通常需要完成以下几个方面的配置: --- #### 1. 安装 Traefik 并将其作为 Ingress Controller 使用 通过 Helm 或 YAML 文件安装 Traefik,并确保其被设置为 Kubernetes 集群中的 Ingress Controller。以下是具体步骤: ##### (a) 创建 Traefik 命名空间 ```bash kubectl create namespace traefik ``` ##### (b) 使用 Helm 安装 Traefik 如果已启用 Helm,可以通过以下命令安装 Traefik: ```bash helm repo add traefik https://traefik.io/helm-chart/ helm install traefik traefik/traefik --namespace traefik \ --set serviceType=LoadBalancer \ --set dashboard.enabled=true ``` 上述命令会将 Traefik 设置为 LoadBalancer 类型,并开启仪表盘功能[^4]。 ##### (c) 手动应用 YAML 文件 如果不希望通过 Helm 安装,也可以手动下载官方提供的 YAML 文件并调整参数后执行 `kubectl apply` 操作。 --- #### 2. 配置 Ingress 对象以暴露服务 在 Kubernetes 中定义 Ingress 对象来描述如何路由流量至目标服务。例如,假设有一个名为 `my-app` 的服务运行于默认命名空间下,则可以创建如下 Ingress 规则: ```yaml apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: my-ingress annotations: traefik.ingress.kubernetes.io/router.entrypoints: web,websecure spec: rules: - host: example.com http: paths: - path: / pathType: Prefix backend: service: name: my-app port: number: 80 ``` 此配置表示所有发往 `example.com` 的请求都会转发给 `my-app` 服务[^5]。 --- #### 3. 整合 Harbor 私有镜像仓库(可选) 当涉及复杂的应用部署时,可能需要用到私有的 Docker 镜像仓库。此时可通过 Containerd 结合 Harbor 来存储自定义镜像。例如,在 Sealos 初始化过程中指定 registry 地址: ```bash sealos run registry.cn-shanghai.aliyuncs.com/labring/csi-driver-nfs:v4.4.0 ... ``` 这一步骤允许用户拉取特定版本的组件镜像[^2]。 --- #### 4. 自定义启动脚本增强功能性 对于某些高级需求,比如预加载 Web 终端环境或者定制化日志收集方案,可以在容器镜像中嵌入额外的工具和服务。例如,利用 ttyd 提供交互式终端访问能力: ```Dockerfile FROM alpine:latest RUN apk update && apk add bash curl COPY start-terminal.sh /usr/local/bin/start-terminal.sh CMD ["sh", "-c", "/usr/local/bin/start-terminal.sh"] ``` 随后重新构建该镜像并将它推送到远程仓库以便后续调用。 --- #### 总结 综上所述,借助 Sealos 可迅速搭建起基础架构平台;而引入 Traefik 后不仅简化了外部网络接入流程,还增强了整体系统的可观测性和灵活性。实际操作当中需依据项目具体情况灵活调整各项参数设定。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值