Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Ginan Agent

用自然语言完成 GNSS 精密定位。

Ginan 是澳大利亚 Geoscience Australia 开源的 GNSS 分析软件,功能完备,但使用门槛较高:需要手工编写数百行配置、 设置数十个参数,并严格遵循文件命名格式;其官方文档中的首条示例命令, 在国内网络环境下还可能直接超时。

本项目旨在消除这一门槛。 用户用自然语言描述目标,程序负责完成整个流程:

用户:处理 ALIC 站 2025 年 6 月 15 日的观测数据

程序:① 检查运行环境,定位 pea 可执行文件,确认依赖齐全
      ② 盘点本地已有数据,确定缺失项
      ③ 列出需要下载的文件:来源、大小、用途
      ④ 下载(多源自动回退,连接中断后可续传)
      ⑤ 生成配置并运行 pea
      ⑥ 出现问题时进行诊断,并将结果以自然语言输出

它并非通用聊天机器人:程序在框架内自主决定下一步操作 —— 检查环境、 切换数据源、调整配置并重新运行,无需用户逐步指挥。


环境要求

说明
操作系统 Windows / Linux / macOS
Python 3.10+ 可从 python.org 安装;Windows 安装时请勾选「Add Python to PATH」
AI 模型 API 密钥 推荐 DeepSeek:国内可直连,并提供免费额度
Ginan 本体 ⚠️ 需自行获取,原因见下

关于 Ginan:为何不随软件分发

这是许可证要求,并非遗漏。

Ginan 本身以 Apache-2.0 发布,但内含 JPL Ephemeris(GPL-3)。 GPL-3 具有强传染性:一旦再分发包含该组件的二进制文件, 整个软件都须以 GPL-3 发布。

因此本工具仅调用 Ginan,不捆绑其二进制文件。请自行准备:

  1. 从 Ginan 官方仓库 获取可运行的 Ginan(官方 README 说明了获取方式;本工具需要其中名为 pea 的可执行文件)。

  2. 将其放置于以下位置:

    userdata/ginan/bin/pea.exe        (Windows)
    userdata/ginan/bin/pea            (Linux / macOS)
    

    或将所在目录加入系统 PATH。

查找顺序:环境变量 GINAN_AGENT_PEA → userdata/ginan/bin/ → 系统 PATH。 未找到时程序不会崩溃,界面会提示「尚未安装」。


快速开始

Windows

双击 run.bat 即可,无需执行任何命令。

首次运行会自动检查 Python 与依赖(缺失时自动安装,约 1–2 分钟), 随后启动本地服务并打开浏览器。

Linux / macOS

./run.sh

首次配置

浏览器打开后,点击右上角「设置」,填入 API 密钥并保存,即可开始使用。


界面说明

位置 功能
中央对话框 用自然语言描述任务,执行过程实时显示
右侧栏 当前环境与数据状态:pea 是否就绪、数据位置、网络连通性
右上角「设置」 配置 API 密钥与代理
右上角「新任务」 结束当前任务并清空状态:对话、收件箱、观测数据与运行记录将被清除;星历 / 钟差 / 天线表等产品文件保留,无需重新下载

数据下载失败时

国内网络环境下部分数据源不可达,属于常见情况。两种处理方式:

① 使用代理 —— 在「设置」中填写代理地址(例如 http://127.0.0.1:7890)。

② 手动提供数据 —— 将文件放入收件箱:

userdata/inbox/

程序会自动识别文件类型并归位,无需重命名或转换格式。

也可将 userdata/inbox/ 设为网盘同步目录:在其他机器上下载,本机自动获取。


数据存放位置

所有运行时数据均位于软件目录下的 userdata/:

ginan-agent/
├── userdata/               ← 所有数据;删除即恢复出厂状态
│   ├── config.json           设置(含 API 密钥)
│   ├── data/                 观测数据与精密产品
│   ├── inbox/                收件箱(手动放置文件)
│   ├── sessions/             对话历史
│   ├── runs/                 每次运行的配置、日志与产物
│   └── ginan/                存放 pea 的位置
├── run.bat / run.sh       启动脚本
└── ginan_agent/           程序本体

备份请复制 userdata/;迁移请复制整个文件夹;彻底删除请删除整个文件夹 —— 系统其他位置不会留下文件。

注意:删除软件文件夹将同时删除数据。重要结果请另行保存。


故障排查

建议先运行自检(不联网、不产生费用、不修改任何文件):

python scripts/check_all.py
现象 可能原因
双击后窗口一闪而过 Python 未安装,或安装时未勾选「Add Python to PATH」
提示「软件目录不可写」 软件位于 C:\Program Files 等受保护目录;请移至「文档」或桌面
界面正常,但提示未找到 pea Ginan 未下载,或存放位置不正确(见上文)
界面提示未配置密钥 在「设置」中填写并保存
下载持续失败 网络问题;可配置代理,或通过收件箱手动提供文件
解算结果异常 ⚠️ 检查测站天线型号是否正确 —— 型号错误会造成数厘米量级的系统偏差,且结果表面上完全正常

项目状态

项目处于开发阶段,尚未正式发布。当前已实现:

  • 环境检查、网络检测、数据源探测
  • 取数计划与多源下载(回退 / 续传 / 解压 / 校验)
  • 文件识别(基于内容而非文件名)
  • 本地观测数据处理(RINEX 检查与头部补全,不修改原始文件)
  • 配置生成、调用 pea、解析 .POS 结果、失败诊断
  • 收件箱(网络受限时手动提供文件)
  • 结果出图、复现包导出

规划中:桌面窗口(当前启动时自动打开浏览器)。

两种运行档位:「基础」与「完整」

档位 额外文件 说明
基础(默认) 无 不含海潮、大气潮、海洋极潮三项负荷改正;对流层使用简化模型
完整 需要(10 个模型文件,约 17 MB,仅需下载一次) 包含上述各项改正

当模型文件不完整时,程序拒绝生成配置,并提示缺失的文件及补齐方式。

原因是:若配置声明「完整」档而模型文件缺失,pea 不会报错, 而是静默跳过相关模型 —— 结果与「基础」档相同,且用户无法察觉。

「完整」不等于「更准」

需要注意:「完整」档增加了改正项,但并不保证精度更高。

  • 若观测数据的天线型号为空或不准确,改正项越精细,天线模型误差造成的偏差 越难被掩盖;
  • 判断精度需要权威坐标(如 IGS 的 SINEX 解)作为基准。重复性指标只反映 自洽性,不能替代准确度。

因此:在缺少可靠天线信息或权威坐标时,建议使用「基础」档。

固体潮改正默认开启(两个档位均开启),无需额外文件。


许可证

本项目以 Apache-2.0 发布。

它调用但不包含 Ginan。 Ginan 内含的 JPL Ephemeris 为 GPL-3,详见 THIRD_PARTY.md。

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages