blakeblackshear.frigate/web/public/locales/en/views/explore.json
Josh Hawkins ef406ba647 Semantic Search Triggers (#18969)
* semantic trigger test

* database and model

* config

* embeddings maintainer and trigger post-processor

* api to create, edit, delete triggers

* frontend and i18n keys

* use thumbnail and description for trigger types

* image picker tweaks

* initial sync

* thumbnail file management

* clean up logs and use saved thumbnail on frontend

* publish mqtt messages

* webpush changes to enable trigger notifications

* add enabled switch

* add triggers from explore

* renaming and deletion fixes

* fix typing

* UI updates and add last triggering event time and link

* log exception instead of return in endpoint

* highlight entry in UI when triggered

* save and delete thumbnails directly

* remove alert action for now and add descriptions

* tweaks

* clean up

* fix types

* docs

* docs tweaks

* docs

* reuse enum
2025-08-07 20:57:35 -06:00

218 lines
8.9 KiB
JSON

{
"documentTitle": "Explore - Frigate",
"generativeAI": "Generative AI",
"exploreMore": "Explore more {{label}} objects",
"exploreIsUnavailable": {
"title": "Explore is Unavailable",
"embeddingsReindexing": {
"context": "Explore can be used after tracked object embeddings have finished reindexing.",
"startingUp": "Starting up…",
"estimatedTime": "Estimated time remaining:",
"finishingShortly": "Finishing shortly",
"step": {
"thumbnailsEmbedded": "Thumbnails embedded: ",
"descriptionsEmbedded": "Descriptions embedded: ",
"trackedObjectsProcessed": "Tracked objects processed: "
}
},
"downloadingModels": {
"context": "Frigate is downloading the necessary embeddings models to support the Semantic Search feature. This may take several minutes depending on the speed of your network connection.",
"setup": {
"visionModel": "Vision model",
"visionModelFeatureExtractor": "Vision model feature extractor",
"textModel": "Text model",
"textTokenizer": "Text tokenizer"
},
"tips": {
"context": "You may want to reindex the embeddings of your tracked objects once the models are downloaded.",
"documentation": "Read the documentation"
},
"error": "An error has occurred. Check Frigate logs."
}
},
"trackedObjectDetails": "Tracked Object Details",
"type": {
"details": "details",
"snapshot": "snapshot",
"video": "video",
"object_lifecycle": "object lifecycle"
},
"objectLifecycle": {
"title": "Object Lifecycle",
"noImageFound": "No image found for this timestamp.",
"createObjectMask": "Create Object Mask",
"adjustAnnotationSettings": "Adjust annotation settings",
"scrollViewTips": "Scroll to view the significant moments of this object's lifecycle.",
"autoTrackingTips": "Bounding box positions will be inaccurate for autotracking cameras.",
"count": "{{first}} of {{second}}",
"trackedPoint": "Tracked Point",
"lifecycleItemDesc": {
"visible": "{{label}} detected",
"entered_zone": "{{label}} entered {{zones}}",
"active": "{{label}} became active",
"stationary": "{{label}} became stationary",
"attribute": {
"faceOrLicense_plate": "{{attribute}} detected for {{label}}",
"other": "{{label}} recognized as {{attribute}}"
},
"gone": "{{label}} left",
"heard": "{{label}} heard",
"external": "{{label}} detected",
"header": {
"zones": "Zones",
"ratio": "Ratio",
"area": "Area"
}
},
"annotationSettings": {
"title": "Annotation Settings",
"showAllZones": {
"title": "Show All Zones",
"desc": "Always show zones on frames where objects have entered a zone."
},
"offset": {
"label": "Annotation Offset",
"desc": "This data comes from your camera's detect feed but is overlayed on images from the the record feed. It is unlikely that the two streams are perfectly in sync. As a result, the bounding box and the footage will not line up perfectly. However, the <code>annotation_offset</code> field can be used to adjust this.",
"documentation": "Read the documentation ",
"millisecondsToOffset": "Milliseconds to offset detect annotations by. <em>Default: 0</em>",
"tips": "TIP: Imagine there is an event clip with a person walking from left to right. If the event timeline bounding box is consistently to the left of the person then the value should be decreased. Similarly, if a person is walking from left to right and the bounding box is consistently ahead of the person then the value should be increased.",
"toast": {
"success": "Annotation offset for {{camera}} has been saved to the config file. Restart Frigate to apply your changes."
}
}
},
"carousel": {
"previous": "Previous slide",
"next": "Next slide"
}
},
"details": {
"item": {
"title": "Review Item Details",
"desc": "Review item details",
"button": {
"share": "Share this review item",
"viewInExplore": "View in Explore"
},
"tips": {
"mismatch_one": "{{count}} unavailable object was detected and included in this review item. Those objects either did not qualify as an alert or detection or have already been cleaned up/deleted.",
"mismatch_other": "{{count}} unavailable objects were detected and included in this review item. Those objects either did not qualify as an alert or detection or have already been cleaned up/deleted.",
"hasMissingObjects": "Adjust your configuration if you want Frigate to save tracked objects for the following labels: <em>{{objects}}</em>"
},
"toast": {
"success": {
"regenerate": "A new description has been requested from {{provider}}. Depending on the speed of your provider, the new description may take some time to regenerate.",
"updatedSublabel": "Successfully updated sub label.",
"updatedLPR": "Successfully updated license plate.",
"audioTranscription": "Successfully requested audio transcription."
},
"error": {
"regenerate": "Failed to call {{provider}} for a new description: {{errorMessage}}",
"updatedSublabelFailed": "Failed to update sub label: {{errorMessage}}",
"updatedLPRFailed": "Failed to update license plate: {{errorMessage}}",
"audioTranscription": "Failed to request audio transcription: {{errorMessage}}"
}
}
},
"label": "Label",
"editSubLabel": {
"title": "Edit sub label",
"desc": "Enter a new sub label for this {{label}}",
"descNoLabel": "Enter a new sub label for this tracked object"
},
"editLPR": {
"title": "Edit license plate",
"desc": "Enter a new license plate value for this {{label}}",
"descNoLabel": "Enter a new license plate value for this tracked object"
},
"snapshotScore": {
"label": "Snapshot Score"
},
"topScore": {
"label": "Top Score",
"info": "The top score is the highest median score for the tracked object, so this may differ from the score shown on the search result thumbnail."
},
"recognizedLicensePlate": "Recognized License Plate",
"estimatedSpeed": "Estimated Speed",
"objects": "Objects",
"camera": "Camera",
"zones": "Zones",
"timestamp": "Timestamp",
"button": {
"findSimilar": "Find Similar",
"regenerate": {
"title": "Regenerate",
"label": "Regenerate tracked object description"
}
},
"description": {
"label": "Description",
"placeholder": "Description of the tracked object",
"aiTips": "Frigate will not request a description from your Generative AI provider until the tracked object's lifecycle has ended."
},
"expandRegenerationMenu": "Expand regeneration menu",
"regenerateFromSnapshot": "Regenerate from Snapshot",
"regenerateFromThumbnails": "Regenerate from Thumbnails",
"tips": {
"descriptionSaved": "Successfully saved description",
"saveDescriptionFailed": "Failed to update the description: {{errorMessage}}"
}
},
"itemMenu": {
"downloadVideo": {
"label": "Download video",
"aria": "Download video"
},
"downloadSnapshot": {
"label": "Download snapshot",
"aria": "Download snapshot"
},
"viewObjectLifecycle": {
"label": "View object lifecycle",
"aria": "Show the object lifecycle"
},
"findSimilar": {
"label": "Find similar",
"aria": "Find similar tracked objects"
},
"addTrigger": {
"label": "Add trigger",
"aria": "Add a trigger for this tracked object"
},
"audioTranscription": {
"label": "Transcribe",
"aria": "Request audio transcription"
},
"submitToPlus": {
"label": "Submit to Frigate+",
"aria": "Submit to Frigate Plus"
},
"viewInHistory": {
"label": "View in History",
"aria": "View in History"
},
"deleteTrackedObject": {
"label": "Delete this tracked object"
}
},
"dialog": {
"confirmDelete": {
"title": "Confirm Delete",
"desc": "Deleting this tracked object removes the snapshot, any saved embeddings, and any associated object lifecycle entries. Recorded footage of this tracked object in History view will <em>NOT</em> be deleted.<br /><br />Are you sure you want to proceed?"
}
},
"noTrackedObjects": "No Tracked Objects Found",
"fetchingTrackedObjectsFailed": "Error fetching tracked objects: {{errorMessage}}",
"trackedObjectsCount_one": "{{count}} tracked object ",
"trackedObjectsCount_other": "{{count}} tracked objects ",
"searchResult": {
"tooltip": "Matched {{type}} at {{confidence}}%",
"deleteTrackedObject": {
"toast": {
"success": "Tracked object deleted successfully.",
"error": "Failed to delete tracked object: {{errorMessage}}"
}
}
}
}