# General Translation Python SDKs: hash_message URL: https://generaltranslation.com/es/docs/python/reference/functions/hash-message.mdx --- title: hash_message description: Genera el hash de una cadena ICU MessageFormat para la búsqueda de traducciones en General Translation Python. Referencia de la API de hash_message. --- Genera, a partir de una cadena ICU MessageFormat, la clave hexadecimal que se usa para buscar su traducción. Este es el mismo hash que [`t`](/docs/python/reference/functions/t) calcula internamente, así que puedes usarlo para compilar o inspeccionar un diccionario de traducciones. ## Descripción general [#overview] Llama a `hash_message` con una cadena de origen y los parámetros opcionales `context`, `id` y `max-chars`, que solo pueden pasarse por nombre. Indexa las variables del mensaje y luego calcula su hash con `data_format="ICU"`. ```python from gt_i18n import hash_message h = hash_message("Hello, world!") ``` Firma: ```python hash_message( message: str, *, context: str | None = None, id: str | None = None, max_chars: int | None = None, ) -> str ``` Importa `hash_message` desde `gt_i18n`. Los paquetes del framework no lo reexportan. ## Cómo funciona [#how-it-works] * **Indexación de variables.** Primero normaliza el mensaje indexando sus variables, para que los mensajes equivalentes generen el mismo hash. * **Hash.** Calcula un hash del mensaje normalizado junto con `context`, `id` y `max_chars`, en consonancia con la implementación de `gt-i18n` en JS. Si cambias cualquiera de estos, se genera un hash diferente. ## Parámetros [#parameters] | Parámetro | Descripción | Tipo | Opcional | Predeterminado | | ------------------------- | ----------------------------------------- | ------------- | -------- | -------------- | | [`message`](#message) | La cadena de origen de ICU MessageFormat. | `str` | No | — | | [`context`](#context) | Cadena de contexto para desambiguar. | `str \| None` | Sí | `None` | | [`id`](#id) | Identificador explícito del mensaje. | `str \| None` | Sí | `None` | | [`max_chars`](#max-chars) | Límite máximo de caracteres. | `int \| None` | Sí | `None` | ### `message` [#message] **Tipo** `str` · **Obligatorio** La cadena de origen de ICU MessageFormat sobre la que se calculará el hash. ### `context` [#context] **Tipo** `str | None` · **Opcional** · **Predeterminado** `None` Contexto opcional (la opción `_context` en `t`) que se usa para desambiguar textos de origen idénticos. ### `id` [#id] **Tipo** `str | None` · **Opcional** · **Predeterminado** `None` Identificador de mensaje explícito opcional (la opción `_id` de `t`). ### `max_chars` [#max-chars] **Tipo** `int | None` · **Opcional** · **Valor predeterminado** `None` Límite máximo opcional de caracteres (la opción `_max_chars` en `t`). ## Devuelve [#returns] **Tipo** `str` Una cadena hash hexadecimal que se usa como clave de búsqueda de la traducción. ## Ejemplo [#example] ```python from gt_i18n import hash_message # Construir un diccionario de traducciones indexado por hash translations = { hash_message("Hello, world!"): "Hola, mundo!", } ```