AMBER ICI v5:本地优先的 Ollama 调查指挥中心,具备按案件隔离的证据管理、智能体链、混合检索、流式分析、图谱与时间线视图、OCR、受控网络研究以及 GPU 遥测功能。
AMBER ICI(AMBER 调查指挥界面)是一个本地优先的浏览器界面,用于由本地 Ollama 服务器驱动的调查与分析工作流。
它包含:
SEND 按钮驱动的用户自定义智能体链Ollama 推理在 UI 中被限制为回环端点(127.0.0.1、localhost 或 ::1)。AMBER 不包含云端推理或应用遥测,且没有任何功能需要登录、API 密钥或账户。WEB 胶囊按钮是所有互联网访问的总开关:当它处于 OFF 状态时,AMBER 不会发出任何类型的出站请求。
STOP 或 Esc 停止活动工作控制台胶囊栏承载执行控制:
| 胶囊 | 值 | 用途 |
|---|---|---|
TEMP / CTX / MEM / FMT / STREAM / SEED / SYS | — | 分析师模式推理设置 |
WEB | OFF(默认)/ ON | 所有互联网访问的总开关 |
EXEC | ANALYST(默认)/ AGENTS | SEND 运行的内容:单个活动模型,或智能体链 |
AGN | 0 = 全部 | 链运行多少个智能体,按卡片顺序选取 |
LOOPS | 1+ | 链重复多少次;与智能体面板的 LOOPS 字段同步 |
智能体由用户定义,是主要的执行路径。没有内置或固定的智能体列表;智能体面板初始为空,你可以通过两种方式填充它:
+ CREATE AGENT — 手动定义一个GENERATE FROM PROMPT — 描述一个目标,选定的本地规划模型会为你编写智能体集每个智能体存储自己的运行时配置:
| 字段 | 默认值 | 说明 |
|---|---|---|
| 智能体名称 | — | 必填 |
| 智能体用途 | — | 以 [AGENT PURPOSE] 注入 |
| 智能体系统提示词 | — | 智能体的角色指令 |
| 首选本地模型 | — | 必填;必须已在 Ollama 中安装 |
| 温度 | 0.35 | 每个智能体独立设置,与控制台的 TEMP 胶囊按钮无关 |
| 最大输出 token 数 | 0(自动) | 0 表示使用 AMBER 的长度启发式 |
| 循环次数 | 1 | 该智能体在每次链循环中执行的轮数,每轮都会基于自身上一轮输出进行优化 |
| 输出格式 | 纯文本 | JSON 会启用 Ollama 的 JSON 模式并跳过长度扩展 |
| 交接说明 | — | 作为 [HANDOFF FROM PREVIOUS AGENT] 传递给下一个顺序执行的智能体 |
| 执行模式 | sequential | sequential、parallel 或 gated |
| 输出目标、记忆范围、角色、工具访问、启用、备注 | — | 位于 ADVANCED 下 |
运行链。 将 EXEC 设为 AGENTS,在主终端中输入提示词,然后按 SEND。AMBER 会读取所选模式、已启用的智能体、每个智能体的本地模型、AGN 数量以及 LOOPS 数量,然后执行:parallel 智能体并发执行,随后按卡片顺序执行 sequential 智能体,每轮循环执行一次。每个顺序执行的智能体都会收到上一个智能体的输出作为 [UPSTREAM OUTPUT],以及该智能体的交接说明。进度和每个智能体的流式输出都会打印到主终端,最终答案会保留在对话历史中。Agents 面板的 RUN 按钮使用面板自身的 LOOPS 字段执行相同的操作。
在 AGENTS 模式下,SEND 不要求 Models 面板中存在活动模型,因为每个智能体都自带模型。gated 智能体不包含在链中——请使用其卡片上的 RUN 按钮单独运行它们。
缺失的模型绝不会被替换。 保存智能体或启动链时,如果 Ollama 中没有所请求的模型,终端会打印一个可操作的提示块,其中列出所请求的模型、实际已安装的模型以及所需的 ollama pull <model> 命令,并且运行不会启动。
已保存的智能体集可以从 Agents 面板按名称存储和恢复。
早期的
PIPELINE/CHAIN步骤序列模式已从界面中移除。其引擎和state/pipeline_state.json为向后兼容而保留,但它不再是可选模式;智能体即为执行链。
embeddinggemma:latest 对排队文件进行分块和嵌入FAST、HYBRID 和 DEEP 检索配置归档现在包含可选的案件边界,同时不替换其现有的全归档工作流:
NEW CASE 创建本地案件元数据。ADD ACTIVE TO CASE 将所选文件记录为证据,保留现有的原始上传,计算流式 SHA-256 标识,并记录摄取来源。REMEMBER LAST 明确将最新的助手输出保存为带标签的案件记忆。模型输出绝不会被静默提升为证据或记忆。ADD INVESTIGATION ROLES 将可选的 Director、Researcher、Investigator、Analyst、Documenter 和 Critic 模板添加到现有的用户自定义智能体注册表中。它们使用操作员选择的本地模型,并且不会自动运行。案件情报以原子方式存储在一个带版本的标准库 JSON 存储中,并使用 AMBER 现有的 Ollama 客户端。
页眉会在单独的标签页中打开这些工具:
http://127.0.0.1:8765/amber_graph.htmlhttp://127.0.0.1:8765/amber_timeline.htmlhttp://127.0.0.1:8765/amber_vectorstore.html核心运行时:
pip installembeddinggemma:latest可选功能:
ocrmypdf 和 Tesseractpsutil、nvidia-smi 或 osx-cpu-temp;不可用的读数将保持空白以上所有内容均为本地运行。任何组件都不需要账户、API 密钥或云服务。
git clone https://github.com/gs-ai/AMBER-ICI.git
cd AMBER-ICI
在另一个终端中:
ollama serve
拉取所需的嵌入模型和至少一个生成模型:
ollama pull embeddinggemma:latest
ollama pull qwen2.5-coder:7b
生成模型只是一个示例;AMBER 会从 Ollama 中发现本地已安装的模型。
核心后端仅导入 Python 标准库,因此直接启动时虚拟环境是可选的。不过,如果你希望使用 npm 脚本(这些脚本会调用 venv/bin/python3)或可选的 Pillow 支持,仍然可以创建一个:
python3 -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
python3 -m pip install --upgrade pip
没有 requirements.txt,因为不需要任何依赖。仅当你需要可选附加组件时,才将它们安装到该环境中:
python3 -m pip install Pillow # optional: WebP conversion before OCR
使用 deactivate 停用。如果之前的 AMBER 版本在 venv/ 中留下了未使用的包(例如 camoufox),当前代码不会导入它们,可以忽略或删除。
python3 files/launch_amber_ici_gui.py
AMBER 会自动打开浏览器。若要在不打开标签页的情况下启动:
python3 files/launch_amber_ici_gui.py --no-browser
然后打开 http://127.0.0.1:8765/amber_ui.html。
仅当你打算开启 WEB 胶囊按钮时才需要:
npm install # playwright, playwright-extra, stealth plugin
npx playwright install chromium # the browser binary itself
验证辅助程序是否可运行——在 AMBER 运行的情况下,这会报告辅助程序路径、解析后的 node 二进制文件以及任何缺失的包:
curl -s http://127.0.0.1:8765/api/web/status
AMBER 对 JavaScript 渲染页面使用 Node/Chromium 辅助程序,并以纯 Python HTTP 抓取作为直接 URL 的回退方案。records-search 辅助程序需要 Node.js、npm 依赖项和 Chromium;它没有纯 HTTP 回退方案。
使用 Homebrew 的 macOS:
brew install ocrmypdf tesseract
python3 -m pip install Pillow
Ubuntu/Debian:
sudo apt-get update
sudo apt-get install -y ocrmypdf tesseract-ocr
python3 -m pip install Pillow
Pillow 仅在需要先转换图像格式才能由 Tesseract 处理的图像格式中才需要。当任何可选的 OCR 依赖缺失时,AMBER 仍可继续运行。
提供的 npm 脚本使用 venv/bin/python3 启动 AMBER,因此请先创建该环境(第 3 步):
npm start # 127.0.0.1:8765, no browser tab
npm run start:browser # same, and opens the browser
直接通过 python3 启动是最具可移植性的选项。
git clone https://github.com/gs-ai/AMBER-ICI.git
cd AMBER-ICI
python3 -m venv venv # for the npm scripts
npm install # optional: WEB features
npx playwright install chromium # optional: WEB features
ollama serve & # in its own terminal
ollama pull embeddinggemma:latest # required for Archive
ollama pull qwen2.5-coder:7b # any generation model
npm start # → http://127.0.0.1:8765/amber_ui.html
python3 files/launch_amber_ici_gui.py --help
| 参数 | 默认值 | 用途 |
|---|---|---|
--host HOST | 127.0.0.1 | AMBER HTTP 服务器监听的地址 |
--port PORT | 8765 | AMBER HTTP 服务器端口 |
--no-browser | 关闭 | 不打开默认浏览器 |
--gui PATH | 自动检测 | 提供指定的 GUI HTML 文件 |
--version | — | 打印 AMBER ICI 发布版本并退出 |
即使 AMBER 服务器绑定到其他网络接口,浏览器 UI 也仅接受回环 Ollama URL。
http://127.0.0.1:11434。PING 加载本地已安装的模型。SEND。embeddinggemma:latest。若要改为运行智能体链:
AGENTS 标签页。+ CREATE AGENT 创建智能体,或在 GENERATE FROM PROMPT 下描述目标。EXEC 设置为 AGENTS。AGN(智能体数量;0 = 全部)和 LOOPS(执行轮数)。SEND。若要允许 AMBER 读取互联网,请先将 WEB 胶囊设置为 ON;默认值为 OFF。
每个文件的上传大小限制为 100 MiB。文件选择器和拖放路径目前接受: