108 lines
2.9 KiB
Markdown
108 lines
2.9 KiB
Markdown
# Новая Планета - AI Agents (Python)
|
||
|
||
ИИ-агенты и скрипты для проекта "Новая Планета" - визуальное расписание для детей с РАС.
|
||
|
||
## Возможности
|
||
|
||
- 🤖 **GigaChat интеграция** — работа с API для генерации расписаний
|
||
- 📊 **Обработка данных** — анализ прогресса детей
|
||
- 🧠 **ML модели** — рекомендательная система
|
||
- 🔧 **Скрипты автоматизации** — генерация контента, обработка изображений
|
||
|
||
## Tech Stack
|
||
|
||
- Python 3.11+
|
||
- LangChain, OpenAI SDK (адаптер для GigaChat)
|
||
- Pydantic для валидации
|
||
- sentence-transformers, scikit-learn для ML
|
||
- aiohttp, redis-py для инфраструктуры
|
||
|
||
## Установка
|
||
|
||
```bash
|
||
pip install -r requirements.txt
|
||
# или
|
||
poetry install
|
||
```
|
||
|
||
## Настройка
|
||
|
||
```bash
|
||
cp .env.example .env
|
||
# Заполните GIGACHAT_CLIENT_ID и GIGACHAT_CLIENT_SECRET
|
||
```
|
||
|
||
## Использование
|
||
|
||
### Генерация расписания
|
||
|
||
```python
|
||
from agents.gigachat_client import GigaChatClient
|
||
from agents.schedule_generator import ScheduleGenerator
|
||
from services.token_manager import TokenManager
|
||
|
||
token_manager = TokenManager()
|
||
gigachat = GigaChatClient(token_manager)
|
||
generator = ScheduleGenerator(gigachat)
|
||
|
||
schedule = await generator.generate(
|
||
child_age=7,
|
||
preferences=["рисование", "прогулка"],
|
||
date="2025-12-16"
|
||
)
|
||
```
|
||
|
||
### Чат с агентом
|
||
|
||
```python
|
||
from agents.chat_agent import ChatAgent
|
||
from services.cache_service import CacheService
|
||
|
||
cache = CacheService()
|
||
agent = ChatAgent(gigachat, cache)
|
||
|
||
response, tokens = await agent.chat(
|
||
user_id=user_id,
|
||
message="Помоги составить расписание",
|
||
conversation_id="conv_123"
|
||
)
|
||
```
|
||
|
||
## Скрипты
|
||
|
||
```bash
|
||
# Генерация тестовых данных
|
||
python scripts/generate_test_data.py --users 100 --schedules 500
|
||
|
||
# Анализ использования токенов
|
||
python scripts/analyze_usage.py --month 2025-12
|
||
|
||
# Экспорт промптов
|
||
python scripts/migrate_prompts.py export --file prompts.json
|
||
```
|
||
|
||
## Тестирование
|
||
|
||
```bash
|
||
pytest tests/ -v
|
||
pytest --cov=agents --cov-report=html
|
||
```
|
||
|
||
## Структура
|
||
|
||
- `agents/` — ИИ-агенты (GigaChat, генератор расписаний, чат)
|
||
- `prompts/` — промпты для LLM
|
||
- `services/` — сервисы (токены, кэш, обработка изображений)
|
||
- `models/` — Pydantic модели
|
||
- `scripts/` — скрипты автоматизации
|
||
|
||
## Связанные репозитории
|
||
|
||
- [Backend (Python/FastAPI)](https://github.com/your-org/new-planet-backend)
|
||
- [Frontend (Android)](https://github.com/your-org/new-planet-android)
|
||
|
||
## Лицензия
|
||
|
||
MIT License
|
||
|