Report Generation
This page covers how to customize report generation for each developer profile.
Base Profile
The base profile (dev-profile-base) provides standalone video analysis without Video Analytics MCP tools or an incident database. Upload videos, generate reports with timestamped observations, and ask follow-up questions about video content.
Customizable Configuration
Key Customization Options
Video Understanding:
max_frames: Maximum frames to sample from video (default: 60)max_fps: Maximum frames per second to sample (default: 2)reasoning: Set totrueto enable VLM thinking traces
Report Generation:
vlm_prompt: Customize what the VLM analyzes and reports on
Customizing system_prompt
The system_prompt in video_understanding sets the base instructions for how the VLM responds. Use this to:
- Set the output language
- Define the response format (timestamps, structure)
- Provide examples of expected output
Example: Safety-focused system prompt
Customizing vlm_prompt
The vlm_prompts in video_report_gen define specific analysis tasks and other content details for the VLM. Each prompt generates a section in the final report.
Example: Traffic monitoring
Include [MM:SS-MM:SS] timestamp format in prompts to enable automatic snapshot injection into reports.
Video Summarization Profile
The Video Summarization profile extends the base profile with video summarization for videos over one minute.
Customizable Configuration
Key Customization Options
Video Summarization configuration:
chunk_duration: Seconds per video chunk (default: 10)conn_timeout_ms: Connection timeout for long videos (default: 5000ms)read_timeout_ms: Read timeout for long videos (default: 600000ms)temperature: LLM sampling temperature (default: 0.4)max_tokens: Maximum tokens for responses (default: 512)
HITL Templates:
hitl_scenario_template: Prompt shown to user for scenario inputhitl_events_template: Prompt for events to detecthitl_objects_template: Prompt for objects of interestdefault_scenario: Default scenariodefault_events: Default events list
Search Profile
The search profile adds embedding-based video search with higher-detail video analysis.
Customizable Configuration
Key Customization Options
Video Understanding:
max_frames: Set to 120 for more detailed analysisreasoning: Enabled by default for better accuracy
Embedding Search:
es_index: Elasticsearch index for video embeddings
Custom Report Templates
For incident-based workflows, use custom templates with template_report_gen:
Report Access
When the agent generates a report, it produces both Markdown (.md) and PDF (.pdf) files. These reports are served by the vss-agent container and can be accessed at the following URLs:
http://<HOST_IP>:8000/static/agent_report_<DATE>.mdhttp://<HOST_IP>:8000/static/agent_report_<DATE>.pdf
Replace <HOST_IP> with the IP address of the machine running the agent, and <DATE> with the date of the report.
Reports are stored in the container’s ephemeral filesystem by default and will be lost when the vss-agent container restarts.
Default Storage Behavior and Persistent Report Storage
Default Storage Behavior
By default, the agent uses an in-memory object store for generated reports:
With this configuration, reports are held in the container’s memory and served through the FastAPI static endpoint. Reports will be lost when the vss-agent container restarts.
Persistent Report Storage
To persist reports across container restarts, enable local copies in the template_report_gen or video_report_gen function configuration and mount the output directory as a Docker volume.
-
In your agent configuration file, set
save_local_copytotrueand configureoutput_dirto a path inside the container: -
Mount a host directory to the container’s
output_dirpath by adding a volume to your Docker Compose configuration:Replace
/path/on/host/reportswith the desired directory on your host machine. Generated.mdand.pdfreports will be saved to this directory and persist across container restarts.
Related Topics
- Agent Configuration - Full configuration reference
- Agent Customization - Additional customization options
- Agent Evaluation - Evaluate report quality with the Report Evaluator