livrare lot 2
This commit is contained in:
commit
8ecc78e729
763 changed files with 164593 additions and 0 deletions
192
backend/services/orchestration-layer/README.md
Normal file
192
backend/services/orchestration-layer/README.md
Normal file
|
|
@ -0,0 +1,192 @@
|
|||
# Orchestration Layer
|
||||
|
||||
Business logic services for the DIDI platform. Contains the analysis engine and parameters management API.
|
||||
|
||||
## Services
|
||||
|
||||
### Agent V3
|
||||
Analysis pipeline engine. Processes content through multiple detection components and generates risk verdicts.
|
||||
- Port: 24803
|
||||
- Container: didi-agent-v3
|
||||
- Access: Via Kong at /agent-v3/*
|
||||
|
||||
### didiFramework
|
||||
CRUD API for detection parameters. Manages techniques, dimensions, weights, and prompts.
|
||||
- Port: 3005
|
||||
- Container: didi-framework
|
||||
- Database: PostgreSQL cluster (bos_parammgmt schema)
|
||||
|
||||
## Architecture
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────────────────────────────────┐
|
||||
│ ORCHESTRATION LAYER │
|
||||
├─────────────────────────────────────────────────────────────────────────┤
|
||||
│ │
|
||||
│ ┌─────────────────────────────┐ ┌─────────────────────────────┐ │
|
||||
│ │ Agent V3 │ │ didiFramework │ │
|
||||
│ │ Port 24803 │ │ Port 3005 │ │
|
||||
│ ├─────────────────────────────┤ ├─────────────────────────────┤ │
|
||||
│ │ │ │ │ │
|
||||
│ │ Pipeline Components: │ │ CRUD Endpoints: │ │
|
||||
│ │ - Techniques Detection │ │ - /api/techniques │ │
|
||||
│ │ - AI Content Detection │ │ - /api/dimensions │ │
|
||||
│ │ - Claims Verification │ │ - /api/subdimensions │ │
|
||||
│ │ - Domain Analysis │ │ - /api/indicators │ │
|
||||
│ │ - Verdict Aggregation │ │ - /api/weights │ │
|
||||
│ │ │ │ - /api/prompts │ │
|
||||
│ │ APIs: │ │ - /api/sync-redis │ │
|
||||
│ │ - /api/v3/pipeline/* │ │ - /api/history │ │
|
||||
│ │ - /api/v3/techniques/* │ │ │ │
|
||||
│ │ - /api/v3/ai-tampered/* │ │ │ │
|
||||
│ │ - /api/v3/claims/* │ │ │ │
|
||||
│ │ - /api/v3/history/* │ │ │ │
|
||||
│ │ │ │ │ │
|
||||
│ └──────────────┬──────────────┘ └──────────────┬──────────────┘ │
|
||||
│ │ │ │
|
||||
│ ▼ ▼ │
|
||||
│ ┌─────────────────────────────────────────────────────────────────┐ │
|
||||
│ │ Redis Cache │ │
|
||||
│ │ - Session state │ │
|
||||
│ │ - Framework parameters (synced) │ │
|
||||
│ │ - Analysis results (temporary) │ │
|
||||
│ └─────────────────────────────────────────────────────────────────┘ │
|
||||
│ │ │ │
|
||||
│ ▼ ▼ │
|
||||
│ ┌─────────────────────────────────────────────────────────────────┐ │
|
||||
│ │ PostgreSQL Cluster │ │
|
||||
│ │ 10.11.50.167:5000 │ │
|
||||
│ │ - bos_parammgmt: Detection parameters │ │
|
||||
│ │ - bos_analysis: Analysis results │ │
|
||||
│ └─────────────────────────────────────────────────────────────────┘ │
|
||||
│ │
|
||||
└─────────────────────────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
## Directory Structure
|
||||
|
||||
```
|
||||
orchestration-layer/
|
||||
├── agent-v3/ # Analysis engine
|
||||
│ ├── docker-compose.yml
|
||||
│ ├── src/
|
||||
│ │ ├── api/ # Route handlers
|
||||
│ │ ├── components/ # Analysis components
|
||||
│ │ │ ├── techniques/ # Manipulation detection
|
||||
│ │ │ ├── ai-tampered/ # AI content detection
|
||||
│ │ │ ├── claims/ # Claim verification
|
||||
│ │ │ └── pipeline/ # Orchestration
|
||||
│ │ ├── config/ # Configuration
|
||||
│ │ └── core/ # Core utilities
|
||||
│ └── scripts/ # Build/deploy scripts
|
||||
├── didiFramework/ # Parameters API
|
||||
│ ├── docker-compose.yml
|
||||
│ ├── src/
|
||||
│ │ ├── routes/ # API endpoints
|
||||
│ │ ├── config/ # Database config
|
||||
│ │ ├── types/ # TypeScript types
|
||||
│ │ └── utils/ # Utilities
|
||||
│ ├── sql/ # SQL scripts
|
||||
│ └── scripts/ # Utilities
|
||||
└── docs/ # Documentation
|
||||
```
|
||||
|
||||
## Quick Start
|
||||
|
||||
### Start Both Services
|
||||
|
||||
```bash
|
||||
# Start didiFramework
|
||||
cd didiFramework
|
||||
docker compose up -d
|
||||
|
||||
# Start Agent V3
|
||||
cd ../agent-v3
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
### Check Status
|
||||
|
||||
```bash
|
||||
docker ps | grep -E "framework|agent-v3"
|
||||
```
|
||||
|
||||
### View Logs
|
||||
|
||||
```bash
|
||||
docker logs -f didi-framework
|
||||
docker logs -f didi-agent-v3
|
||||
```
|
||||
|
||||
## API Overview
|
||||
|
||||
### Agent V3 Endpoints
|
||||
|
||||
Analysis Pipeline:
|
||||
- POST /api/v3/pipeline/analyze - Analyze text
|
||||
- POST /api/v3/pipeline/analyze-url - Analyze URL
|
||||
- POST /api/v3/pipeline/analyze-media - Analyze media
|
||||
- GET /api/v3/pipeline/:sessionId/status - Check status
|
||||
- GET /api/v3/pipeline/:sessionId/result - Get result
|
||||
|
||||
Individual Components:
|
||||
- POST /api/v3/techniques/analyze - Techniques only
|
||||
- POST /api/v3/ai-tampered/analyze - AI detection only
|
||||
- POST /api/v3/claims/analyze - Claims only
|
||||
|
||||
History:
|
||||
- GET /api/v3/history - List analyses
|
||||
- GET /api/v3/history/:sessionId - Analysis details
|
||||
- DELETE /api/v3/history/:sessionId - Delete analysis
|
||||
|
||||
### didiFramework Endpoints
|
||||
|
||||
Parameters:
|
||||
- GET/POST/PUT/DELETE /api/techniques
|
||||
- GET/POST/PUT/DELETE /api/dimensions
|
||||
- GET/POST/PUT/DELETE /api/subdimensions
|
||||
- GET/POST/PUT/DELETE /api/indicators
|
||||
|
||||
Weights:
|
||||
- GET/PUT /api/weights/component
|
||||
- GET/PUT /api/weights/multipliers
|
||||
- GET/PUT /api/weights/scenarios
|
||||
|
||||
Sync:
|
||||
- POST /api/sync-redis - Sync all params to Redis
|
||||
- GET /api/sync-redis/status - Check sync status
|
||||
|
||||
History (proxy):
|
||||
- GET /api/history - Analysis history
|
||||
- GET /api/history/:sessionId - Analysis details
|
||||
|
||||
## Data Flow
|
||||
|
||||
1. Request arrives at Kong (/agent-v3/*)
|
||||
2. Kong routes to Agent V3 (port 24803)
|
||||
3. Agent V3 loads parameters from Redis (synced from didiFramework)
|
||||
4. Analysis components process content
|
||||
5. Results saved to Redis (temporary) and PostgreSQL (permanent)
|
||||
6. Response returned through Kong
|
||||
|
||||
## Configuration
|
||||
|
||||
### Agent V3
|
||||
|
||||
Environment variables in docker-compose.yml:
|
||||
- REDIS_HOST, REDIS_PORT, REDIS_PASSWORD
|
||||
- PG_HOST, PG_PORT, PG_DATABASE, PG_USER, PG_PASSWORD
|
||||
- LLM provider API keys
|
||||
|
||||
### didiFramework
|
||||
|
||||
Environment variables:
|
||||
- DB_HOST, DB_PORT, DB_NAME, DB_USER, DB_PASSWORD
|
||||
- REDIS_HOST, REDIS_PORT, REDIS_PASSWORD
|
||||
|
||||
## Dependencies
|
||||
|
||||
Both services depend on:
|
||||
- PostgreSQL cluster (10.11.50.167:5000)
|
||||
- Redis (didi-cache)
|
||||
- Network: didi-staging_didi-staging
|
||||
Loading…
Add table
Add a link
Reference in a new issue