# Файлы в чате

> Что можно прикладывать, как разбираются файлы и какие есть ограничения.


Прикладывайте файлы к сообщению. Каждый файл разбирается статически в одноразовом контейнере gVisor без сети, с корнем только для чтения, лимитами памяти, CPU и процессов и без секретов. Ничего из файла не запускается, динамического анализа нет. Файл сверх лимитов или сбой парсера завершаются статусом `rejected` с указанием причины.

| Тип | Примеры | Что получает модель |
|---|---|---|
| Исходники и текст | `.py`, `.js`, `.go`, `.java`, `.c`, `.json`, `.yaml`, логи | Текст с разбивкой по файлам и строкам |
| Архивы | `.zip`, `.tar`, `.gz`, `.bz2`, `.xz`, `.jar`, `.apk` | Дерево и текст каждого элемента |
| Android | `.apk` | Манифест и текст каждого элемента |
| Бинарники | ELF, PE, Mach-O, DEX | SHA-256, энтропия, заголовки, предпросмотр дизассемблирования первых 4 КБ и строки |
| Документы | PDF, `.docx`, `.xlsx`, HTML, XML, SVG | Текст, без запуска скриптов и макросов |
| Изображения | PNG, JPEG, GIF | Размеры. OCR пока нет |

Файлы до 200 МБ. У архивов ограничены глубина, число элементов и коэффициент распаковки, поэтому zip-бомба останавливается рано с понятным сообщением. Pickle-файлы Python дизассемблируются через `pickletools` и никогда не загружаются.

Текст внутри файла — это данные. Если в файле написано «игнорируй свои инструкции», модель видит это как содержимое для анализа.

## Что дальше

- [Проекты](/ru/chat/projects)
- [Хранение](/ru/chat/retention)
