AI (人工智能): 服务器

关于

Agent DVR 完全与 AI 服务器集成,如 DeepStack AI、CodeProject AI、PlateRecognizer.com、Claude、Gemini、OpenAI (ChatGPT) 以及本地 LLM,如 Ollama、vLLM 和 LM Studio,以添加智能警报过滤、物体识别、场景识别和智能事件控制。

除了 DeepStack 和 CodeProject AI,您还可以使用其他支持相同 API 的 AI 服务器:

物体识别与计算机视觉

云 AI 服务

本地 AI 服务器(LLMs)

注意: 云 AI 服务需要 API 密钥,并可能产生使用费用。本地 AI 服务器在您自己的硬件上运行并保持数据私密,但需要更多系统资源。

添加 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 服务器

较新版本的 Agent DVR 内置了 AI,能够实现更快的处理速度和更低的开销。使用本地 AI,它可以实时响应,而不是使用较慢的 AI 服务器。
AI Server List

要设置 AI 服务器,请点击 Agent DVR 主界面右上角的图标。然后在配置下点击设置,从下拉菜单中选择AI 设置,并点击AI 服务器

Agent DVR 与 CodeProject.AI 集成,支持多项 AI 功能,包括对象识别、人脸识别、ALPR(自动车牌识别)和超分辨率(增强)。还支持 PlateRecognizer.com 作为 ALPR 提供商。CodeProject.AI 是开源免费的,兼容大多数平台。

首先,为你的平台安装 AI 服务器,然后通过点击AI 服务器再点击添加,将 Agent DVR 连接到该服务器。

你可以根据需要向 Agent DVR 添加多个 AI 服务器。Agent DVR 中的摄像头可以配置为对每个功能使用不同的 AI 服务器,或者可以对所有任务使用一个 AI 服务器。

警告:AI 处理可能会消耗大量资源。请确保你的计算机有足够的性能来运行它。

配置服务器

  • 名称:为服务器命名,例如 Cat Catcher。
  • AI 服务器 URL:输入你的 AI 服务器 URL,例如 http://localhost:32168/
  • API 密钥:输入你的密钥(如果已设置)(可选)。
  • 超时:服务器请求的超时时间(秒)。
  • 重试延迟:重试失败请求前等待的时间(秒)。

点击确定保存设置。

使用OpenAI

要设置 OpenAI ("ChatGPT") 来回答关于您的视频流中发生的情况的问题,请进入服务器设置 - AI 设置,并在"询问 AI"下选择 "OpenAI"。

  • URL: 输入该服务的 URL。默认值为 "https://api.openai.com/v1/responses"。
  • OpenAI API密钥: 在OpenAI注册后,转到API密钥页面 并生成一个新的秘密密钥。将此密钥复制并粘贴到指定字段中。
  • 模型: 指定要使用的模型。默认值为 gpt-5.4-mini。OpenAI 可能会在稍后删除或更改此值。
  • 最大令牌数: 设置每个请求的最大令牌使用量。如果遇到问题,请检查/logs.html中的日志,因为这可能与令牌使用有关。

一旦配置了OpenAI,请参考询问AI以获取有关如何将其用于回答有关摄像头视频源中发生的事情的一般问题的说明。

使用云端

To set up Claude AI to answer questions about what's happening in your video feed, navigate to Server Settings - AI Servers and select "Claude" under Ask AI.

  • URL: 输入服务的URL。默认为"https://api.anthropic.com/v1/messages"。
  • Claude API Key: 注册Claude后,访问API密钥页面并创建新的秘密密钥。复制并将此密钥粘贴到字段中。
  • Version: 指定要使用的API版本。默认为2023-06-01。Anthropic可能会在某个时刻删除或更改此版本。
  • Model: 指定要使用的模型。撰写时的默认值为claude-sonnet-4-6(Claude Sonnet 4.6)。
  • Max Tokens: 这控制每个请求的最大令牌消耗。如果遇到问题,请在/logs.html检查日志,可能与令牌消耗有关。

配置Claude后,请参阅Ask AI了解如何使用它识别摄像头源中的常见场景。

使用Gemini

要设置 Gemini 以回答关于视频源中发生的情况的问题,请导航到服务器设置 - AI 设置并在"询问 AI"下选择"Gemini"。

  • URL: 输入服务的 URL。默认值为"https://generativelanguage.googleapis.com"。
  • Gemini API 密钥: 注册 Gemini 后,访问API 密钥页面并创建新的密钥。将此密钥复制并粘贴到该字段中。
  • Version: 指定要使用的 API 版本。默认为 v1beta。Google 可能会在某个时点删除或更改此版本。
  • 模型: 指定要使用的模型。编写时的默认值为 gemini-2.5-flash。输入 API 密钥后,Agent DVR 将列出您帐户可用的视觉模型。
  • Max Tokens: 这控制每个请求的最大令牌消耗。如果遇到问题,请在/logs.html检查日志,可能与令牌消耗有关。

配置 Gemini 后,请参阅询问 AI了解如何使用它来识别摄像头源中的常见场景。

使用其他LLM服务器

您可以使用自己的本地 LLM 服务器(如 vLLM、Ollama 和 LM Studio)来描述 Agent DVR 从您的摄像头捕获的警报事件中的图像,并回答有关视频流中发生情况的问题。请参阅描述警报询问 AI

要配置本地 AI 服务器,请转到服务器设置 - AI Settings,并点击你要使用的 LLM(Ollama、vLLM 或 LM Studio)旁边的"配置"按钮。

  • URL: 指定你的 LLM 服务器运行的端点。默认 URL 为:
    • Ollama:
      http://localhost:11434/api/chat
    • vLLM:
      http://localhost:8000/v1/chat/completions
    • LM Studio:
      http://localhost:1234/v1/chat/completions
  • API Key: 如果你的 LLM 服务器需要身份验证,请在此输入 API 密钥。大多数本地服务器不需要此密钥,除非已特别配置。
  • Model: 选择具有视觉功能的模型用于图像分析。你必须已在 LLM 服务器中下载并加载此模型。Agent 建议一些流行的选项,包括:
    • Qwen VL 模型(高性能)
    • 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 以获得可靠的图像描述。
Note: 你必须单独安装和配置你选择的 LLM 服务器。配置 Agent DVR 前,请确保你已下载具有视觉功能的模型。为获得安全摄像机的最佳效果,请使用至少 7B 参数的模型,并确保你的系统有足够的 VRAM(建议 5GB+)。

使用PlateRecognizer.com

要在Agent DVR中配置LPR(ANPR或车牌识别),请转到服务器设置 - AI设置,并在车牌识别器下输入详细信息。在Plate Recognizer上注册免费试用。无需信用卡。

  • URL: 输入服务的URL。默认为"https://api.platerecognizer.com/v1/plate-reader/",或者如果您自己托管实例,则使用您自己的服务器。
  • Token: 在注册Plate Recognizer后,访问账户页面并复制API令牌
  • 地区: 留空使用默认值,或输入地区的CSV列表。
  • 配置: 如有需要,请输入文档中的其他配置值。

使用 DoubleTake

DoubleTake是一个开源平台,提供统一API用于处理面部识别,使用:

  • CompreFace
  • Amazon Rekognition
  • DeepStack
  • CodeProject.AI Server
  • Facebox

你需要安装和配置DoubleTake并选择你偏好的面部识别选项。

DoubleTake设置完成后,打开Agent DVR并转到服务器设置 - AI设置,点击DoubleTake旁的配置按钮。

输入你的doubletake服务器URL(例如http://localhost:3000/)以及密码(如已设置)。

点击确定,然后编辑摄像头并转到面部识别。将AI服务器选项设置为DoubleTake并根据需要配置面部识别

管理AI模块

AI Modules

在AI服务器列表中(如上所述),您可以选择配置、测试、编辑和删除AI服务器。点击配置按钮以显示所选服务器上可用或已安装的模块。

Agent DVR从您的服务器检索当前模块列表,并提供用户界面来安装、卸载、配置和测试每个模块。支持所有默认的CodeProject.AI模块,但Agent DVR仅使用其中的一部分。

建议仅安装一个对象识别模块选项。请查看每个模块的描述以确定最适合您系统的选项。

要在Agent DVR中使用ALPR(自动车牌识别)、超分辨率或人脸识别,您需要从此页面安装相应的模块。通常,这些模块的默认设置就足够了,但您可以点击每个模块下的图标来配置它们。