Files
prisma/README.md
T
Barabashka 2b0c748474 Вынести сценарий в JSON и добавить динамический loader.
Переключает запуск workflow на загрузку сценария из файлового хранилища по scenario_id и собирает шаги выполнения из definition.steps вместо хардкода в раннере.
2026-04-21 17:08:20 +03:00

120 lines
3.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Prisma Platform MVP
Минимальный чат-агент на Agno + Ollama с рантаймом AgentOS.
В этом проекте AgentOS работает как HTTP API сервер (FastAPI + Uvicorn).
## Требования
- Python 3.11+
- Запущенный Ollama endpoint (по умолчанию: `http://localhost:11435`)
- Доступная модель в Ollama (по умолчанию: `gemma4:31b`)
## Текущая структура
```text
prisma_platform/
├── .env
├── .env.example
├── requirements.txt
├── scenarios/
│ ├── index.json
│ └── news_source_discovery/
│ └── v1.json
└── src/
├── __init__.py
├── agent_os.py
├── agent_runner.py
├── main.py
├── observability.py
├── scenario_store.py
├── stub_tools.py
└── workflow_runner.py
```
## Установка
```bash
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
```
## Запуск
Интерактивный режим чата:
```bash
python -m src.main
```
Режим одного сообщения:
```bash
python -m src.main --message "Привет, что ты умеешь?"
```
Режим запуска сценария (идет загрузка сценария из `scenarios/index.json`):
```bash
python -m src.main --scenario-id news_source_discovery_v1 --workflow-input-json '{"url":"https://example.com/news"}'
```
## Запуск AgentOS
Запуск сервера AgentOS:
```bash
python -m src.agent_os
```
По умолчанию AgentOS работает на `http://127.0.0.1:7777`.
Документация API доступна по адресам:
- `http://127.0.0.1:7777/docs`
- `http://127.0.0.1:7777/redoc`
Проверка, что сервер поднят:
```bash
curl -s "http://127.0.0.1:7777/docs" | grep -n "Swagger UI"
```
## Переменные окружения
Основные переменные:
- `AGENT_ID` (по умолчанию: `prisma-agent`)
- `OLLAMA_MODEL_ID` (по умолчанию: `gemma4:31b`)
- `OLLAMA_HOST` (по умолчанию: `http://localhost:11435`)
- `OLLAMA_TEMPERATURE` (по умолчанию: `0`)
- `AGENT_MARKDOWN` (по умолчанию: `false`)
- `AGENT_DEBUG_MODE` (по умолчанию: `true`)
- `AGENT_INSTRUCTIONS` (по умолчанию: `You are a helpful assistant. Answer briefly and clearly.`)
- `AGENT_OS_HOST` (по умолчанию: `127.0.0.1`)
- `AGENT_OS_PORT` (по умолчанию: `7777`)
- `PHOENIX_TRACING_ENABLED` (по умолчанию: `false`)
- `PHOENIX_COLLECTOR_ENDPOINT` (по умолчанию: `http://localhost:6006`)
- `PHOENIX_PROJECT_NAME` (по умолчанию: `prisma-platform`)
## Phoenix трассировка (локально)
1. Установите зависимости:
```bash
pip install -r requirements.txt
```
2. Поднимите Phoenix (см. `docker-service/docker-compose.yml`) и включите трассировку в `.env`:
```dotenv
PHOENIX_TRACING_ENABLED=true
PHOENIX_COLLECTOR_ENDPOINT=http://localhost:6006
PHOENIX_PROJECT_NAME=prisma-platform
```
3. Запустите приложение как обычно (`python -m src.main` или `python -m src.agent_os`).