AI (人工智慧): 伺服器
關於
Agent DVR 完全整合了 AI 伺服器,如 DeepStack AI、CodeProject AI、PlateRecognizer.com、Claude、Gemini、OpenAI (ChatGPT) 以及本地 LLM,如 Ollama、vLLM 和 LM Studio,以添加智能警報過濾、物體識別、場景識別和智能事件控制。
除了 DeepStack 和 CodeProject AI,您還可以使用其他支持相同 API 的 AI 伺服器:
物體識別與計算機視覺
- https://codeproject.github.io/ - 跨平台 GPU/CPU 基礎的 AI 處理伺服器
- https://docs.platerecognizer.com/ - 車牌識別伺服器(基於網頁的 API)
- https://github.com/runningman84/docker-coral-rest-server - 在 RPi(或 Linux/Mac)上運行的 Tensorflow-lite 模型,並通過 Coral USB 隨身碟加速
- https://github.com/robmarkcole/coral-pi-rest-server/ - 通過 Flask 應用在 Coral USB 加速器上運行的 Tensorflow-lite 模型
- https://github.com/xnorpx/blue-candle - 超小型物體識別伺服器
雲端 AI 服務
- https://platform.openai.com/ - OpenAI API(ChatGPT、GPT-4 Vision)用於圖像分析和聊天
- https://console.anthropic.com/ - Anthropic Claude API 用於高級推理和圖像理解
- https://ai.google.dev/ - Google Gemini API 用於多模態 AI 功能
- https://docs.anthropic.com/ - Claude API 文檔
- https://platform.openai.com/docs/ - OpenAI API 文檔
- https://ai.google.dev/gemini-api/docs - Gemini API 文檔
本地 AI 伺服器 (LLMs)
- https://ollama.com/ - Ollama:在本地運行大型語言模型
- https://docs.vllm.ai/ - vLLM:高吞吐量的 LLM 推理和服務
- https://lmstudio.ai/ - LM Studio:易於使用的桌面應用程序,用於本地 LLM
- https://github.com/ollama/ollama - Ollama GitHub 倉庫
- https://github.com/vllm-project/vllm - vLLM GitHub 倉庫
添加 AI 模型
自定義 AI 模型可讓您擴展 Agent DVR 的物體檢測功能,超越內置選項,例如識別野生動物、送貨車輛或任何訓練模型可以找到的其他物體。若要將您自己的模型檔案新增至 Agent DVR,請前往伺服器設定 > AI 設定,並按一下AI 模型下的物體識別。Agent 隨附兩個預先建置的模型,已針對 Agent DVR 進行效能調整。
在設定模型之前,您需要將其新增至 Agent DVR 的 Models 資料夾(參見建置 AI 模型)。此資料夾通常位於Agent/Media/Models/ONNX(路徑可能因 OS 而異)。如果您不確定,[添加模型] 頁面上會顯示完整路徑。Agent 使用.onnx模型。您可以使用 Python 工具將其他 AI 模型格式轉換為 ONNX。
建置並複製模型後,將其新增至 Agent 很簡單 - 按一下以新增模型:
- 名稱:為您的模型命名 - 您可以使用任何您喜歡的名稱。
- 說明:模型功能的選擇性說明。
- 模型檔案:選擇您複製到資料夾中的模型檔案名稱。
- 標籤:輸入模型尋找的標籤列表(或「類別」),格式為 CSV,不加引號(空格會自動修剪)。
- 配置:選擇您的模型是 NCHW 或 NHWC。如果您不確定,大多數模型為 NCHW。
- 通道順序:選擇您的模型是否需要 RGB 或 BGR 影像。大多數模型使用 RGB。如果您的模型是單通道(灰階),此選項將被忽略。
- 正規化:選擇在模型使用資料前應如何正規化資料。大多數模型使用重新縮放 (0-1),將像素值除以 255。
- 填充影像:此選項控制影像是否應拉伸至輸入維度或用黑色條紋填充。通常為了準確性,填充影像更好。
- 具有 NMS:如果您的模型已在內部執行非最大值抑制,請勾選此項。否則 Agent 將自行執行 NMS。NMS 控制結果矩形的篩選方式。
- 預設 NMS:設定 NMS 的重疊限制器(預設為 45% 重疊)。
新增您的模型後,它將在您的裝置的物體識別標籤中可用。如果您遇到問題,可以返回模型設定並進行變更。Agent 也支援重新載入模型檔案,因此您可以在其執行時用新版本覆寫它。
設定 AI 伺服器
要設置AI伺服器,請點擊Agent DVR主界面右上角的圖標。然後在Configuration下點擊Settings,從下拉菜單中選擇AI Settings,再點擊AI Servers。
Agent DVR與CodeProject.AI集成,提供各種AI功能,包括物體識別、人臉識別、ALPR(自動車牌識別)和超解析度(增強)。PlateRecognizer.com也被支持作為ALPR提供商。CodeProject.AI是開源、免費且與大多數平台兼容。
開始時,為您的平台安裝AI伺服器,然後通過點擊AI Servers再點擊Add將Agent DVR連接到它。
您可以根據需要向Agent DVR添加任意數量的AI伺服器。Agent DVR中的攝像頭可配置為每個功能使用不同的AI伺服器,或者您可以為所有任務使用一個AI伺服器。
配置您的伺服器
- Name:為您的伺服器命名,例如Cat Catcher。
- AI Server URL:輸入您的AI伺服器的URL,例如http://localhost:32168/
- API Key:如果已設置,請輸入您的密鑰(可選)。
- Timeout:伺服器請求的超時時間(秒)。
- Retry delay:重試向此伺服器發送失敗請求之前的時間(秒)。
點擊OK保存您的設置。
使用 OpenAI
要設定 OpenAI ("ChatGPT") 以回答關於您的影片串流中發生之事的問題,請導覽至「伺服器設定 - AI 設定」,並在「詢問 AI」下選擇「OpenAI」。
- URL: 輸入服務的 URL。預設值為「https://api.openai.com/v1/responses」。
- OpenAI API 金鑰: 在註冊 OpenAI 後,前往 API 金鑰頁面 並生成一個新的秘密金鑰。將此金鑰複製並粘貼到指定的字段中。
- Model: 指定要使用的模型。預設值為 gpt-5.4-mini。OpenAI 日後可能會移除或變更此項目。
- 最大標記: 這將設置每個請求的最大標記使用量。如果遇到問題,請檢查 /logs.html 中的日誌,因為這可能與標記使用有關。
一旦配置了 OpenAI,請參考 Ask AI 以獲取有關如何使用它回答有關您攝像機鏈路中發生的事情的一般問題的說明。
使用Claude
若要設定 Claude AI 回答有關您的視訊串流中發生情況的問題,請瀏覽至伺服器設定 - AI 設定並在 Ask AI 下選擇 "Claude"。
- URL:輸入服務的 URL。預設值為 "https://api.anthropic.com/v1/messages"。
- Claude API 金鑰:註冊 Claude 後,請造訪 API 金鑰頁面並建立新的秘密金鑰。複製並將此金鑰貼入欄位中。
- 版本:指定要使用的 API 版本。預設值為 2023-06-01。此版本可能在某個時點被 Anthropic 移除或變更。
- 模型:指定要使用的模型。撰寫時的預設值為 claude-sonnet-4-6(Claude Sonnet 4.6)。
- 最大權杖:此項目控制每個請求的最大權杖支出。如果您遇到問題,請檢查 /logs.html 的日誌,因為可能與權杖支出有關。
設定 Claude 後,請參閱 Ask AI 了解如何使用它來辨識您的攝影機串流中的一般情況。
使用雙子座
若要設定 Gemini 來回答關於您的視頻饋送中發生的事情的問題,請導覽至伺服器設定 - AI 設定並在「詢問 AI」下選擇「Gemini」。
- URL: 輸入服務的 URL。預設值為「https://generativelanguage.googleapis.com」。
- Gemini API 金鑰: 在註冊 Gemini 後,請造訪 API 金鑰頁面並建立新的祕密金鑰。複製此金鑰並貼到欄位中。
- 版本:指定要使用的 API 版本。預設值為 v1beta。Google 可能會在某個時刻移除或更改此項。
- 模型: 指定要使用的模型。撰寫時的預設值為 gemini-2.5-flash。輸入 API 金鑰後,Agent 會列出可供您帳戶使用的視覺模型。
- 最大權杖:此項目控制每個請求的最大權杖支出。如果您遇到問題,請檢查 /logs.html 的日誌,因為可能與權杖支出有關。
Gemini 設定完成後,請參閱 詢問 AI 以了解如何使用它來識別攝影機饋送中的一般情境。
使用其他 LLM 伺服器
您可以使用自己的本地 LLM 伺服器(例如 vLLM、Ollama 和 LM Studio)來描述 Agent DVR 從您的攝像機在警報事件中捕捉的影像,以及回答關於您的影片串流中發生的情況的問題。請參閱 描述警報和 詢問 AI。
要配置本地 AI 服务器,请转到 Server Settings - AI Settings,然后单击要使用的 LLM(Ollama、vLLM 或 LM Studio)旁边的 Configure 按钮。
- URL: 指定运行 LLM 服务器的端点。默认 URL 为:
- Ollama:
http://localhost:11434/api/chat - vLLM:
http://localhost:8000/v1/chat/completions - LM Studio:
http://localhost:1234/v1/chat/completions
- Ollama:
- API Key: 如果 LLM 服务器需要身份验证,请在此处输入 API 密钥。大多数本地服务器不需要此密钥,除非特别配置。
- Model: 选择具有视觉能力的模型用于图像分析。您必须已在 LLM 服务器中下载并加载此模型。Agent 建议一些热门选项,包括:
- Qwen VL models(高性能)
- Gemma 4(大小范围广)
- Llama 3.2 Vision(Meta)
- Mistral Small 3.1
- moondream(非常小,适合低端硬件,仅 Ollama)
- Temperature: 控制响应中的创意性与准确性(0.0-1.0)。较低的值(0.3-0.4)会产生更多事实性、一致的描述。较高的值(0.6-0.8)会生成更多样化、创意性的响应。建议:用于安全摄像头分析时为 0.4。
- Max Tokens: AI 响应中的最大字数/令牌数。较高的值允许更详细的描述,但生成时间更长。建议:详细图像分析时为 300-500,简要描述时为 150-250。
- top_p: 通过限制词汇选择来控制响应多样性(0.0-1.0)。较低的值使用更常见的词汇,较高的值允许更多样化的词汇。建议:0.9 以平衡准确性和自然语言。
- top_k: 限制模型从最可能的后续词语的前 K 个中选择。较低的值(20-40)会产生更集中的响应,较高的值(80-100)允许更多样化。建议:用于可靠的图像描述时为 50。
使用 PlateRecognizer.com
要在Agent DVR中配置LPR(ANPR或車牌識別),請前往 - AI設置的Server設置,然後在Plate Recognizer下輸入詳細信息。在Plate Recognizer上註冊免費試用。無需信用卡。
使用 DoubleTake
DoubleTake 是一个开源平台,提供统一的 API 用于处理面部识别,使用:
- CompreFace
- Amazon Rekognition
- DeepStack
- CodeProject.AI Server
- Facebox
你需要安装并配置 DoubleTake,选择你偏好的面部识别选项。
DoubleTake 设置完成后,打开 Agent DVR 并前往服务器设置 - AI 设置,然后点击 DoubleTake 旁边的配置按钮。
输入你的 doubletake 服务器 URL(例如 http://localhost:3000/)和密码(如有设置)。
点击确定,然后编辑摄像头并前往面部识别。将 AI 服务器选项设置为 DoubleTake,并根据需要配置面部识别。