A ação personalizada utiliza GitHub Models para traduzir arquivos markdown em seu repositório. Ela foi projetada para ser usada em um fluxo de trabalho do GitHub Actions para traduzir automaticamente arquivos de documentação quando eles são atualizados.
- uses: pelikhan/action-continuous-translation@v0  with:    github_token: ${{ secrets.GITHUB_TOKEN }}    lang: fr,esInstallation
Seção intitulada “Installation”Você pode salvar este arquivo no diretório .github/workflows/ como ct.yml:
name: Continuous Translationon:  workflow_dispatch:  # translate when doc files are changed in main  push:    branches:      - main    paths: # update the file paths      - "README.md"      - "docs/src/content/docs/**"permissions:  contents: write  # allow the action to use the GitHub Models API  models: readconcurrency:  # cancel in-progress jobs for the same workflow and ref  group: ${{ github.workflow }}-${{ github.ref }}  cancel-in-progress: truejobs:  continuous_translation:    runs-on: ubuntu-latest    steps:      - uses: actions/checkout@v4      # cache the LLM inference results      - uses: actions/cache@v4        with:          path: .genaiscript/cache/**          key: continuous-translation-${{ github.run_id }}          restore-keys: |            continuous-translation-      # this is the translation action      - uses: pelikhan/action-continuous-translation@v0        continue-on-error: true # don't stop if translation fails, we still need to store the cache        with:          github_token: ${{ secrets.GITHUB_TOKEN }}          lang: fr,es      # commit the generated files      - uses: stefanzweifel/git-auto-commit-action@v5        with:          file_pattern: "**.md* translations/**"          commit_message: "[cai] translated docs"          commit_user_name: "genaiscript"Parameters
Seção intitulada “Parameters”A ação do GitHub pelikhan/action-continuous-translation suporta os seguintes parâmetros.
Todos os parâmetros são opcionais.
Os valores padrão estão mostrados na referência abaixo.
with:  lang: fr  source: en  files: README.md  instructions:  instructions_file:  glossary_file:  starlight_dir:  starlight_base:  force: false  model_alias: |    translate: github:gpt-4o-mini  debug: falseConsulte Models para mais detalhes sobre outros provedores como OpenAI, Azure OpenAI, etc.
Tipo: string
Padrão: fr
Uma lista de códigos ISO dos idiomas de destino, separados por vírgulas (,) para os quais a documentação deve ser traduzida a partir do idioma de origem.
Veja uma lista de todos os idiomas suportados no arquivo models.mts no repositório.
Tipo: string
Padrão: en
O código ISO do idioma de origem em que o conteúdo principal está escrito.
Tipo: string
Padrão: README.md
Uma lista de arquivos a serem processados, separados por vírgulas.
instructions
Seção intitulada “instructions”Tipo: string
Instruções extras para o LLM usar durante a tradução.
instructions_file
Seção intitulada “instructions_file”Tipo: string
Caminho para um arquivo contendo instruções extras para o LLM usar durante a tradução.
glossary_file
Seção intitulada “glossary_file”Tipo: string
Caminho para um arquivo contendo termos do glossário para serem usados durante a tradução.
translations_dir
Seção intitulada “translations_dir”Tipo: string
Padrão: translations
Pasta onde as traduções serão armazenadas.
max_translation_tokens
Seção intitulada “max_translation_tokens”Tipo: integer
Padrão: 8000
Número máximo de tokens para processar em uma chamada de tradução do LLM.
max_validation_tokens
Seção intitulada “max_validation_tokens”Tipo: integer
Padrão: 2000
Número máximo de tokens para processar em uma chamada de validação do LLM.
starlight_dir
Seção intitulada “starlight_dir”Tipo: string
Pasta raiz da documentação Astro Starlight.
Deve ser definida se a opção starlight_base for definida.
starlight_base
Seção intitulada “starlight_base”Tipo: string
Alias base para a documentação Astro Starlight.
Se você não definir a opção base do Astro, não defina esta opção.
Tipo: boolean
Padrão: false
Ativa o registro de depuração. Leia mais detalhes em os documentos de logs do GenAIScript.
model_alias
Seção intitulada “model_alias”Tipo: string
Exemplo: translate: github:gpt-4o-mini
Um mapeamento de nomes de modelos para seus aliases como um objeto YAML. Isso pode ser usado para especificar qual modelo utilizar para uma tradução específica.
github_token
Seção intitulada “github_token”Tipo: string (recomendado como secreto)
Exemplo: ${{ secrets.GITHUB_TOKEN }}
Seu token do GitHub com pelo menos permissão de models: read.
Leia mais detalhes em os documentos de Permissões do GitHub Models do GenAIScript.
Other LLM providers
Seção intitulada “Other LLM providers”Você também pode usar outros provedores de LLM, como OpenAI, Azure OpenAI, etc. Consulte Models para mais detalhes sobre outros provedores.