Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🤖 AI Twins - Создание цифровых двойников на основе ИИ

Python FastAPI Streamlit LangChain Docker

🚀 Что это такое?

AI Twins - это система создания персонализированных ИИ-ассистентов, которые копируют стиль общения реальных людей. Загрузите экспорт чата из Telegram, и система автоматически создаст цифрового двойника, который будет общаться в точности как оригинал.

Примеры клонов clones.png

Пример общения chat.png

✨ Ключевые особенности

  • 🧠 Анализ личности: Автоматическое извлечение черт характера из реальных переписок
  • 💬 Естественное общение: ИИ-двойники поддерживают стиль оригинального собеседника
  • 🔍 RAG-технология: Контекстные ответы на основе исторических сообщений
  • 🎯 Мультимодальность: Поддержка текста и изображений в чате
  • ⚡ Реального времени: Стриминговые ответы с анимацией печати
  • 🔄 Мультимодельность: Поддержка GPT-4, Gemini и дообученных fine-tunned моделей

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

1. 📤 Загрузка данных

Экспорт чата Telegram (JSON) → Система анализа

2. 🔬 ИИ-анализ

GPT-4 анализирует переписки → Извлекает черты характера

3. 🎭 Создание двойника

Генерация профиля личности → Готовый ИИ-ассистент

4. 💬 Общение

Интерактивный чат → Ответы в стиле оригинала

🛠️ Технический стек

Backend (Высокопроизводительный API)

  • FastAPI - Современный асинхронный веб-фреймворк
  • LangGraph - Оркестрация ИИ-агентов с управлением состоянием
  • SQLModel - Типобезопасные операции с базой данных
  • LangChain - Интеграция с языковыми моделями
  • OpenAI/Gemini - Продвинутые LLM модели

Frontend (Интуитивный интерфейс)

  • Streamlit - Быстрое создание веб-приложений
  • Многостраничная архитектура - Создание, редактирование, чат
  • Реальное время - Стриминговые ответы
  • Загрузка файлов - Поддержка JSON и документов

Infrastructure (Готовность к продакшену)

  • Docker Compose - Контейнеризация
  • SQLite - Встроенная база данных
  • Vector Store - Семантический поиск
  • Async/Await - Высокая производительность

🏛️ Архитектура

┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐
│   Streamlit     │    │   FastAPI       │    │   LangGraph     │
│   Frontend      │◄──►│   Backend       │◄──►│   AI Agents     │
│                 │    │                 │    │                 │
└─────────────────┘    └─────────────────┘    └─────────────────┘
         │                       │                       │
         │                       │                       │
         ▼                       ▼                       ▼
┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐
│   Static Files  │    │   SQLite DB     │    │   Vector Store  │
│   (Images, etc) │    │   (User Data)   │    │   (Embeddings)  │
└─────────────────┘    └─────────────────┘    └─────────────────┘

architecture.png

🚀 Быстрый старт

Требования

  • Python 3.12+
  • Docker & Docker Compose
  • OpenAI API ключ

Установка и запуск

# Клонируем репозиторий
git clone https://github.com/yourusername/ai-twins.git
cd ai-twins

# Настраиваем переменные окружения
cp backend/.env.example backend/.env
cp frontend/.env.example frontend/.env

# Добавляем API ключи в backend/.env
OPENAI_API_KEY=your-openai-key-here

# Запускаем приложение
docker-compose up --build

Доступ к приложению

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

Создание ИИ-двойника

  1. Экспорт чата Telegram

    • Откройте Telegram Desktop
    • Выберите чат → Меню → Экспорт истории чата
    • Выберите формат JSON
  2. Загрузка в систему

    • Перейдите на страницу создания
    • Заполните базовую информацию
    • Загрузите JSON файл чата
    • Нажмите "Создать двойника"
  3. Ожидание обработки

    • ИИ анализирует переписки (~2-3 минуты)
    • Извлекает черты характера и стиль общения
    • Создает персонализированный профиль
  4. Готово к общению!

    • Переходите в чат
    • Общайтесь с цифровым двойником
    • Наслаждайтесь естественным диалогом

🔧 Разработка

Локальная разработка

# Backend
cd backend
uv sync --frozen
uv run uvicorn app:app --host 0.0.0.0 --port 8000 --reload

# Frontend
cd frontend
uv sync --frozen
uv run streamlit run app.py --server.port=80

# LangGraph разработка
cd backend
uv run langgraph dev

Тестирование

# Запуск тестов
cd frontend
uv run pytest tests/

# Тестирование API
curl -X GET http://localhost:8000/twins/

🌟 Продвинутые возможности

Кастомные модели

  • Поддержка fine-tuned моделей
  • Интеграция с локальными LLM
  • Настройка параметров генерации

RAG система

  • Семантический поиск по истории чатов
  • Контекстные ответы
  • Векторные embedding'и

Мультимодальность

  • Обработка изображений
  • Смешанный контент (текст + изображения)
  • Base64 кодирование

About

Сервис создания цифровых ИИ двойников на базе переписок

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages