La acción personalizada utiliza GitHub Models para traducir archivos markdown en tu repositorio. Está diseñada para ser utilizada en un flujo de trabajo de GitHub Actions para traducir automáticamente archivos de documentación cuando se actualicen.
- uses: pelikhan/action-continuous-translation@v0 with: github_token: ${{ secrets.GITHUB_TOKEN }} lang: fr,es
Installation
Sección titulada «Installation»Puedes guardar este archivo en tu directorio .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
Sección titulada «Parameters»La acción de GitHub pelikhan/action-continuous-translation
admite los siguientes parámetros.
Todos los parámetros son opcionales.
Los valores predeterminados se muestran en la referencia a continuación.
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: false
Consulta Models para más detalles sobre otros proveedores como OpenAI, Azure OpenAI, etc.
Tipo: string
Por defecto: fr
Una lista de códigos ISO de los idiomas de destino separados por comas (,
) a los cuales la documentación se traducirá desde el idioma de origen.
Consulta una lista de todos los idiomas compatibles en el archivo models.mts
del repositorio.
Tipo: string
Por defecto: en
El código ISO del idioma de origen en el que está escrito el contenido principal.
Tipo: string
Por defecto: README.md
Una lista de archivos a procesar separados por comas.
instructions
Sección titulada «instructions»Tipo: string
Instrucciones adicionales para que utilice el LLM al traducir.
instructions_file
Sección titulada «instructions_file»Tipo: string
Ruta a un archivo que contiene instrucciones adicionales para que utilice el LLM al traducir.
glossary_file
Sección titulada «glossary_file»Tipo: string
Ruta a un archivo que contiene términos de glosario para usar al traducir.
translations_dir
Sección titulada «translations_dir»Tipo: string
Por defecto: translations
Carpeta donde se almacenarán las traducciones.
max_translation_tokens
Sección titulada «max_translation_tokens»Tipo: entero
Por defecto: 8000
Número máximo de tokens que se pueden procesar en una llamada de traducción al LLM.
max_validation_tokens
Sección titulada «max_validation_tokens»Tipo: entero
Por defecto: 2000
Número máximo de tokens que se pueden procesar en una llamada de validación al LLM.
starlight_dir
Sección titulada «starlight_dir»Tipo: string
Carpeta raíz de la documentación Astro Starlight.
Debe definirse si se define la opción starlight_base
.
starlight_base
Sección titulada «starlight_base»Tipo: string
Alias base para la documentación Astro Starlight.
Si no defines la opción Astro base
, no establezcas esta opción.
Tipo: boolean
Por defecto: false
Habilitar el registro de depuración. Lee más detalles en la documentación de registro de GenAIScript.
model_alias
Sección titulada «model_alias»Tipo: string
Ejemplo: translate: github:gpt-4o-mini
Un mapeo de nombres de modelos a sus alias como un objeto YAML. Esto se puede usar para especificar qué modelo utilizar para una traducción en particular.
github_token
Sección titulada «github_token»Tipo: string
(se recomienda secreto)
Ejemplo: ${{ secrets.GITHUB_TOKEN }}
Tu token de GitHub con al menos permiso de models: read
.
Lee más detalles en la documentación de permisos de GitHub Models de GenAIScript.
Other LLM providers
Sección titulada «Other LLM providers»También puedes utilizar otros proveedores de LLM como OpenAI, Azure OpenAI, etc. Consulta Models para más detalles sobre otros proveedores.