Skip to content

pwrmind/ai_cfo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🧠 AI CFO — интеллектуальный анализ банковской выписки 1С

Python 3.9+ License: MIT

AI CFO — это инструмент командной строки, который загружает выписку из системы «1С:Клиент банка» (1CClientBankExchange), автоматически классифицирует операции с помощью гибридного ИИ (MCC + языковая модель + ключевые слова) и строит симуляцию масштабирования бизнеса с учётом налогового режима.

Возможности

  • 📄 Парсинг файлов 1С – поддержка кодировок utf-8-sig, cp1251, utf-8, ibm866, корректное определение знака (приход/расход), извлечение конечного остатка.
  • 🧠 Гибридная классификация – три слоя распознавания:
    • MCC-коды (жёсткие правила);
    • Языковая модель (cointegrated/rubert-tiny2) с семантическими якорями;
    • Ключевые слова как fallback, если модель недоступна.
  • 📊 Категории транзакций:
    • OPERATING_INCOME – выручка;
    • OPERATING_EXPENSE – переменные расходы (закупки, логистика, комиссии);
    • FIXED_EXPENSE – постоянные расходы (аренда, зарплата, связь, налоги);
    • CAPEX – инвестиции в основные средства;
    • FINANCIAL_FLOW – переводы собственных средств, пополнения, займы.
  • 💰 Детализация финансовых потоков – отдельно показывается приток и отток по категории FINANCIAL_FLOW.
  • 🚀 Симуляция масштабирования (ForecastEngine):
    • Рост выручки в x раз (настраивается);
    • Нелинейный рост постоянных расходов;
    • Амортизация капитальных затрат;
    • Расчёт налогов по трём режимам:
      • УСН «Доходы» (6%);
      • УСН «Доходы минус расходы» (15%, с минимальным налогом 1%);
      • Произвольная ставка от выручки.
  • 📈 Вердикт системы – зелёный свет или предупреждение о высоком риске с конкретными цифрами.

Установка

  1. Клонируйте репозиторий:
    git clone https://github.com/yourusername/ai-cfo.git
    cd ai-cfo
  2. Создайте и активируйте виртуальное окружение (рекомендуется):
    python -m venv .venv
    source .venv/bin/activate  # Linux/macOS
    .venv\Scripts\activate     # Windows
  3. Установите зависимости:
    pip install -r requirements.txt
    Основные пакеты: pandas, numpy, sentence-transformers, scikit-learn.

Использование

Запустите скрипт и укажите путь к файлу выписки 1С (формат .txt):

python main.py

Пример интерактивного сеанса:

AI CFO v1.4 – Система анализа выписки 1С
Путь к файлу 1C (.txt): temp/input.txt
✅ Загружено 368 транзакций.

[Система] Инициализация гибридного мозга (MCC + cointegrated/rubert-tiny2 + keywords)...
[Система] Модель загружена успешно.
[Система] Калибровка завершена.
[Система] Классификация транзакций...

[Пример последних транзакций]:
                                                                         Назначение   Сумма       Category
            Комиссия за SMS-оповещение за июнь 2025 Согласно тарифам Банка           -149.0  FIXED_EXPENSE
                                    Перевод собственных средств. НДС не облагается. -1000.0 FINANCIAL_FLOW
                                                Внесение уставного капитала Без НДС 10000.0 FINANCIAL_FLOW
                                    Перевод собственных средств. НДС не облагается.  -100.0 FINANCIAL_FLOW


📊 СВОДКА ПО КАТЕГОРИЯМ:
   OPERATING_INCOME            53 шт.     226,369.89 руб.
   OPERATING_EXPENSE          137 шт.      62,439.93 руб.
   CAPEX                        1 шт.         -80.00 руб.
   FINANCIAL_FLOW              45 шт.     -89,185.20 руб.
   FIXED_EXPENSE              132 шт.    -147,227.66 руб.

Выберите налоговый режим:
1 - УСН Доходы (6%)
2 - УСН Доходы минус расходы (15%, но не менее 1% от выручки)
3 - Другая ставка (указать вручную)
Введите номер режима (1-3, по умолчанию 1): 1

==================================================
 СИМУЛЯЦИЯ МАСШТАБИРОВАНИЯ БИЗНЕСА 
==================================================
📊 ФАКТ (DATA):
   Выручка (Revenue):          226,369.89 руб.
   Переменные расходы (COGS):   62,439.93 руб.
   Постоянные расходы (Opex):  147,227.66 руб.
   Инвестиции (Capex):              80.00 руб.
   Финансовые потоки:
      Приток (поступления):     14,000.00 руб.
      Отток (переводы/изъятия): -103,185.20 руб.
      Нетто-поток:             -89,185.20 руб.
   💰 Банковский остаток:       52,316.96 руб.
   -----------------------------------
⚖️  ЮНИТ-ЭКОНОМИКА: ✅ Положительная
   💼 Расчётный налог за период: 13,582.19 руб. (режим: income)

🚀 ПРОГНОЗ РОСТА (x5.0):
   Прогноз выручки:         1,131,849.45
   Переменные расходы:        312,199.65
   Постоянные расходы:        515,296.81 (x3.5 от исходных)
   Налоги:                     67,910.97 (income)
   Амортизация Capex:              33.33
   -----------------------------------
   📉 ПРОГНОЗ ПРИБЫЛИ:        236,408.69 руб.

==================================================
 ВЕРДИКТ СИСТЕМЫ 
==================================================
✅ ЗЕЛЕНЫЙ СВЕТ. Бизнес-модель масштабируема.
   Прогнозируемая чистая прибыль при масштабировании: 236,408.69 руб.

Структура проекта

ai-cfo/
├── main.py               # Основной исполняемый файл
├── requirements.txt      # Зависимости
├── README.md
└── temp/                 # Папка для тестовых выписок (не обязательно)

Настройка параметров симуляции

Все ключевые коэффициенты можно изменить при создании объекта ForecastEngine в main.py:

  • scale_factor=5.0 – во сколько раз масштабируется выручка;
  • fixed_exp_growth=3.5 – коэффициент роста постоянных расходов (нелинейный);
  • tax_regime – налоговый режим ('income', 'profit', 'custom');
  • custom_tax_rate – собственная ставка налога от выручки (для режима 'custom').

Требования

  • Python 3.9 или выше
  • Доступ в интернет при первом запуске (для загрузки модели rubert-tiny2).
    Модель будет закэширована локально, повторные запуски офлайн.

Как это работает

  1. Парсер обрабатывает текстовый файл формата 1С, находит расчётный счёт, извлекает все документы и определяет знак суммы (приход/расход).
  2. Классификатор пропускает каждую операцию через три этапа:
    • поиск MCC-кода в назначении → сразу категория;
    • семантическое сравнение с якорными фразами через модель rubert-tiny2;
    • резервный поиск по ключевым словам, если модель недоступна или не уверена.
  3. ForecastEngine агрегирует суммы по категориям и строит упрощённую финансовую модель масштабирования, рассчитывает налоги и даёт вердикт.

Ограничения

  • Симуляция является демонстрационной и не учитывает множество реальных факторов (кассовые разрывы, сезонность, инфляцию, дебиторку). Используйте как быстрый срез, а не как полноценный финансовый план.
  • Классификация полностью автоматическая – редкие или нестандартные назначения могут попасть в OTHER (в текущей версии практически исключено благодаря модели).
  • Поддерживается только формат 1CClientBankExchange (версии 1.02 и выше).

Вклад в проект

Pull request'ы приветствуются! Если вы нашли ошибку или хотите улучшить классификацию, откройте Issue.

Лицензия

MIT © 2025

About

🧠 AI CFO - интеллектуальный анализ банковской выписки 1С

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages